cut 命令在 man 文檔中的含義是 刪除文件中每一行的指定部分 。其大意就跟 cut 單詞本身的含義一樣,是用來剪切數據的。
業務包括:企業網站建設、手機網站制作、商城開發、網站營銷推廣等服務,并且涵蓋主機域名、網絡空間、云服務器、等互聯網基礎服務;成都創新互聯公司聯建站以互聯網的創新理念,成熟完善的建站體系,開拓進取的精神,專業的解決方案和顧問咨詢服務,幫助客戶在互聯網時代提升形象、把握商機、實現價值,提高企業的核心競爭力。
輸出第二個字符
以逗號為分割符,截取第二部分
cut命令可以將一串字符作為列來顯示,字符字段的記法:
例如:打印從第 8 個字符開始到結尾
本篇主題:詳細學習介紹cat和cut命令
cat 是一個 文本文件****查看 和 連接 工具
語法結構:
$ cat [選項] [文件]
參數選項:
-A, --show-all 等價于 -vET
-b, --number-nonblank 對非空輸出行編號
-e 等價于 -vE
-E, --show-ends 在每行結束處顯示 $
-n, --number 對輸出的所有行編號
-s, --squeeze-blank 不輸出多行空行
-t 與 -vT 等價
-T, --show-tabs 將跳 字符顯示為 ^I
-u (被忽略)
-v, --show-nonprinting 使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外
--help 顯示此幫助信息并離開
Cat主要有以下2大功能:
1、一次顯示(查看)整個文件,cat后面直接接文件名。
$ cat filename
比如以下,查看profile文件, -n參數是顯示 行
[root@localhost ~]# cat /etc/profile 注:查看/etc/目錄下的profile文件內容;
[root@localhost ~]# cat -b /etc/fstab 注:查看/etc/目錄下的profile內容,并且對非空白行進行編號,行號從1開始;
[root@localhost ~]# cat -n /etc/profile 注:對/etc目錄中的profile的所有的行(包括空白行)進行編號輸出顯示;
[root@localhost ~]# cat -E /etc/profile 注:查看/etc/下的profile內容,并且在每行的結尾處附加 $ 符號;
cat 加參數-n 和nl工具差不多,文件內容輸出的同時,都會在每行前面加上行號;
[root@localhost ~]# cat -n /etc/profile
[root@localhost ~]# nl /etc/profile
cat 可以同時顯示多個文件的內容,比如我們可以在一個cat命令上同時顯示兩個文件的內容;
[root@localhost ~]# cat /etc/fstab /etc/profile
cat 對于內容極大的文件來說,可以通過管道 | 傳送到more 工具,然后一頁一頁的查看;
[root@localhost ~]# cat /etc/fstab /etc/profile | more
2、cat 的創建、連接文件功能實例;
cat 有創建文件的功能,創建文件后,要以EOF或STOP結束;
[root@localhost ~]# cat linuxcat.txt EOF 注:創建linuxcat.txt文件;
如下圖所示:
cat 還有向已存在的文件追加內容的功能;
[root@localhost ~]# cat linuxsir.txt EOF 注:我們向linuxcat.txt文件追加內容;
(注:這里發現被我寫錯了, EOF 寫成了 OEF ,輸出的時候要對應輸出,咱不去究其原因)
cat 連接多個文件的內容并且輸出到一個新文件中;
命令是:
[root@localhost ~]# cat name1 name2 name3 name4
注意: 其原理是把三個文件的內容連接起來,然后創建name4文件,并且把幾個文件的內容同時寫入name4中。 特別值得一提的是,如果您輸入到一個已經存在的name4文件,會把name4內容清空。(****見文末例子****)
實例: 假設我們有sir01.txt、sir02.tx和sir03.txt ,并且內容如下;[root@localhost ~]# cat sir01.txt
123456
i am testing
[root@localhost ~]# cat sir02.txt
56789
BeiNan Tested
[root@localhost ~]# cat sir03.txt
09876
linuxsir.org testing
我想通過cat 把sir01.txt、sir02.txt及sir03.txt 三個文件連接在一起(也就是說把這三個文件的內容都接在一起)并輸出到一個新的文件sir04.txt 中。
[root@localhost ~]# cat sir01.txt sir02.txt sir03.txt** **sir04.txt
[root@localhost ~]# **more **sir04.txt
123456
i am testing
56789
BeiNan Tested
09876
linuxsir.org testing
cat 把一個或多個已存在的文件內容,追加到一個已存在的文件中
[root@localhost ~]# cat sir00.txt
linuxsir.org forever
[root@localhost ~]# cat sir01.txt sir02.txt sir03.txt** **sir00.txt
[root@localhost ~]# cat sir00.txt
linuxsir.org forever
123456
i am testing
56789
BeiNan Tested
09876
linuxsir.org testing
警告:我們要知道********意思是創建,********是追加。千萬不要弄混了。造成失誤可不是鬧著玩的;
cut是一個選取命令,就是將一段數據經過分析,取出我們想要的。一般來說,選取信息通常是針對“行”來進行分析的,并不是整篇信息分析的。
語法結構:
cut [-bn] [file] 或
cut [-c] [file] 或
cut [-df] [file]
選項參數:
-b :以 字節 為單位進行分割。這些字節位置將忽略多字節字符邊界,除非也指定了 -n 標志。
-c :以 字符 為單位進行分割。
-d : 自定義分隔符 ,默認為制表符。
-f :與-d一起使用,指定顯示哪個區域。
-n :取消分割多字節字符。僅和 -b 標志一起使用。如果字符的最后一個字節落在由 -b 標志的 List 參數指示的br /范圍之內,該字符將被寫出;否則,該字符將被排除。
使用說明:
cut 命令從文件的每一行剪切字節、字符和字段并將這些字節、字符和字段寫至標準輸出。
如果不指定 File 參數,cut 命令將讀取標準輸入。必須指定 -b、-c 或 -f 標志之一。
上一篇中也說到cut的使用。
值得注意的是 '-' 表示的是一個區間, ‘,’ 表示的是單個字符
例子二: 以 ‘:’ 為分隔符,截取PATH環境變量第五個位置的字符
先來看看PATH變量存的內容是什么
[2013012974@teach shell]$ echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/2013012974/bin
截取的結果:
從上面的例子中可以看出,以':'為分隔符,第五個位置是/usr/local/sbin
好了現在清晰了,****Cat**** 和****Cut****你學到了沒有?學到了分享一下啊!
cut命令的用法如下:
cut - 在文件的每一行中提取片斷
在 每個文件 FILE 的 各行 中, 把 提取的 片斷 顯示在 標準輸出.
-b, --bytes=LIST
輸出 這些 字節
-c, --characters=LIST
輸出 這些 字符
-d, --delimiter=DELIM
使用 DELIM 取代 TAB 做 字段(field) 分隔符
-f, --fields=LIST
輸出 這些 字段
-n
(忽略)
-s, --only-delimited
不顯示 沒有 分隔符 的 行
--output-delimiter=STRING
使用 STRING 作為 輸出分隔符, 缺省 (的 輸出分隔符) 為 輸入分隔符
--help
顯示 幫助信息, 然后 結束
--version
顯示 版本信息, 然后 結束
使用 且 只使用 -b, -c 或 -f 中的 一個 選項. LIST 由 一個 范圍 (range) 或 逗號 隔開的 多個 范圍 組成. 范圍 是 下列 形式 之一:
N
第 N 個 字節, 字符 或 字段, 從 1 計數 起
N-
從 第 N 個 字節, 字符 或 字段 直至 行尾
N-M
從 第 N 到 第 M (并包括 第M) 個 字節, 字符 或 字段
-M
從 第 1 到 第 M (并包括 第M) 個 字節, 字符 或 字段
如果 沒有 指定 文件 FILE, 或 FILE 是 -, 就從 標準輸入 讀取 數據.
文章標題:關于linux-cut命令的信息
網站路徑:http://m.newbst.com/article6/dosjgig.html
成都網站建設公司_創新互聯,為您提供面包屑導航、微信小程序、網站改版、商城網站、電子商務、手機網站建設
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯