GNU/Linux >> Linux Esercitazione >  >> Linux

Allegando vs. Non racchiudere il valore di una variabile tra virgolette in Bash?

Questa domanda ha già risposte qui :Quando è necessaria la doppia virgoletta?

(1 risposta)
Perché il mio script di shell si blocca su spazi bianchi o altri caratteri speciali?

(6 risposte)
Chiuso 3 anni fa.

Quando faccio qualcosa del genere:

x="hi echo hello"

o

x='hi echo hello'

Quindi x conterrà la stringa hi echo hello .

Ma quando non uso le virgolette:

x=hi echo hello

Quindi x conterrà la stringa hi e il comando echo hello verrà eseguito.

Ma che dire quando il valore di una variabile è costituito solo da una singola parola, c'è una differenza tra le seguenti:

x="hi"
x='hi'
x=hi

Risposta accettata:

Solo se il mondo contiene sostituzioni.

Quindi

x=$FRED

è diverso da:

x='$FRED'

Linux
  1. Quando è necessaria la doppia virgoletta?

  2. Il motivo per cui Bash Shell non ti avverte di overflow aritmetico ecc.?

  3. Bash Echo La riga di comando eseguita sulla riga di comando stessa (non in uno script)?

  4. .bash_profile non originato durante l'esecuzione di Su?

  5. Come aggiungere nuove righe nelle variabili in Bash Script?

Array in Bash non trovato

bash sh - comando non trovato

echo il carattere di nuova riga non funziona in bash

Il valore hash MD5 è diverso da Bash e PHP

Come dividere una stringa con virgolette (come argomenti di comando) in bash?

Quando non dovrei uccidere -9 un processo?