每天一个linux命令(10):cat 命令
cat命令的用途是連接文件或標準輸入并打印。這個命令常用來顯示文件內(nèi)容,或者將幾個文件連接起來顯示,或者從標準輸入讀取內(nèi)容并顯示,它常與重定向符號配合使用。?
1.命令格式:
cat?[選項]?[文件]...
2.命令功能:
cat主要有三大功能:
1.一次顯示整個文件:cat?filename
2.從鍵盤創(chuàng)建一個文件:cat?>?filename?只能創(chuàng)建新文件,不能編輯已有文件.
3.將幾個文件合并為一個文件:cat?file1?file2?>?file
3.命令參數(shù):
-A,?--show-all???????????等價于?-vET
-b,?--number-nonblank????對非空輸出行編號
-e???????????????????????等價于?-vE
-E,?--show-ends??????????在每行結(jié)束處顯示?$
-n,?--number?????對輸出的所有行編號,由1開始對所有輸出的行數(shù)編號
-s,?--squeeze-blank??有連續(xù)兩行以上的空白行,就代換為一行的空白行?
-t???????????????????????與?-vT?等價
-T,?--show-tabs??????????將跳格字符顯示為?^I
-u???????????????????????(被忽略)
-v,?--show-nonprinting???使用?^?和?M-?引用,除了?LFD?和?TAB?之外
4.使用實例:
實例一:把?log2012.log?的文件內(nèi)容加上行號后輸入?log2013.log?這個文件里
命令:
cat?-n?log2012.log?log2013.log?
輸出:
[root@localhost?test]#?cat?log2012.log?
2012-01
2012-02
?
?
======[root@localhost?test]#?cat?log2013.log?
2013-01
2013-02
?
?
2013-03
======[root@localhost?test]#?cat?-n?log2012.log?log2013.log?
????? 1??2012-01
????? 2??2012-02
????? 3
????? 4
????? 5??======
????? 6??2013-01
????? 7??2013-02
????? 8
????? 9
???? 10??2013-03
???? 11??======[root@localhost?test]#
?
說明:
?
實例二:把?log2012.log?和?log2013.log?的文件內(nèi)容加上行號(空白行不加)之后將內(nèi)容附加到?log.log?里。?
命令:
cat?-b?log2012.log?log2013.log?log.log
輸出:
[root@localhost?test]#?cat?-b?log2012.log?log2013.log?log.log
?????1??2012-01
?????2??2012-02
?
?
?????3??======
?????4??2013-01
?????5??2013-02
?
?
?????6??2013-03
?????7??======[root@localhost?test]#
?
實例三:把?log2012.log?的文件內(nèi)容加上行號后輸入?log.log?這個文件里?
命令:
輸出:
[root@localhost?test]#?cat?log.log?
[root@localhost?test]#?cat?-n?log2012.log?>?log.log
[root@localhost?test]#?cat?-n?log.log?
?????1??2012-01
?????2??2012-02
?????3
?????4
?????5??======
[root@localhost?test]#
?
實例四:使用here?doc來生成文件
輸出:
[root@localhost?test]#?cat?>log.txt?<<EOF
>?Hello
>?World
>?Linux
>?PWD=$(pwd)
>?EOF
[root@localhost?test]#?ls?-l?log.txt?
-rw-r--r--?1?root?root?37?10-28?17:07?log.txt
[root@localhost?test]#?cat?log.txt?
Hello
World
Linux
PWD=/opt/soft/test
[root@localhost?test]#
?
說明:
注意粗體部分,here?doc可以進行字符串替換。
?
備注:
tac?(反向列示)
命令:
tac?log.txt
輸出:
[root@localhost?test]#?tac?log.txt?
PWD=/opt/soft/test
Linux
World
Hello
說明:
tac?是將?cat?反寫過來,所以他的功能就跟?cat?相反,?cat?是由第一行到最后一行連續(xù)顯示在螢幕上,而?tac?則是由最后一行到第一行反向在螢幕上顯示出來!
轉(zhuǎn)載于:https://www.cnblogs.com/CandiceW/p/6141499.html
總結(jié)
以上是生活随笔為你收集整理的每天一个linux命令(10):cat 命令的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: git review devops过程
- 下一篇: 开心麻花一共拍了几部电影。哪几部?