Linux 筆記--文本

來源:互聯網
上載者:User

標籤:des   ar   os   使用   sp   檔案   資料   div   on   

uniq
-i 忽略大小寫
-c 進行計數
-fN 前 N 個地區被忽略
wc

行 字數 字元數

-l 僅列出行
-w 僅列出多少字
-m 多少字元
cut
-d 後接分割字元,與-f 一起使用
-f 用-f 去第幾段
-c 以字元的單位取出固定字元區間
echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:

echo $PATH | cut -d ‘:‘ -f2

/usr/bin

echo $PATH | cut -d ‘:‘ -f2,5

/usr/bin:/usr/sbin

echo $PATH | cut -d ‘:‘ -f2-5

/usr/bin:/bin:/usr/local/sbin:/usr/sbin

echo $pATH | cut -c1-4

/usr/lo
sort
-f 忽略大小寫差異
-b 忽略最前面的空格符部分
-M 以月份的名字來排序.
-n 使用純數字
-r 反向排序
-u uniq,相同的資料,僅出現一行代表
-t 分隔字元,預設是 tab
-k 以那個區間(field)來排序(與-t 搭配)
-c 測試檔案是否已經分類
-m 合并 2 個分類檔案
-u 刪除所有複製行
-o 接儲存的檔案名稱
對-k, 也可以是 -k1 -k2, 表示的是先以 第二段來排序, 如果相同就以第二段
tr
-d 刪除字元
-s 重複資料刪除的字元
cat a.txt | tr -d ‘\r‘ > b.txt
修改 dos 檔案的分行符號 ^M

echo "hello world" | tr [a-z] [A-Z]

HELLO WORLD

echo "hello world" | tr -d o

hell wrld

echo "hello world" | tr o a

hella warld

echo "helllllo world" | tr -s l

helo world
tee 雙重導向
-a 以類加的方式將資料加入 file 中
col
-x 將 tab 轉換成對等的空格鍵
-b 在文字內有反斜線/時,僅保留反斜線剛最後接的那個字元
cat -A FILE 會出現很多I 符號(tab), 就可以使用轉換成空格功能
join

2 個檔案中, 有相同的資料的那一行, 才加在一起.

-t join 預設以空格分隔資料, 並且比對[第一個欄位]的資料
-i 忽略大小寫差異
-o join -o 1.1 2.2 FILE1 FILE2,只取 1 2
-j join -j1 3 -j2 2 FILE1 FILE2, 取 3 和 2 部分
-1 表示第一個檔案要用那個欄位來分析
-2 表示第二個檔案要用那個欄位來分析
cat a
111 2222

cat b

22222 2222

cat c

111 3333

join a b

沒有結果

join -1 2 a -2 2 b

2222 111 3333

join -1 2 b -2 2 b

2222 3333 111如果第一個檔案的第二個欄位和第二個檔案的第二個欄位相同就 join

join -1 1 a -2 1 c

111 2222 3333

join -t ‘:‘ /etc/passwd /etc/shadow

將 2 個檔案第一欄位相同者整合成一行

join -t ‘:‘ -1 4 /etc/passwd -2 3 /etc/group

將第一個檔案的第四個欄位和第二個檔案的第三個欄位比較,相同就整合成一行.在使用 join 之前, 檔案應該要實現經過排序,否則有些比對的項目會被忽略.
paste
-d 後接分隔字元, 預設是[tab]
-s 將檔案變成一行
paste /etc/passwd /etc/shadowcat /etc/group | paste /etc/passwd /etc/shadow - | head -n 3
split
-b 接欲分割成的檔案大小,可加單位 b k m
-l 以行數來進行分割


PREFIX 代表前置字元的意思,可作為分割檔案的前置文字.

split -b 300k /etc/termcap termcap


ll a.txt

-rw-rw-r-- 1 xiang xiang 3.7K Apr 27 15:45 a.txt

split -b 2k a.txt a.txt && ls

a.txt  a.txtaa  a.txtab

split -b 2k a.txt a && ll

total 40K-rw-rw-r--   1 xiang xiang 2.0K Apr 27 15:45 aaa-rw-rw-r--   1 xiang xiang 1.7K Apr 27 15:45 aab
xargs
-0 如果輸入的 stdin 有特殊字元,例如 `, \, 空格鍵等等, 將他還原成一般字元
-e EOF 後面可以接一個字串,當 xargs 分析到這個字串時,就會停止繼續工作!
-p 在執行每個指令的 argument 時,都會詢問使用者;
-n 後面接次數,每次 command 指令執行時,使用幾個參數。
find -exec COMMAND {} \;
操作是將前面找到的都作為一個參數來執行,而通過 xargs 就會將他們分解

find -type f | xargs file

查看檔案的屬性

ls | xargs cat | grep "cmov"

通過列出所有的檔案, 然後 cat 再用 grep 尋找.
expand
-t 後面可以接數字,將 tab 轉換成空格grep ‘^MANPATH‘ /etc/man* | head - n3 | cat -Agrep ‘^MANPATH‘ /etc/man* | head -n 3 | expand -t 6 | cat -A

經過 expand 之後就沒有I 了, 因為被轉換成了空格.

unexpand 將空格轉換成 tab
grep ‘^MANPATH‘ /etc/man_db.conf | head -n 3| expand -t 12| unexpand -t 1 | cat -A

Linux 筆記--文本

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.