Linux Shell程式設計(21)——複雜命令
更高階的使用者命令
find
-exec COMMAND \;
在每一個find 匹配到的檔案執行 COMMAND 命令. 命令序列以 ; 結束( ";" 是 轉義符 以保證 shell 傳遞到find命令中的字元不會被解釋為其他的特殊字元).
xargs
這是給命令傳遞引數的一個過濾器, 也是組合多個命令的一個工具.它把一個資料流分割為一些足夠小的塊, 以方便過濾器和命令進行處理. 由此這個命令也是後置引用的一個強有力的替換. 在一般使用過多引數的命令替換失敗的時候,用xargs 來替換它一般都能成功. [1] 通常情況下, xargs 從管道或者stdin中讀取資料, 但是它也能夠從檔案的輸出中讀取資料.
xargs的預設命令是 echo. 這意味著通過管道傳遞給xargs的輸入將會包含換行和空白, 不過通過xargs的處理, 換行和空白將被空格取代.
expr
通用求值表示式: 通過給定的操作(引數必須以空格分開)連線引數,並對引數求值.可以使算術操作, 比較操作, 字串操作或者是邏輯操作.
expr 3 + 5
返回 8
expr 5 % 3
返回 2
expr 1 / 0
返回錯誤訊息, expr: division by zero
不允許非法的算術操作.
expr 5 \* 3
返回 15
在算術表示式expr中使用乘法操作時, 乘法符號必須被轉義.
y=`expr $y + 1`
增加變數的值, 與 let y=y+1 和 y=$(($y+1)) 的效果相同. 這是使用算術表示式的一個例子.
z=`expr substr $string $position $length`
在位置$position上提取$length長度的子串.
find
-exec COMMAND \;
在每一個find 匹配到的檔案執行 COMMAND 命令. 命令序列以 ; 結束( ";" 是 轉義符 以保證 shell 傳遞到find命令中的字元不會被解釋為其他的特殊字元).
xargs
這是給命令傳遞引數的一個過濾器, 也是組合多個命令的一個工具.它把一個資料流分割為一些足夠小的塊, 以方便過濾器和命令進行處理. 由此這個命令也是後置引用的一個強有力的替換. 在一般使用過多引數的命令替換失敗的時候,用xargs 來替換它一般都能成功. [1] 通常情況下, xargs 從管道或者stdin中讀取資料, 但是它也能夠從檔案的輸出中讀取資料.
xargs的預設命令是 echo. 這意味著通過管道傳遞給xargs的輸入將會包含換行和空白, 不過通過xargs的處理, 換行和空白將被空格取代.
expr
通用求值表示式: 通過給定的操作(引數必須以空格分開)連線引數,並對引數求值.可以使算術操作, 比較操作, 字串操作或者是邏輯操作.
expr 3 + 5
返回 8
expr 5 % 3
返回 2
expr 1 / 0
返回錯誤訊息, expr: division by zero
不允許非法的算術操作.
expr 5 \* 3
返回 15
在算術表示式expr中使用乘法操作時, 乘法符號必須被轉義.
y=`expr $y + 1`
增加變數的值, 與 let y=y+1 和 y=$(($y+1)) 的效果相同. 這是使用算術表示式的一個例子.
z=`expr substr $string $position $length`
在位置$position上提取$length長度的子串.
相關文章
- Linux Shell程式設計(20)——基本命令Linux程式設計
- Linux Shell程式設計(24)——命令替換Linux程式設計
- Linux Shell程式設計(22)——時間/日期 命令Linux程式設計
- Linux Shell程式設計(23)——文字處理命令Linux程式設計
- Linux Shell程式設計(1)——shell程式設計簡介Linux程式設計
- Shell程式設計-read命令程式設計
- linux shell 程式設計Linux程式設計
- linux shell程式設計Linux程式設計
- Linux Shell程式設計(27)——子shellLinux程式設計
- 程式設計師幽默:一個搞笑的Linux Shell命令程式設計師Linux
- Linux系統程式設計(14)——shell常用命令Linux程式設計
- Linux 程式設計之Shell程式設計(轉)Linux程式設計
- Linux之shell程式設計Linux程式設計
- Linux Shell程式設計(1)Linux程式設計
- Linux Shell程式設計(2)Linux程式設計
- Linux Shell程式設計(2)——第一個shell程式Linux程式設計
- 《Linux命令列與shell指令碼程式設計大全》第五章理解shellLinux命令列指令碼程式設計
- Shell排序複雜度分析排序複雜度
- 《Linux命令列與shell指令碼程式設計大全 第3版》Linux命令列---46Linux命令列指令碼程式設計
- Linux Shell程式設計(4)——shell特殊字元(上)Linux程式設計字元
- Linux Shell程式設計(5)——shell特殊字元(下)Linux程式設計字元
- linux下的SHELL程式設計Linux程式設計
- Linux命令列與shell指令碼程式設計入門經驗Linux命令列指令碼程式設計
- Linux Shell程式設計(28)——程式替換Linux程式設計
- Linux Shell程式設計(3)——執行shell指令碼Linux程式設計指令碼
- 前端學習 linux —— shell 程式設計前端Linux程式設計
- Linux Shell程式設計(15)——操作字串Linux程式設計字串
- Linux Shell程式設計(16)——迴圈Linux程式設計
- Linux Shell程式設計(29)——函式Linux程式設計函式
- Linux Shell程式設計(30)——別名Linux程式設計
- Linux Shell 程式設計實戰技巧Linux程式設計
- Linux的shell程式設計(一)(轉)Linux程式設計
- Linux的shell程式設計(二)(轉)Linux程式設計
- Linux的shell程式設計(三)(轉)Linux程式設計
- Linux的shell程式設計(四)(轉)Linux程式設計
- Linux入門---(三)Shell程式設計Linux程式設計
- 如何學習shell程式設計?Linux運維學習shell程式設計是什麼程式設計Linux運維
- linux中查詢find命令的複雜用法Linux