cat命令的用途是連接文件或標准輸入並列印。這個命令常用來顯示文件內容,或者將幾個文件連接起來顯示,或者從標准輸入讀取內容並顯示,它常與重定向符號配合使用。
1.命令格式:
cat
[選項]
[文件]...
2.命令功能:
cat主要有三大功能:
1.一次顯示整個文件:cat
filename
2.從鍵盤創建一個文件:cat
>
filename
只能創建新文件,不能編輯已有文件.
3.將幾個文件合並為一個文件:cat
file1
file2
>
file
3.命令參數:
-A,
--show-all
等價於
-vET
-b,
--number-nonblank
對非空輸出行編號
-e
等價於
-vE
-E,
--show-ends
在每行結束處顯示
$
-n,
--number
對輸出的所有行編號,由1開始對所有輸出的行數編號
-s,
--squeeze-blank
有連續兩行以上的空白行,就代換為一行的空白行
-t
與
-vT
等價
-T,
--show-tabs
將跳格字元顯示為
^I
-u
(被忽略)
-v,
--show-nonprinting
使用
^
和
M-
引用,除了
LFD
和
TAB
之外
4.使用實例:
實例一:把
log2012.log
的文件內容加上行號後輸入
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
的文件內容加上行號(空白行不加)之後將內容附加到
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
的文件內容加上行號後輸入
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
<
>
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
是由第一行到最後一行連續顯示在螢幕上,而
tac
則是由最後一行到第一行反向在螢幕上顯示出來!
⑵ linux如何在一個文件夾中輸出特定值之外的全部內容
用find命令後再輸出。
電腦中的文件夾是專門裝整頁文件用的,主要目的是為了更好的保存文件,使它整齊規范。
普通計算機文件夾是用來協助人們管理計算機文件的,每一個文件夾對應一塊磁碟空間,它提供了指向對應空間的地址,它沒有擴展名,也就不像文件的格式用擴展名來標識。
⑶ linux怎麼查看文件內容
題主你好,
linux下查看文件內容最常見的方法應該是使用cat命令, 使用也很簡單:
cat 文件名
測試截圖(查看test文件內容):
寫在最後: 除了cat外, 像一些文本編輯器, 如vi,vim,nano等等也可以用來查看文件內容, 但如果只是為了查看文件內容的話, 絕大多數是用cat命令.
-----
希望可以幫到題主, 歡迎追問.
⑷ linux中顯示文件內容用什麼命令
通過命令+文件名查看內容。如下命令可以查看。1, cat :由第一行開始顯示文件內容;
2,tac:從最後一行開始顯示,可以看出tac與cat字母順序相反;
3,nl:顯示的時候輸出行號;
4,more:一頁一頁的顯示文件內容;
5,less與more類似,但它可以向前翻頁;
6,head:只看前幾行;
7,tail:只看最後幾行;
8,od:以二進制的方式讀取文件。
9,vi和vim作為編輯器,也可以打開文件查看內容。
⑸ linux 查找文件夾並把文件夾里的內容輸出到a.txt
假如在當前面目錄下有1.txt和2.txt,現在我們把它輸出到3.txt,具體為:
#!/bin/bash
echo "start file .."
find ./ -name "*.txt" | xargs cat > 3.txt
echo "done !"
你那個出問題應該是因為find在查找的時候沒有加引號還有後面再查找的時候要使用管道命令啊
⑹ Linux 怎樣下用c語言輸出文件內容
#include <stdio.h>
int main(int argc,char**argv)
{
FILE* pFIle = fopen("a.c","r");
if(pFIle){
fseek(pFile,10,SEEK_SET);
while(!feof(pFile)) {
char c;
fread(&c,1,1,pFile);
printf("%c",c);
}
fclose(pFile);
}
}
⑺ linux中怎麼把文件中的結果輸出
cat[文件路徑]>>[要輸出的地方]
⑻ linux比較文件輸出不同的內容
linux比較文件輸出不同的內容目前據我所了解的有如下幾種方法,來比較兩個文件的行,以輸出他們的不同之處:1)
comm
mission:
comm
[-123]
file1
file2
[>
sfile]
NOTE:
file1,file2
must
be
firstly
sorted
!
-1/2/3
means:
-1
-----
rid
the
only
retained
contents
in
file1
-2
-----
rid
the
only
retained
contents
in
file2
-3
-----
rid
the
communal
lines
in
both
two
files
正如,上面說的那樣,comm命令運用的前提是針對兩個sorted文件!
該命令是對兩個已經排好序的文件進行比較。其中file1和file2是已排序的文件。comm讀取這兩個文件,然後生成三列輸出:僅在file1中出現的行;僅在file2中出現的行;在兩個文件中都存在的行。如果文件名用-
,則表示從標准輸入讀取。選項1、2或3抑制相應的列顯示。例如comm
-
12就只顯示在兩個文件中都存在的行;comm
-
23隻顯示在第一個文件中出現而未在第二個文件中出現的行;comm
-
123則什麼也不顯示。2)
grep
mission:
grep
-v
-f
file1
file2/*註::此法在對比數字時候比較湊效果,文本對比不建議使用*/3)
awk
mission:
awk
'{print
NR,$0}'
file1
file2
|sort
-k2|uniq
-u
-f
1|sort
-k1|awk
'{print
$2}'或者:awk
'{print
$0}'
file1
file2
|sort|uniq
-u4)
diff
mission:
diff
[-opt]
file1
file2