溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Linux管道命令有什么作用

發(fā)布時(shí)間:2023-02-03 09:49:29 來源:億速云 閱讀:125 作者:iii 欄目:建站服務(wù)器

這篇文章主要講解了“Linux管道命令有什么作用”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“Linux管道命令有什么作用”吧!

Linux管道命令是“|”,其作用是用來連接多條指令,前一條指令的輸出流會(huì)作為后一條指令的操作對(duì)象,其命令格式為“指令1 | 指令2 | …”,該命令的后一條指令,必須能夠接收標(biāo)準(zhǔn)輸入流命令才能執(zhí)行。管道命令只能處理前一條指令的正確輸出,不能處理錯(cuò)誤輸出;管道命令的后一條指令,必須能夠接收標(biāo)準(zhǔn)輸入流命令才能執(zhí)行。

什么是Linux 管道命令?

1、Linux管道命令是  “ | ”,其作用是用來連接多條指令,前一條指令的輸出流會(huì)作為后一條指令的操作對(duì)象,其命令格式為“指令1 | 指令2 | …”,該命令的后一條指令,必須能夠接收標(biāo)準(zhǔn)輸入流命令才能執(zhí)行。

2、管道命令的操作符是:”|”,它只能處理由前面一條指令傳出的正確輸出信息,對(duì)錯(cuò)誤信息是沒有直接處理能力的。然后,傳遞給下一條指令,作為操作對(duì)象。

基本格式:指令1 | 指令2 | …

【提醒注意】:

1、管道命令只能處理前一條指令的正確輸出,不能處理錯(cuò)誤輸出;

2、管道命令的后一條指令,必須能夠接收標(biāo)準(zhǔn)輸入流命令才能執(zhí)行。

Cut— 根據(jù)條件 從命令結(jié)果中 提取 對(duì)應(yīng)內(nèi)容

第一步: 截取出指定文件中 前2行 的 第5個(gè)字符

命令含義
cut 動(dòng)作 文件從指定文件截取內(nèi)容
參數(shù)英文含義
-ccharacters按字符選取內(nèi)容

命令:   head -2 文件名 | cut -c 5  

第二步: 截取出指定文件中前2行以”:”進(jìn)行分割的第1,2段內(nèi)容

參數(shù)

英文

含義

-d '分隔符'

delimiter

指定分隔符

-f n1,n2

fifields

分割以后顯示第幾段內(nèi)容, 使用 , 分割
范圍控制含義
n只顯示第 n 項(xiàng)
n-顯示從第 n 項(xiàng) 一直到行尾
n-m顯示從第n 項(xiàng) 到m 項(xiàng)(包括m)

命令:

head -2 文件名 | cut -d ':' -f 1,2

或者

head -2 文件名 | cut -d ':' -f 1-2

第三步: 截取出指定文件中前2行以”:”進(jìn)行分割的第1,2,3段內(nèi)容

命令:

head -2 文件名 | cut -d ':' -f 1,2,3

或者

head -2 文件名 | cut -d ':' -f 1-3

sort—可針對(duì)文本文件的內(nèi)容,以行為單位來排序

第一步: 對(duì)字符串排序

命令: sort 文件名

第二步: 去重排序

  • 它的作用很簡(jiǎn)單,就是在輸出行中去除重復(fù)行。

參數(shù)英文含義
-uunique去除重復(fù)的

命令:sort -u 文件名

第三步: 對(duì)數(shù)值排序

參數(shù)英文含義
-nnumeric-sort按照數(shù)值大小排序
-rreverse使次數(shù)顛倒
  • 命令

默認(rèn)按照 字符串 排序 :  sort 文件名

升序:sort -n 文件名

降序:sort -n -r 文件名

合并式:sort -nr 文件名  —> 效果和降序一樣

第四步: 對(duì)成績(jī)排序

參數(shù)英文含義
-t

fifield-separator

指定字段分隔符
-kkey根據(jù)一列排序

#  根據(jù)第二段成績(jī) 進(jìn)行倒序顯示 所有內(nèi)容

sort -t ' ' -k2nr  文件名

注意:  '    '    有一個(gè)空格

wc命令— 顯示/統(tǒng)計(jì) 指定文件 字節(jié)數(shù), 單詞數(shù), 行數(shù) 信息

第一步: 顯示指定文件 字節(jié)數(shù), 單詞數(shù), 行數(shù) 信息.

命令含義
wc 文件名顯示 行數(shù)、單詞數(shù)、字節(jié)數(shù)、指定文件信息

命令:wc 文件名

第二步: 只顯示 文件 的行數(shù)

參數(shù)英文含義
-cbytes字節(jié)數(shù)
-wwords單詞數(shù)
-llines

行數(shù)

命令:

wc -l 文件名     -----> 行數(shù)

wc -c 文件名     -----> 字節(jié)數(shù)

wc -w 文件名     -----> 單詞數(shù)

第三步: 統(tǒng)計(jì)多個(gè)文件的 行數(shù) 單詞數(shù) 字節(jié)數(shù)

命令:wc 文件1 文件2 文件3 文件4

例:wc 1.txt 2.txt 3.txt 4.txt

或者:

命令:wc *.txt

第四步: 查看 /etc 目錄下 有多少個(gè) 子內(nèi)容

命令:ls /etc | wc -l

uniq— 用于檢查及刪除文本文件中重復(fù)出現(xiàn)的行【去重】

  • 一般與 sort 命令結(jié)合使用。

第一步:實(shí)現(xiàn)去重效果

命令英文含義
uniq [參數(shù)] 文件unique 唯一去除重復(fù)行

命令:cat 文件名 | sort | uniq         —》根據(jù)字符串排序并去重

第二步:不但去重,還要統(tǒng)計(jì)出現(xiàn)的次數(shù)

參數(shù)英文含義
-ccount統(tǒng)計(jì)每行內(nèi)容出現(xiàn)的次數(shù)

命令:cat 文件名 | sort | uniq  -c

tee — 將命令結(jié)果 通過管道 輸出 到 多個(gè)文件 中

命令含義
命令結(jié)果 | tee 文件1 文件2 文件3

通過  tee  可以將命令結(jié)果  通過管道 輸出到  多個(gè)文件

  • 將去重統(tǒng)計(jì)的結(jié)果 放到 a.txtb.txt、c.txt 文件中

命令:cat 去重文件名 | sort | uniq  -c | tee a.txt b.txt c.txt

tr —用于 替換 刪除 文件中的字符

第一步: 實(shí)現(xiàn) 替換效果

命令英文

含義

命令結(jié)果 | tr 被替換的字符 新字符translate實(shí)現(xiàn)替換的效果

#  將 小寫  he  替換成 大寫 HE

echo "helloworld" | tr 'he' ''HE

#  把  helloworld  的轉(zhuǎn)換為大寫

echo "helloworld" | tr '[a-z]' 'A-Z'

#  把  HELLO  轉(zhuǎn)成 小寫

echo "HELLO" | tr 'A-Z' 'a-z'

第二步: 實(shí)現(xiàn)刪除效果

命令英文含義

命令結(jié)果  | tr -d  被刪除的字符

delete

刪除指定的字符

# 刪除  abc1d4e5f  中的數(shù)字

echo 'abc1d4ee5f' | tr -d '[0-9]'

第三步: 單詞計(jì)數(shù)

#  統(tǒng)計(jì)每個(gè)單詞出現(xiàn)的次數(shù)

示例數(shù)據(jù):

[root@node001 opt]  # cat words.txt

hello,world,hadoop  

hive,sqoop,flume,hello  

kitty,tom,jerry,world  

hadoop  

實(shí)現(xiàn)步驟:

1   、將分隔符   “,”   替換成 換行符  

2   、 排序  

3   、去重  

4   、計(jì)數(shù)  

# 命令  

cat words.txt |tr ',' '\n'|sort |uniq -c  

  • 通過 tr [選項(xiàng)] 字符1 字符2 可以 實(shí)現(xiàn) 替換 刪除 效果

感謝各位的閱讀,以上就是“Linux管道命令有什么作用”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對(duì)Linux管道命令有什么作用這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI