UNIX 讀書筆記01 分類: Linux 2015-05-27 22:20 42人閱讀 評論(0) 收藏

標準輸出流默認不能隨着管道流下,能夠使用以下腳本:
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

相關文章
相關標籤/搜索