您好,登錄后才能下訂單哦!
一、正則表達式
句點. //匹配任意單個字符,如a..表示匹配a后兩個字符
^ //匹配行首,如^w,表示匹配位于行首的w
$ //匹配行尾,如x$表示匹配x位于行尾的行,^insert$表示只包含insert的行
\ //加在特殊字符前去除特殊字符的特殊意義
^$ //匹配空白行
* //匹配0或若干個字符,x*表示匹配0次或若干個連續的x,xx*表示匹配1個或多個連續的x,.*表示0或若干個字符,w.*s表示w開頭s結尾的任意字符串
上述字符僅用于搜索串時才有特殊意義,例如/^[A-Z]/,表示匹配以大寫字母開頭的行;
[^A-Z] //匹配除大寫字母之外的字符
{min,max\} //指定范圍的匹配,前面的正則表達式至少重復min次,至多max次
\(...\) //保存匹配的字符串,將小括號中匹配的字符串存儲到下一個寄存器中(1-9)
[tT] //匹配小寫或大寫t
[a-z] //匹配任意小寫字母
[a-zA-Z] //匹配小寫或大寫字母
[^字符表] //匹配任一不在字符表中的字符
cut
cut -c1- a //把a文件中每一行從第一個字符到最后最后一次字符的結果析取出來
cut -c1-5 a //把a文件中每一行從第一個字符到第5個字符的結果析取出來
cut -d: -f1 /etc/shadow //把shadow文件中每一行以:分割的第一段的結果析取出來,即是用戶名
cut -d: -f1,6 /etc/passwd //把passwd文件中的每一行以:分割的第一段和第六段的結果析取出來,即是用戶名和用戶宿主目錄
cut -f1 a //這里不加-d參數表示cut默認用的制表符作為分隔符
\t //表示制表符
paste //合并行
paste -d '+' a b //將a和b文件中的每一行都合并顯示,以+號分割,不加-d參數默認以制表符分割
paste -s a //將a文件中的所有行合并為一行
sed //流編輯器,編輯數據用
sed command file
sed 's/unix/UNIX/g' intro //將intro文件中的unix全部替換為UNIX并在屏幕上打印出來,不改變原文件(s是替換作用,g是全局選項,保證一行中有多個unix都能被替換)
sed -n '1,2p' /etc/passwd //只顯示passwd文件的前兩行
sed -n '/root/p' /etc/passwd //只顯示passwd文件中包含root字符串的行
sed -n '1,2d' /etc/passwd //刪除passwd文件中1和2行
sed ‘5d’ a //刪除a文件的第5行
sed '/[Tt]est/d' a //刪除a文件中包含Test或test的行
sed 's/...//' a //刪除a文件中每一行的前3個字符
sed 's/...$//' a //刪除a文件中每一行的后3個字符
tr //用于轉換來自標準輸入的字符,不改變原文件
tr from-chars to-chars
tr e x < /etc/passwd
tr '[a-z]' '[A-Z]' < /etc/passwd //將passwd文件中小寫字母轉為大寫字母
常用ASCII字符的八進制值
響鈴 7
退格 10
制表符 11
新行 12
換行 12
換頁 14
回車 15
轉義 33
tr -s ' ' ' ' a //壓縮掉a文件中多余的空格
tr -d ‘ ’ a //刪除掉a中的空格
tr 'X' 'x' //所有大寫轉為小寫
tr '()' '{}' //所有左小括號轉為左大括號,右小括號轉為右大括號
tr '[A-Z]' '[N-ZA-M]' //所有A-M的字符分別轉換為N-Z,N-Z的字符分別轉為A-M
tr -d '[0-9]' //刪除所有數字
grep
grep pattern files
grep -i //不區分大小寫
grep -v //反選,不顯示包括模式的行
grep -l //顯示包含模式的文件名
grep -n //文件中符合指定模式的行顯示行號
sort //排序,默認按編碼方式升序排列
sort -u //去除重復的行
sort -r //反序排序
sort -o //后面跟文件名,輸出定向到文件
sort -t: -k 3 /etc/passwd //按用戶ID來排序
uniq //去除連續的重復行
uniq input-files out-files
uniq -d //顯示重復的行
sort /etc/passwd |cut -f1 -d: |uniq -d //查找重復的用戶名
awk,perl
who|cut -f1 -d' ' |grep '\w\{4,\}' //查找系統中至少4個字符的已登錄用戶
cut -d: -f 1,3 /etc/passwd | grep '[0-9]\{3,\}' | cut -d: -f 1 //查出系統中用戶標識號大于99的用戶
cut -d: -f 1,3 /etc/passwd |grep '[0-9]\{3,\}' | wc -l //統計大于99的用戶數
ls -l | sort -nrk 5 //按文件大小降序列出目錄下的所有文件
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。