實驗樓 命令執行順序控制與管道

命令執行順序的控制

順序執行多條命令

有選擇的執行命令

whichjavascript

&&就是用來實現選擇性執行的,它表示若是前面的命令執行結果(不是表示終端輸出的內容,而是表示命令執行狀態的結果)返回0則執行後面的,不然不執行java

在這裏就是與&&相反的控制效果,當上一條命令執行結果爲≠0($?≠0)時則執行它後面的命令linux

which cowsay>/dev/null && cowsay -f head-in ohch~ruby

which cowsay>/dev/null && echo "exist" || echo "not exist"bash

管道

管道是什麼,管道是一種通訊機制,一般用於進程間的通訊(也可經過socket進行網絡通訊),它表現出來的形式就是將前面每個進程的輸出(stdout)直接做爲下一個進程的輸入(stdin)。網絡

管道又分爲匿名管道和具名管道,咱們在使用一些過濾程序時常常會用到的就是匿名管道,在命令行中由|分隔符表示,|在前面的內容中咱們已經屢次使用到了。具名管道簡單的說就是有名字的管道,一般只會在源程序中用到具名管道。socket

cut 命令,打印每一行的某一字段

-d :後面接分隔字符。與 -f 一塊兒使用;  -f :依據 -d 的分隔字符將一段信息分割成爲數段,用 -f 取出第幾段的意思; -c :以字符 (characters) 的單位取出固定字符區間;
$ cut /etc/passwd -d ':' -f 1,6 (打印/etc/passwd文件中以:爲分隔符的第1個字段和第6個字段分別表示用戶名和其家目錄)/etc/passwd:# 前五個(包含第五個) $ cut /etc/passwd -c -5 # 前五個以後的(包含第五個) $ cut /etc/passwd -c 5- # 第五個 $ cut /etc/passwd -c 5 # 2到5之間的(包含第五個) $ cut /etc/passwd -c 2-5

grep 命令,在文本中或 stdin 中查找匹配字符串

-r 參數表示遞歸搜索子目錄中的文件工具

-n表示打印匹配項行號ui

-I表示忽略二進制文件spa

wc 命令,簡單小巧的計數工具

用於統計並輸出一個文件中行、單詞和字節的數目

# 行數 $ wc -l /etc/passwd # 單詞數 $ wc -w /etc/passwd # 字節數 $ wc -c /etc/passwd # 字符數 $ wc -m /etc/passwd # 最長行字節數 $ wc -L /etc/passwd

sort 排序命令

默認爲字典排序:

$ cat /etc/passswd | sort 

反轉排序:

$ cat /etc/passwd | sort -r 

按特定字段排序:


面的參數用於指定字段的分隔符,這裏是以":"做爲分隔符;用於指定對哪個字段進行排序。這裏文件的第三個字段爲數字,默認狀況下是以字典序排序的,若是要按照數字排序就要加上參數$ cat /etc/passwd | sort -t':' -k 3 -t-k 字段號/etc/passwd-n

uniq 去重命令

uniq命令能夠用於過濾或者輸出重複行。

uniq命令只能去連續重複的行,不是全文去重

c或——count:在每列旁邊顯示該行重複出現的次數; -d或--repeated:僅顯示重複出現的行列;

來自: http://man.linuxde.net/uniq
c或——count:在每列旁邊顯示該行重複出現的次數; -d或--repeated:僅顯示重複出現的行列;

來自: http://man.linuxde.net/uniq
輸出重複過的行(重複的只輸出一個)及重複次數 $ history | cut -c 8- | cut -d ' ' -f 1 | sort | uniq -dc -c統計次數 -d顯示重複出現的行 # 輸出全部重複的行 $ history | cut -c 8- | cut -d ' ' -f 1 | sort | uniq -D
相關文章
相關標籤/搜索