Linux之cat的使用


基本介紹

 

工作原理

從標准輸入讀入要 cat 的文件列表,然后逐個打開,讀入文件內容,再將內容輸出到標准輸出上。

使用場景

  • 一次顯示整個文件
  • 從鍵盤創建一個文件
  • 將幾個文件合並為一個文件
  • 將一個或多個文件的內容追加到另一個文件后面

表達式

cat [-AbeEnstTuv] [--help] [--version] fileName

參數介紹

  -n 或 --number:由 1 開始對所有輸出的行數編號。

  -b 或 --number-nonblank:和 -n 相似,只不過對於空白行不編號。

  -s 或 --squeeze-blank:當遇到有連續兩行以上的空白行,就代換為一行的空白行。

  -v 或 --show-nonprinting:使用 ^ 和 M- 符號,除了 LFD 和 TAB 之外。

  -E 或 --show-ends : 在每行結束處顯示 $。

  -T 或 --show-tabs: 將 TAB 字符顯示為 ^I。

  -A, --show-all:等價於 -vET。

  -e:等價於"-vE"選項;

  -t:等價於"-vT"選項;

基本使用

  • 查看文件
    1.cat f1.txt,查看f1.txt文件的內容。
  2、cat -n f1.txt,查看f1.txt文件的內容,並且由1開始對所有輸出行進行編號。
  3、cat -b f1.txt,查看f1.txt文件的內容,用法與-n相似,只不過對於空白行不編號。此時和 nl f1.txt的效果是一樣的
  4、cat -s f1.txt,當遇到有連續兩行或兩行以上的空白行,就代換為一行的空白行。
  5、cat -e f1.txt,在輸出內容的每一行后面加一個$符號。
  • 創建文件

  注意:EOF為結束標識符並不是確定的,可以用任何你想用的字母代替,如果不適用結束標識符,需要用CTRL+D來結束創建;

  ‘>’這個符號表示將新內容覆蓋test.txt文件中原有的內容,如果想要不覆蓋原有內容只追加,需要將‘>’改成‘>>’;

   cat >test.txt<<EOF

 

  • 多個文件內容合並到另一個文件中
  cat -n test1.txt test2.txt >test3.txt  將test1.txt和test2.txt文件中的內容加上行號輸出到test3.txt文件中,但是如果test3.txt文件中的原始內容將被覆蓋
  • 追加新內容到文件中
  cat >>test1.txt <<EOF  將新內容追加到test1.txt文件中
  • 查看查詢92行之后的日志,並顯示前20行

  cat -n test.log |tail -n +92|head -n 20

  • 查看tar文件的日志要使用zcat

  zcat za-athena-insure-mics_10.253.209.46_20190424.tar.gz |grep --binary-files=text 'JDZEDXYX15cd9e22ca554e2a8f1d4bee12d73627' -A30;

注意:
  •  如果寫入的內容中有$符號,需要對$進行轉義
例如:我們在創建shell腳本文件時可能會有下面的代碼
~# cat >d.sh <<EOF > DATE=\$(date +%Y%m%d) > mkdir /root/\$DATE > EOF

  

學習連接

cat的高級使用

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM