Cytowanie Znaki cytowania służą do usuwania interpretacji znaków
specjalnych przez powłokę.
Wyróżniamy nastepujące znaki cytowania:
- cudzysłów (ang. double quote)
" "
Między cudzysłowami umieszcza się tekst, wartości zmiennych zawierające spacje.
Cudzysłowy zachowują znaczenie specjalne trzech znaków:
- $ wskazuje na nazwę zmiennej, umożliwiając podstawienie jej wartości
- \ znak maskujący
- ` ` odwrotny apostrof, umozliwia zacytowanie polecenia
Przykład:
#!/bin/bash
x=2
echo "Wartość zmiennej x to $x" #wydrukuje Wartość zmiennej x to 2
echo -ne "Usłyszysz dzwonek\a"
echo "Polecenie date pokaże: `date`"
- apostrof (ang. single quote)
' '
Wszystko co ujęte w znaki apostrofu traktowane jest jak łańcuch tekstowy,
apostrof wyłącza interpretowanie wszystkich znaków specjalnych, traktowane są
jak zwykłe znaki.
Przykład:
#!/bin/bash
echo '$USER' #nie wypisze twojego loginu
- odwrotny apostrof (ang. backquote)
` `
umożliwia zacytowanie polecenia, bardzo przydatne jeśli chce się podstawić
pod zmienną wynik jakiegoś polecenia np:
Przykład:
#!/bin/bash
x=`ls -la $PWD`
echo $x #pokaże rezultat polecenia
Alternatywny zapis, który ma takie samo działanie wygląda tak:
#!/bin/bash
echo $(ls -la $PWD)
- backslash czyli znak maskujący
\
Jego działanie najlepiej wyjaśnić na przykładzie: chcesz by na ekranie pojawił się napis $HOME
Przykład:
echo "$HOME" #wydrukuje /home/ja
aby wyłączyć interpretacje przez powłokę tej zmiennej, trzeba napisać:
echo \$HOME #i jest napis $HOME
|