cat命令是concatenate的縮寫,用於連接文本文件並列印到標準輸出設備上,所以二進位等文件使用cat沒有任何意義,僅限於文本文件。
命令格式
cat [選項] [文件]關於cat命令的功能,江湖傳言其有三大功能:
一次顯示整個文件內容
從鍵盤輸入創建一個文件
將幾個文件合併為一個文件
如上三大功能將在下文示例中進行演示
選項說明n:輸出內容增加行號
b:和n相似,但是對空白行不進行編號及顯示
s:當遇到連續兩行及以上的空白行,替換為一行空白行
如下幾個是不太常用的選項,了解下即可,需要使用的時候再詳細了解下也ok。
v:列印不可顯示的字符,如^ 和 M-
E:在每行結尾顯示$
T:將制表符[tab]顯示為^I
A:等價於vET
e:等價於vE
t:等價於vT
示例一如下演示cat的第一大功能,一次顯示整個文件,以及一些常用選項的使用
# 顯示t.txt文件內容
% cat t.txt
1234
2345
abcd
etaf
end
# 輸出行號
% cat -n t.txt
11234
2
32345
4
5
6abcd
7etaf
8end
# 空白行不輸出行號
% cat -b t.txt
11234
22345
3abcd
4etaf
5end
# 連續的空行,只顯示成一行
% cat -s t.txt
1234
2345
abcd
etaf
end
# 連續的空行只顯示成一行,並顯示行號
% cat -sn t.txt
11234
2
32345
4
5abcd
6etaf
7end示例二接下來再來看看怎麼通過cat創建一個不存在的文件
# 使用cat創建a.txt文件,指定輸入EOF為結束
# > a.txt 表示創建一個新文件,也可以使用>>追加到已經存在的文件
# EOF不一定要大寫,但是必須與輸入的結束符對應
% cat > a.txt <<EOF
> this is a file
> end
> EOF
# 再次查看a.txt文件內容
% cat a.txt
this is a file
end示例三最後演示下cat將幾個文件合併為一個文件的使用方式
# 使用cat合併文件,格式:cat 文件1 文件2 文件3 [文件4 ... ]
% cat a.txt t.txt
this is a file
end
1234
2345
abcd
etaf
end
# 重定向到一個新文件
% cat a.txt t.txt > 1.txt
# 查看新文件1.txt的內容,就是兩個文件合併起來的內容
% cat 1.txt
this is a file
end
1234
2345
abcd
etaf
end總結cat命令是一個經常使用的命令,是一個相當實用的命令,比如經常用cat命令來查看配置文件。之前文章中也是經常利用cat命令來查看測試文件的內容。當然cat命令加上管道符」|「一起使用,可以把文件內容作為下一個命令的標準輸入內容。