權(quán)限: 所有用戶
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項(xiàng)目有:空間域名、雅安服務(wù)器托管、營銷軟件、網(wǎng)站建設(shè)、郊區(qū)網(wǎng)站維護(hù)、網(wǎng)站推廣。
用法:cat [option] [--help] [--version] filename …
說明:
把文件內(nèi)容連接后輸出到標(biāo)準(zhǔn)輸出(控制臺)
fileNameB 重定向輸出到另一個文件
常用參數(shù):
-n 或 --number 由 1 開始對所有輸出的行數(shù)編號
-b 或 --number-nonblank 和 -n 相似,只不過對于空白行不編號
-s 或 --squeeze-blank 當(dāng)遇到有連續(xù)兩行以上的空白行,就代換為一行的空白行
--help 顯示幫助信息
示例:
cat -n textfile1 textfile2 把 textfile1 的內(nèi)容加上行號后輸入 textfile2 文件中
cat -b textfile1 textfile2 textfile3 把 textfile1 和 textfile2 的內(nèi)容加上行號(空白行不加)之后追加到 textfile3。
Tips:
輸出到文件,每次都會重新生成文件,如果輸出的文件已存在,原內(nèi)容會丟失。
追加到文件,原文件內(nèi)容不會丟失
1. 想看一個文件的內(nèi)容是什么,可以用cat,
2. 而echo 沒有這樣的功能,他會把echo后面的內(nèi)容作為字符串顯示出來,
比如 echo hello,就顯示hello;
比如 echo /etc/reslov.conf ,會顯示/etc/reslov.conf
Linux操作系統(tǒng)是基于UNIX操作系統(tǒng)發(fā)展而來的一種克隆系統(tǒng),它誕生于1991 年的 [Linux桌面] 10 月5 日(這是第一次正式向外公布的時間)。
折疊常用命令
echo 命令
舉例:echo $PATH。
功能:將命令行中的參數(shù)顯示到標(biāo)準(zhǔn)輸出中。
date命令
舉例:date。
功能:顯示或設(shè)置系統(tǒng)時間,沒參數(shù)直接顯示系統(tǒng)當(dāng)前的日期和時間。[56-57]
passwd命令
舉例:passwd。
功能:修改密碼。
file命令
舉例:file 文件名 【參數(shù)】。
功能:確定指定文件類型。
ls命令
舉例 ls -a 顯示當(dāng)前目錄下的全部文件(包括隱藏文件)。
功能:列出目錄文件。[60-61]
touch命令
舉例:touch 【選項(xiàng)】 文件名。
功能:修改指定文件的時間標(biāo)簽或者創(chuàng)建一個空文件。
選項(xiàng):-a 僅改變指定文件的存取時間。
本篇主題:詳細(xì)學(xué)習(xí)介紹cat和cut命令
cat 是一個 文本文件****查看 和 連接 工具
語法結(jié)構(gòu):
$ cat [選項(xiàng)] [文件]
參數(shù)選項(xiàng):
-A, --show-all 等價于 -vET
-b, --number-nonblank 對非空輸出行編號
-e 等價于 -vE
-E, --show-ends 在每行結(jié)束處顯示 $
-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參數(shù)是顯示 行
[root@localhost ~]# cat /etc/profile 注:查看/etc/目錄下的profile文件內(nèi)容;
[root@localhost ~]# cat -b /etc/fstab 注:查看/etc/目錄下的profile內(nèi)容,并且對非空白行進(jìn)行編號,行號從1開始;
[root@localhost ~]# cat -n /etc/profile 注:對/etc目錄中的profile的所有的行(包括空白行)進(jìn)行編號輸出顯示;
[root@localhost ~]# cat -E /etc/profile 注:查看/etc/下的profile內(nèi)容,并且在每行的結(jié)尾處附加 $ 符號;
cat 加參數(shù)-n 和nl工具差不多,文件內(nèi)容輸出的同時,都會在每行前面加上行號;
[root@localhost ~]# cat -n /etc/profile
[root@localhost ~]# nl /etc/profile
cat 可以同時顯示多個文件的內(nèi)容,比如我們可以在一個cat命令上同時顯示兩個文件的內(nèi)容;
[root@localhost ~]# cat /etc/fstab /etc/profile
cat 對于內(nèi)容極大的文件來說,可以通過管道 | 傳送到more 工具,然后一頁一頁的查看;
[root@localhost ~]# cat /etc/fstab /etc/profile | more
2、cat 的創(chuàng)建、連接文件功能實(shí)例;
cat 有創(chuàng)建文件的功能,創(chuàng)建文件后,要以EOF或STOP結(jié)束;
[root@localhost ~]# cat linuxcat.txt EOF 注:創(chuàng)建linuxcat.txt文件;
如下圖所示:
cat 還有向已存在的文件追加內(nèi)容的功能;
[root@localhost ~]# cat linuxsir.txt EOF 注:我們向linuxcat.txt文件追加內(nèi)容;
(注:這里發(fā)現(xiàn)被我寫錯了, EOF 寫成了 OEF ,輸出的時候要對應(yīng)輸出,咱不去究其原因)
cat 連接多個文件的內(nèi)容并且輸出到一個新文件中;
命令是:
[root@localhost ~]# cat name1 name2 name3 name4
注意: 其原理是把三個文件的內(nèi)容連接起來,然后創(chuàng)建name4文件,并且把幾個文件的內(nèi)容同時寫入name4中。 特別值得一提的是,如果您輸入到一個已經(jīng)存在的name4文件,會把name4內(nèi)容清空。(****見文末例子****)
實(shí)例: 假設(shè)我們有sir01.txt、sir02.tx和sir03.txt ,并且內(nèi)容如下;[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 三個文件連接在一起(也就是說把這三個文件的內(nèi)容都接在一起)并輸出到一個新的文件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 把一個或多個已存在的文件內(nèi)容,追加到一個已存在的文件中
[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
警告:我們要知道********意思是創(chuàng)建,********是追加。千萬不要弄混了。造成失誤可不是鬧著玩的;
cut是一個選取命令,就是將一段數(shù)據(jù)經(jīng)過分析,取出我們想要的。一般來說,選取信息通常是針對“行”來進(jìn)行分析的,并不是整篇信息分析的。
語法結(jié)構(gòu):
cut [-bn] [file] 或
cut [-c] [file] 或
cut [-df] [file]
選項(xiàng)參數(shù):
-b :以 字節(jié) 為單位進(jìn)行分割。這些字節(jié)位置將忽略多字節(jié)字符邊界,除非也指定了 -n 標(biāo)志。
-c :以 字符 為單位進(jìn)行分割。
-d : 自定義分隔符 ,默認(rèn)為制表符。
-f :與-d一起使用,指定顯示哪個區(qū)域。
-n :取消分割多字節(jié)字符。僅和 -b 標(biāo)志一起使用。如果字符的最后一個字節(jié)落在由 -b 標(biāo)志的 List 參數(shù)指示的br /范圍之內(nèi),該字符將被寫出;否則,該字符將被排除。
使用說明:
cut 命令從文件的每一行剪切字節(jié)、字符和字段并將這些字節(jié)、字符和字段寫至標(biāo)準(zhǔn)輸出。
如果不指定 File 參數(shù),cut 命令將讀取標(biāo)準(zhǔn)輸入。必須指定 -b、-c 或 -f 標(biāo)志之一。
上一篇中也說到cut的使用。
值得注意的是 '-' 表示的是一個區(qū)間, ‘,’ 表示的是單個字符
例子二: 以 ‘:’ 為分隔符,截取PATH環(huán)境變量第五個位置的字符
先來看看PATH變量存的內(nèi)容是什么
[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
截取的結(jié)果:
從上面的例子中可以看出,以':'為分隔符,第五個位置是/usr/local/sbin
好了現(xiàn)在清晰了,****Cat**** 和****Cut****你學(xué)到了沒有?學(xué)到了分享一下啊!