linux截取命令是:1、cut命令, 按照字表符或者指定分隔符截取字符串;2、printf命令,輸出指定的內(nèi)容,通常與awk命令連用;3、awk命令,可以按空格截取字符串;4、sed命令,將其他命令的輸出作為輸出的流編輯器。
linux截取命令是:
一、cut命令
cut: 按照字表符或者指定分隔符截取字符串
-d? 指定分隔符
-f?指定截取的列,多個列之間用“,”分隔
示例:
cut??-d??":"?-f1,3???/etc/passwd
二、print和printf命令
命令格式:printf? “輸出格式輸出類型” “輸出內(nèi)容”
printf: 輸出指定的內(nèi)容,通常與awk命令連用
print: 與printf一樣,但是在輸出字符串時會自動換行
示例:
printf??"%st%st%stn"???1?2?3
三、awk命令
awk:可以按空格截取字符串
命令格式:awk? ‘{條件1}{動作1}{條件2}{動作2}’
-
BEGIN? ?在截取之前處理
-
END? 在截取之后處理
-
FS? 指定分隔符
示例:
df?-h?|?grep?vda1?|?awk?'{printf?$1?"t"?$5}'?|cut?-d?"%"?-f1? #?使用awk統(tǒng)計根分區(qū)的使用率 awk?'BEGIN{print?"開始統(tǒng)計三班的成績"}END{print?"成績統(tǒng)計結(jié)束"}{print??$2?"t"?$5}'???student.txt ??#?統(tǒng)計學生的成績 cat??/etc/passwd?|?grep??/bin/bash?|?grep??-v?root?|?awk?'BEGIN{FS=":"}{print?$1?"t"?$5}'?????#?查找系統(tǒng)中的普通用戶
四、sed命令
1、命令格式:sed [選項] ‘[動作]’
sed: 將其他命令的輸出作為輸出的流編輯器
-n? 只輸出sed命令編輯過的信息
-e? 多個命令一起操作,多個操作之間用“;”隔開
-i?保存修改后的內(nèi)容到原文件
2、動作命令包括
-
a? 在指定行后面追加指定字符串
-
i??在指定行前面插入指定字符串
-
d? ? 刪除指定行
-
c? ?按行替換
-
s? ?按字符串替換? ?格式為:/s/新字符串/舊字符串/g
-
p? ?打印行
? 示例:
??????????????sed??'2p'??./sugar/student.txt #?打印student.txt的第二行 ??????sed??'2a?hahaha' student.txt #?在student.txt文件的第二行后面追加字符串hahaha ?????sed??'2i??hahahaxixixi'??student.txt ?#?在student.txt文件第二行前插入hahaha和xixixi ?????sed??‘2,4d’???student.txt #?刪除student.txt文件的第二行到第四行 ?????sed??'2c??no?such?man' student.txt #?將student.txt的第二行替換為no?such?man? ?????sed?'2s/HubuSugar/igoodful/g'??student.txt #?將student.txt文件的HubuSugar替換成igoodful ?????sed??-e?'2d;3c?no?such?man'??student.txt #?刪除student.txt文件的第二行,同時將第三行替換為no?such?man
相關(guān)學習推薦:linux視頻教程
? 版權(quán)聲明
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載。
THE END
喜歡就支持一下吧
相關(guān)推薦