GNU/Linux >> Linux Esercitazione >  >> Linux

Come passare il contenuto di un file come parametro della riga di comando?

Sto memorizzando un percorso di file in un file e devo passare il contenuto di quel file come argomento per uno script di shell, in particolare Maven, qualcosa del genere:

mvn -Dvar_name=(contents of file)

Funzionerebbe:

mvn -Dvar_name=(cat /path/to/file)

?

Risposta accettata:

Questo può essere fatto usando la sostituzione dei comandi, in questo modo:

mvn -Dvar_name="$(cat /path/to/file)" # POSIX
mvn -Dvar_name="$(</path/to/file)"    # bash

Ciò ha un notevole avvertimento, tuttavia, vale a dire che tutte le nuove righe finali vengono eliminate. Se non importa, allora dovrebbe funzionare.

Se vuoi davvero leggere solo una riga, puoi usare read invece, così:

IFS= read -r line < /path/to/file
mvn -Dvar_name="$line"

Linux
  1. Come estrarre il file tar.gz in Linux utilizzando la riga di comando

  2. CentOS / RHEL 7:come modificare la riga di comando del kernel

  3. Come utilizzo le righe di un file come argomenti di un comando?

  4. usando Linux come posso passare il contenuto di un file come parametro a un eseguibile?

  5. Come aggiungere l'output a un file?

Come usare il comando diff di Linux

Come scaricare un file su Ubuntu usando la riga di comando

Come scaricare un file su Ubuntu Linux usando la riga di comando

Visualizza il contenuto di un file nella riga di comando di Linux

Come estrarre il file Tar.xz sulla riga di comando di Linux

Come utilizzare il comando Gzip in Linux?