日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

管道命令大全

發布時間:2023/12/20 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 管道命令大全 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 管道命令
    • 1.cut
    • 2 sort
    • 3 wc
    • 4 uniq
    • 5 tee
    • 6 tr
    • 7 split
    • 8 awk
    • 9 sed

管道命令

1.cut

cut 根據條件 提前對應內容cut 參數 文件 獲取指定文件中指定內容cut -c n 獲取第n個字符的列 和head配合使用效果更好例 獲取1.txt文件中前三行的第六個字符列head -3 1.txt |cut -c 6-d 分割符 -f a 分割以后顯示第a段的內容-f a- 分割以后顯示第a段到行尾的內容-f a,b 分割以后顯示第a段和第b段的內容-f a-b 分割以后顯示第a段到第b段的內容例截取1.txt文件中前3行以空格進行分割的第一段和第二段內容 head -3 1.txt|cut -b ' ' -f 1,2

小結:
cut 就是根據條件提取你要的內容
-c 獲取字符列內容
-d 分割文件
-f分割后使用顯示指定內容

2 sort

sort不加參數就是字典序 按照列排的 先排出第一列 然后在排出第二列如此循環。比如 10 ,11 ,1 ,6 ,9 它會排成 1 ,10,11,6,9一般用于對字符串進行排序如果我們要對數值進行排序就需要用到 -n這個參數了sort -n 按照數值大小排序 sort -n -r 倒序sort -u 去除重復內容我們還可以指定列排序 一般用于成績排序(sort -t ‘分隔符’ 用來分割內容的)以下是a.txt的內容姓名 語 數 英zhangsan 68 99 26lisiguan 98 66 96wangwuan 38 33 86例 獲取語文成績的排序sort -t ' ' - k2nf a.txt

小結 :
sort就是針對文本文件的內容,以行為單位來排序
sort -n 按照數值大小排序
sort -n -r 倒序
sort -u 去除重復內容

3 wc

wc 顯示指定文件 字節數, 單詞數, 行數 信息 wc -c 顯示字節數wc -w 顯示單詞數wc -l 顯示行數wc 還可以組合使用 例:查看/etc目錄下有多少子內容 ls /etc |wc -w

4 uniq

uniq 命令用于檢查及刪除文本文件中重復出現的行,uniq要與 sort 命令結合使用。uniq -c 統計每行內容出現的次數

5 tee

tee 可以把命令結果 放到多個文件中例 把a.txt的去重結果 放到 a.txt b.txt c.txt文件中cat a.txt |sort|uniq -c | tee a.txt b.txt c.txt

小結 :
通過 tee 可以將命令結果 通過管道 輸出到 多個文件

6 tr

tr 用于替換 刪除替換例 把a.txt 文件中的小寫字母替換成大寫字母cat a.txt |tr ‘[a-z]’ '[A-Z]'刪除例 把a.txt文件中的數字刪除 cat a.txt|tr -d ‘[0-9]’

7 split

split 將大文件切成多個小文件按10字節切分 (系統會給小文件自動命名 規則是xaa xab ... xba xbb ...)split -b 10 k 文件名 (得到若干份10kb的小文件)按行數切分 (命名規則同上)split -l 10 文件名 (得到若干份10行的小文件)

8 awk

awk實現 模糊查詢,按需提取字段,還可以進行 判斷和簡單的運算等.awk ‘/zhangsan|lisi/’ score.txt 查詢a.txt中zhangsan和lisi的成績(操作a.txt文件 根據逗號分割 打印第一段第二段 第三段)awk -F ‘ ,’ {print $1 $2 $3}’ a.txt (操作1.txt文件, 根據 逗號 分割,打印 第一段 第二段 第三段 內容,內容中間用===隔開)awk -F ‘’ ‘{OFS=“===”}{print $1,$2,$3}’ 1.txtif語句 查詢及格的學生信息如果及格,就顯示 $1, $4awk -F ',' '{if($4>60) print $1, $4 }' score.txt顯示 姓名, $4, 是否及格awk -F ',' '{if($4>60) print $1, $4, "及格"; else print $1, $4, "不及格"}' score.txt 參數含義
-F ‘,’使用指定字符分割
$ + 數字獲取第幾段的內容
$0獲取當前行內容
NF表示當前行共有多少個字段
$NF代表 最后一個字段
$(NF-1)代表 倒數第二個字段
NR代表 處理的是第幾行
if($0 ~ “aa”) print $0如果這一行包含 “aa”, 就打印這一行內容
if($1 ~ “aa”) print $0如果第一段 包含 “aa”, 就打印這一行內容
if($1 == “lisi”) print $0如果第一段 等于 “lisi”, 就打印這一行內容
函數含義
toupper()字符 轉成 大寫
tolower()字符 轉成小寫
length()返回 字符長度

求平均分
awk -F ‘,’ ‘BEGIN{}{total=total+$4}END{print total, NR, (total/NR)}’ score.txt

9 sed

參數含義
p打印
$代表 最后一行
-n僅顯示處理后的結果
-e根據表達式 進行處理
d刪除指定內容
i目標前面插入內容
a目標前面插入內容
s/老名稱/新名稱/替換
2c 新字符串使用新字符串 替換 選中的行
-i替換原有文件內容
sed 對目標文件進行過濾查詢或替換 sed 可選項 目標文件 列出 1.txt的 1~5行 的數據 sed -n -e '1,5p' 1.txt 列出01.txt的所有數據 且 顯示行號 sed -n -e '1,$=' -e '1,$p' 1.txt 查找01.txt中包含root行sed -n -e '/root/p' 1.txt查找出1.txt中 字母`r`后面是多個t的行,并顯示行號sed -nr -e '/r+t/p' -e '/r+t/=' 01.txt刪除01.txt中前3行數據,并顯示行號n1 01.txt |sed -e '1.3d'

總結

以上是生活随笔為你收集整理的管道命令大全的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。