命令1 命令2:如果這個命令執行成功那么執行這個命令。
[jb]/usr/xxxx/ytcclb>ls -l test.sql
-rwxr--r-- 1 xxxx group 225 Nov 15 14:12 test.sql
[jb]/usr/xxxx/ytcclb>cp test.sql test.bak echo "coping file ok!"
coping file ok!
[jb]/usr/xxxx/ytcclb>ls -l test.*
-rwxr--r-- 1 xxxx group 225 Nov 15 17:48 test.bak
-rwxr--r-- 1 xxxx group 225 Nov 15 14:12 test.sql
移動文件,刪除目錄:
復制代碼 代碼如下:
$ mv /apps/bin /apps/dev/bin rm -r /apps/bin
將文件排序,輸出到另一個文件,成功后打印:
復制代碼 代碼如下:
$ sort test.sql > test.bak lp test.bak
||
命令1 || 命令2:如果這個命令執行失敗了 || 那么執行這個命令。
復制代碼 代碼如下:
$ cp test.sql test.bak || echo "errors occured during coping file"
例如:
[jb]/usr/xxxx/ytcclb>cp test.sql test.bak
[jb]/usr/xxxx/ytcclb>ls -l test.*
-rwxr--r-- 1 xxxx group 225 Nov 15 18:08 test.bak
-rwxr--r-- 1 xxxx group 225 Nov 15 14:12 test.sql
[jb]/usr/xxxx/ytcclb>chmod u-w test.bak
[jb]/usr/xxxx/ytcclb>ls -l test.*
-r-xr--r-- 1 xxxx group 225 Nov 15 18:08 test.bak
-rwxr--r-- 1 xxxx group 225 Nov 15 14:12 test.sql
[jb]/usr/xxxx/ytcclb>cp test.sql test.bak || echo "errors occrued during coping file"
cp: unable to create file test.bak: Permission denied (error 13)
errors occrued during coping file
[jb]/usr/xxxx/ytcclb>
()和{}:將幾個命令組合起來使用。
(命令1;命令2;...):在當前shell中執行一組命令。
{命令1;命令2;...}:大括號里面的內容將作為整體執行。
您可能感興趣的文章:- Shell 命令執行順序分析[圖]
- Shell 管道及執行順序分析
- Shell腳本中使用getopts處理多命令行選項
- Shell腳本中多命令邏輯執行順序的方法詳解