命令执行顺序控制与管道
1.順序執行
yum install tools;yum install tools1;yum install tools2;
2.有選擇的執行
which cowsay>/dev/null && cowsay -f head-in pppppp
上面的&&就是用來實現選擇性執行的,它表示如果前面的命令執行結果(不是表示終端輸出的內容,而是表示命令執行狀態的結果)返回0則執行后面的,否則不執行,你可以從$?環境變量獲取上一次命令的返回結果
echo $?
$ which cowsay>/dev/null || echo "cowsay has not been install, please run 'sudo apt-get install cowsay' to install"
||在這里就是與&&相反的控制效果,當上一條命令執行結果為≠0($?≠0)時則執行它后面的命令:
結合使用
?
which cowsay>/dev/null && echo "exist" || echo "not exist"
3.管道|
ls -al /etc | less
通過管道將前一個命令(ls)的輸出作為下一個命令(less)的輸入,然后就可以一行一行地看。
?
cut 命令,打印每一行的某一字段
cut /etc/passwd -d ':' -f 1,6? ?打印第一列和第6列
# 前五個(包含第五個)
$ cut /etc/passwd -c -5
# 前五個之后的(包含第五個)
$ cut /etc/passwd -c 5-
# 第五個
$ cut /etc/passwd -c 5
# 2到5之間的(包含第五個)
$ cut /etc/passwd -c 2-
?
grep
# 查看環境變量中以"yanlou"結尾的字符串
$ export | grep ".*yanlou$"
wc
# 行數
$ wc -l /etc/passwd
# 單詞數
$ wc -w /etc/passwd
# 字節數
$ wc -c /etc/passwd
# 字符數
$ wc -m /etc/passwd
# 最長行字節數
$ wc -L /etc/passwd
sort
這個命令前面我們也是用過多次,功能很簡單就是將輸入按照一定方式排序,然后再輸出,它支持的排序有按字典排序,數字排序,按月份排序,隨機排序,反轉排序,指定特定字段進行排序等等。
sort將文件的每一行作為一個單位,相互比較,比較原則是從首字符向后,依次按ASCII碼值進行比較,最后將他們按升序輸出
sort -u seq.txt 去除重復行 sort -n number.txt 安裝數值大小排序sort -r 降序 sort -n -r number.txt 數值降序 sort -n -r number.txt -o number.txt 結果寫入原文件
-M會以月份來排序,比如JAN小于FEB等等
-b會忽略每一行前面的所有空白部分,從第一個可見字符開始比較。
?
?
uniq 去重命令
uniq命令只能去連續重復的行,不是全文去重? 可以進行先排序
?
參數:
- -c或--count 在每列旁邊顯示該行重復出現的次數。
- -d或--repeated 僅顯示重復出現的行列。
- -f<欄位>或--skip-fields=<欄位> 忽略比較指定的欄位。
- -s<字符位置>或--skip-chars=<字符位置> 忽略比較指定的字符。
- -u或--unique 僅顯示出一次的行列。
- -w<字符位置>或--check-chars=<字符位置> 指定要比較的字符。
- --help 顯示幫助。
- --version 顯示版本信息。
- [輸入文件] 指定已排序好的文本文件。
- [輸出文件] 指定輸出的文件。
?
轉載于:https://www.cnblogs.com/think-cl/p/9373550.html
總結
以上是生活随笔為你收集整理的命令执行顺序控制与管道的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: RabbitMQ(一):简介和基本概念
- 下一篇: redux小结