Copyright(c) by Galaxy CD – http://www.galaxycd.com
47
nom=jean
thoâng dòch bieán
$
echo *
file1 file2 …
thoâng dòch kyù töï *
$
echo “*”
*
hieån thò khoâng thoâng dòch
Baûng toùm taét veà thoâng dòch caùc kyù töï ñaëc bieät trong caùc daáu nhaùy:
Caùc kyù töï ñaëc bieät duøng trong daáu nhaùy
Daáu nhaùy ñöôïc
duøng
‘
` hoaëc )
“
\
$
*
‘
f
n
n
n
n
n
` hoaëc $(
n
f
n
o
o
o
“
n
o
f
o
o
n
Trong ñoù:
f = keát thuùc xaâu kyù töï
o = kyù töï ñöôïc thoâng dòch (coù yù nghóa ñaëc bieät)
n = kyù töï khoâng ñöôïc thoâng dòch (bình thöôøng)
Thí duï caùch söû duïng baûng toùm taét:
-
Kyù töï $ ñöôïc thoâng dòch nhö moät metacharacter khi noù ôû trong $() hoaëc “”, khi
bieán ñöôïc thay theá baèngh giaù trò cuûa noù. Ngöôïc laïi, noù khoâng ñöôïc thoâng dòch
khi ôû giöõa hai daáu nhaùy ñôn.
9.5.2 Thay theá ñuùp
Khi Shell laøm thao taùc thay theá noù queùt moät laàn doøng leänh vaø thay theá bieán coù $ ñaèng
tröôùc.
Ta coù theå laøm hai laàn ñoäng taùc queùt baèng duøng leänh eval cuûa Shell. Nhö vaäy leänh ñöùng
sau eval ñöôïc thay theá 2 laàn tröôùc khi chaïy.
Thí duï:
Shell_script last_argument hieån thò ñoái cuoái cuøng cuûa doøng leänh:
$
cat last_argument
set
-x
eval echo $”$#”
$
last_argument 1 A Z 3 F G
+ eval echo $6
+ echo G
G
Baøi taäp:
1. Haõy vieát shell_script copy_file ñeå sao cheùp moät file cuûa moät ngöôøi söû duïng khaùc,
sau ñoù ñoåi nhoùm vaø ngöôøi söû duïng cuûa file sao.
Cuù phaùp: