標準輸出流默認不能隨着管道流下,能夠使用以下腳本:
ls n* 2> errors
2> 表明標準錯誤流的處理方式跟隨標準輸出流保持一致
vim:
1,$s/^/愛/ 給從第一行開始每行行頭加上」愛「
15,$s/$/愛 給從第15行開始
每行
行尾加上「愛
」
1,$s/[0-9]/*/g 將全部的數字替換成*
1,$s/[^*]//g 將全部非*號字符刪除掉
1,$s/^.\{10\}//g 刪除每行前10個字符
cut:
ls -alh | cut
-c1
截取第一個字符
ls -alh | cut
-c1-20
截取第1到20個字符
ls -alh | cut -c1,20 截取第1個和第20個字符
ls -alh | cut
-c21-
截取從第21個字符後面全部
cut -d: -f6 passwd
以逗號切割passwd 取第6段
cut -d: -f1-6 passwd
以逗號切割passwd 取第1到6段
cut -d: -f1-6 passwd
以逗號切割passwd 取第1到6段
cut -d: -f1,6 passwd
以逗號切割passwd 取第1段和第6段
paste:
sed:
sed 's/z/*/' file
將file每行第一個z替換成*
sed 's/z/*/g' file
將file每行全部的z替換成*
sed -n '1,4p' shadow
只顯示1~4行
sed -n '/ad/p' shadow
包括ad的行顯示出來
sed '1,2d' names
刪除文件中的1~2行
sed '/z/d' names
將包含z的行所有刪除
sed '2a love'
在第二行後面追加love
sed '2i love'
在第二行前面追加love
tr:
tr : ^ < shadow 將全部:字符替換成<字符
tr '[a-z]' '[A-Z]' < passwd 將全部小寫字符替換成大寫字符
tr ':' '\11' < passwd 將全部冒號替換成製表符
已經存儲於:h[0][0]c[0][0]
grep:
grep -vn 'z' names 顯示不包含z的行,而且顯示行號
grep -l 'in' *.log 在全部的log文件中查找in,只顯示文件名
sort:
sort -u names 排序而且去重複
sort -r names 顛倒順序(倒序)
sort names -o names 將排序後的結果從新寫入源文件,此處不能用重定向操做符.重定向會破壞源文件,致使操做失敗
sort -n num 按照算術排序(數字排序)
ls -l | sort -k 5 -n 按照第五列進行算術排序(文件大小排序)
uniq:
sort num|uniq 將num中重複行刪除(使用sort的緣由是將num中的重複行排序成連續行)
sort num|uniq -d 將重複行顯示出來
sort num | uniq -c 去重並顯示重複次數,該命令帶與不帶-c選項區別就在因而否會顯示重複次數
awk:
cat /etc/passwd | awk -F ':' '{print $0}' 用;分割,打印整行
awk -F ':' '{print $1}' /etc/passwd 用;分割,打印第一列
awk -F ':' 'BEGIN {print "print file begin"} {print $1} END {print "print file end"}' /etc/passwd 用;分割,打印第一列,而且在最前最後加上消息
版權聲明:本文爲博主原創文章,未經博主容許不得轉載。vim