在sh腳本文件中,我們可以直接運行Linux命令,比如:
- #!/bin/bash
- mkdir ~/x
- touch ~/x/m
- ls ~/x -alh
輸出結果是:
- $ ./test.sh
- total 8.0K
- drwxrwxr-x 2 chenshu chenshu 4.0K Sep 13 10:49 .
- drwxr-xr-x 64 chenshu chenshu 4.0K Sep 13 10:49 ..
- -rw-rw-r-- 1 chenshu chenshu 0 Sep 13 10:49 m
可以用變量來替換mkdir,touch和ls。
- #!/bin/bash
- MKDIR=mkdir
- TOUCH=touch
- LS=ls
-
- $MKDIR ~/x
- $TOUCH ~/x/m
- $LS ~/x -alh
如果將自己的變量值和後面其他字符串拼接起來,要小心的用{}將變量名包起來。如果不用{},可能會出現意外:
- #!/bin/bash
- NAME=freebird
- echo "$NAME_esri"
期望顯示freebird_esri,結果顯示的是空
修改一下:
- #!/bin/bash
- NAME=freebird
- echo "${NAME}_esri"
輸出為:
- $ ./test.sh
- freebird_esri