Linux管道命令及管道相關命令 詳細

2021-09-28 16:20:00 字數 5043 閱讀 1414

4.sort 排序

5.wc 命令

5.3 小結

6.uniq 去重

6.3 小結

7.tee命令

7.3 小結

8.tr 命令(這可不是html的**行哦)

9.split 命令

9.3 小結

命令a|命令b--> 命令a的輸出當做命令b的輸入

管道是一種通訊機制,通常用於程序間的通訊(也可通過socket進行網路通訊),它表現出來的形式將前面每乙個程序的輸出(stdout)直接作為下乙個程序的輸入(stdin)。

$ ls -al /etc | less
通過管道將ls -al的輸出作為 下乙個命令less的輸入,方便瀏覽。

如果不指定 file 引數,cut 命令將讀取標準輸入。必須指定 -b、-c 或 -f 標誌之一。

命令含義

cut 動作 檔案

從指定檔案 擷取內容 引數

英文含義

-ccharacters

按字元選取內容

head -2 1.txt | cut -c 5

從1.txt檔案中擷取前兩行 | 通過管道符將前乙個的輸入 轉換到後面的輸出 cut命令 -c引數按照字元選取內容 選取第五個

引數

英文含義

-d '分隔符'delimiter

指定分隔符

-f n1,n2fields

分割以後顯示第幾段內容, 使用,分割

範圍控制範圍

含義n只顯示第n項

n-顯示 從第n項 一直到行尾

n-m顯示 從第n項 到 第m項(包括m)

head -2 1.txt | cut -d ':' -f 1,2
head -2 1.txt | cut -d ':' -f 1-2
[root@node01 tmp]# cat 2.txt

banana

pear

orange

pear

[root@node01 tmp]# sort 2.txt

banana

orange

pear

pear

引數

英文含義

-uunique

去掉重複的

它的作用很簡單,就是在輸出行中去除重複行。

[root@node01 tmp]# sort -u 2.txt 

banana

orange

pear

引數

英文含義

-nnumeric-sort

按照數值大小排序

-rreverse

使次序顛倒

引數英文

含義-tfield-separator

指定字段分隔符

-kkey

根據那一列排序

# 根據第二段成績 進行倒序顯示 所有內容

sort -t ',' -k2nr score.txt

命令

含義wc 檔名

顯示指定檔案位元組數, 單詞數, 行數資訊

[root@hadoop01 export]# cat 4.txt

111222 bbb

333 aaa bbb

444 aaa bbb ccc

555 aaa bbb ccc ddd

666 aaa bbb ccc ddd eee

[root@hadoop01 export]# wc 4.txt

6 21 85 4.txt

引數

英文含義

-cbytes

位元組數-wwords

單詞數-llines

行數

[root@hadoop01 export]# wc 4.txt 

6 21 85 3.txt

[root@hadoop01 export]# wc 1.txt 2.txt 3.txt 

4 4 52 1.txt

11 11 24 2.txt

6 21 85 3.txt

21 36 161 總用量

[root@hadoop01 export]# wc *.txt

4 4 52 1.txt

11 11 24 2.txt

6 21 85 3.txt

6 6 95 score.txt

27 42 256 總用量

[root@hadoop01 export]# ls /etc | wc -w

240

命令

英文含義

uniq [引數] 檔案unique 唯一

去除重複行

# 準備內容

[root@hadoop01 export]# cat 5.txt

張三 98

李四 100

王五 90

趙六 95

麻七 70

李四 100

王五 90

趙六 95

麻七 70

# 排序

[root@hadoop01 export]# cat 5.txt | sort

李四 100

李四 100

麻七 70

麻七 70

王五 90

王五 90

張三 98

趙六 95

趙六 95

# 去重

[root@hadoop01 export]# cat 5.txt | sort | uniq

李四 100

麻七 70

王五 90

張三 98

趙六 95

引數

英文含義

-ccount

統計每行內容出現的次數

[root@hadoop01 export]# cat 5.txt | sort | uniq -c

2 李四 100

2 麻七 70

2 王五 90

1 張三 98

2 趙六 95

命令

含義命令結果 | tee 檔案1 檔案2 檔案3

通過tee可以將命令結果通過管道輸出到多個檔案

cat 5.txt | sort | uniq -c | tee a.txt b.txt c.txt
命令

英文含義

命令結果 | tr 被替換的字元 新字元

translate

實現 替換效果

# 將 小寫i 替換成  大寫 i

echo "itheima" | tr 'i' 'i'

# 把itheima的轉換為大寫

echo "itheima" |tr '[a-z]' '[a-z]'

# 把 hello 轉成 小寫

echo "hello" |tr '[a-z]' '[a-z]'

命令

英文含義

命令結果 | tr -d 被刪除的字元

delete

刪除指定的字元

echo 'abc1d4e5f' | tr -d '[0-9]'
準備工作
[root@hadoop01 export]# cat words.txt 

hello,world,hadoop

hive,sqoop,flume,hello

kitty,tom,jerry,world

hadoop

1 將, 換成 換行

2 排序

3 去重

4 計數

# 統計每個單詞出現的次數

[root@hadoop01 export]# cat words.txt | tr ',' '\n' | sort | uniq -c

1 flume

2 hadoop

2 hello

1 hive

1 jerry

1 kitty

1 sqoop

1 tom

2 world

命令

英文含義

split -b 10k 檔案

byte

將大檔案切分成若干10kb的小檔案

命令英文

含義split -l 1000 檔案

lines

將大檔案切分成若干1000行的小檔案

python管道命令 Python管道和命令列引數

我對python非常陌生,我的工作中有乙個指令碼需要弄清楚。在 我的指令碼解析某個exe檔案的輸出 讓我們稱之為我的工作.exe 它處理另乙個二進位制檔案 我們稱之為processedbinary 現在,我的scrpit需要取乙個processedbinary的名稱並對其進行objdump。我可以看...

linux 管道相關命令部分講解

cut 按照字元提取 head 2 1.txt cut c 5 指定分隔符 head 2 1.txt cut d f 1,2 sort 文字排序 sort 檔名 文字排序反轉 sort r 檔名 文字排序去重 sort u 檔名 數值按大小排序 sort n 檔名 指定分隔符 指定排序列 sort ...

常用管道相關命令

釋義 根據條件從命令結果中提取對應內容 引數 c 按字元選取行中內容 d 指定以 中內容為分割符 f n1 n2 分割後顯示第幾段的內容 u 去重 n 按照數值大小排序 r 使次序顛倒 例 root node01 tmp sort nr 2.txt t 指定字段分隔符 k 根據那一列排序 例 roo...