&&
命令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;...}:大括弧裡面的內容將作為整體執行。