linux除了cat读取文件内容,linux cut命令和cat命令以及查看文件内容命令总结
cut-d: -f 1 /etc/passwd
> /tmp/users
-d用來定義分隔符,默認(rèn)為tab鍵,-f表示需要取得哪個(gè)字段
當(dāng)然也可以通過cut取得文件中每行中特定的幾個(gè)字符,例如:
cut -c3-5
/etc/passwd
就是輸出/etc/passwd文件中每行的第三到第五個(gè)字符。
-c 和 -f 參數(shù)可以跟以下子參數(shù):
N 第N個(gè)字符或字段
N- 從第一個(gè)字符或字段到文件結(jié)束
N-M 從第N個(gè)到第M個(gè)字符或字段
-M 從第一個(gè)到第N個(gè)字符或字段
cat
Linux Cat命令用來讀取短文件非常方便,如果一個(gè)文件非常大的時(shí)候,用頁命令是比較方便的。下面一起來看看Linux
Cat命令實(shí)際應(yīng)用。
Linux Cat命令的用法:
1.用cat命令查看文件:$ cat test.php;
$ cat -n test.php:在查看的時(shí)候加上行號(hào);
Linux Cat命令還可以使用通配符:$ cat -n *.php,把所有的php文件都顯示出來(順序顯示)
也可以這樣:$ cat -n test.php test1.php test2.php;結(jié)果用通配符輸出結(jié)果是完全一樣的
2.可以用Linux Cat命令和重定向操作符(>)來合并文件:
$ cat *.php > test3.php;
如果現(xiàn)在有test.php和test1.php這兩個(gè)文件,如何合并呢?可以用重定向操作符(>>)
$ cat test.php >>
test1.php,這樣就把test.php合并到test1.php后面去了,合并的時(shí)候注意順序,是不能搞錯(cuò)的。
3.可以使用cat命令新建一個(gè)文件并通過鍵盤直接向文件中輸入內(nèi)容。
$ cat > myfile.php
輸入完成以后使用ctrl+d來保存并退出文件
在有的時(shí)候可以組合使用,如
cat /etc/passwd | cut -d :
-f1?會(huì)顯示出來該文件的第一欄的內(nèi)容,就是那些用戶名
cat?filename?|sed?-n?15p?顯示文件第15行
觀看檔案內(nèi)容:cat, tac, more, less,
head, tail, nl,
剛剛我們提到的都只是在于顯示檔案的外觀,或者是移動(dòng)與復(fù)制一個(gè)檔案或目錄而已,那么如果我們要視察一個(gè)檔案的內(nèi)容時(shí),該如何是好呢?!這里有相當(dāng)多有趣的指令可以來分享一下:最常使用的顯示檔案內(nèi)容的指令可以說是
cat 與 more 及 less
了!此外,如果我們要查看一個(gè)很大型的檔案(好幾百M(fèi)B時(shí)),但是我們只需要后端的幾行字而已,那么該如何是好?呵呵!用 tail
呀,此外, tac 這個(gè)指令也可以達(dá)到!好了,說說各個(gè)指令的用途吧!
cat 由第一行開始顯示檔案內(nèi)容
tac 從最后一行開始顯示,可以看出 tac 是 cat 的倒著寫!
more 一頁一頁的顯示檔案內(nèi)容
less 與 more 類似,但是比 more 更好的是,他可以往前翻頁!
head 只看頭幾行
tail 只看尾巴幾行
nl 顯示的時(shí)候,順道輸出 行號(hào)!
od 以二進(jìn)制的方式讀取檔案內(nèi)容!
底下我們來談一談每個(gè)指令的基本用法吧!
· cat
語法:
[root @test /root ]# cat [-nAE]
參數(shù)說明:
-n: 顯示時(shí),連行號(hào)印出屏幕上。
-A: 將 DOS 下的 與斷行字符都列出來!
-E: 將 DOS 編輯的文件中,僅列出 斷行字符出來!
范例:
[root @test /root]# cat ~/.bashrc <==顯示 .bashrc
這個(gè)檔案
# .bashrc
# User specific aliases and functions
PATH="/bin:/sbin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:$PATH"
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
alias ll='ls -l --color=never'
[root @test /root]# cat ~/.bashrc -n <==顯示 .bashrc
并且加上行號(hào)!
1 # .bashrc
2
3 # User specific aliases and functions
4
PATH="/bin:/sbin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:$PATH"
6 alias rm='rm -i'
7 alias cp='cp -i'
8 alias mv='mv -i'
9 alias ll='ls -l --color=never'
[root @test /root]# cat -A regexp.txt
This is a cat, however, I need a dog.^M$
I want to "Happy" and and
/Happy/ here.^M$
OK! ^Ieverythins is OK^M$
Now, I will eat my food^M$
are you ^Ifinished your work^M$
what do you 123 goto where^M$
顯示出 DOS 檔案的幾個(gè)特殊符號(hào),以上面檔案為例,
可發(fā)現(xiàn) ^M 為斷行符號(hào),而每行的 $ 為行尾符號(hào),
至于 ^I 則是 按鍵啦!
說明:
嘿嘿! Linux 里面有『貓』?!喔!不是的, cat 是 Concatenate
(連續(xù))的簡(jiǎn)寫,主要的功能是將一個(gè)檔案的內(nèi)容連續(xù)的印出在屏幕上面!例如上面的例子中,我們將重要的參數(shù)檔 .bashrc
印出來!如果加上 -n 的話,則每一行前面還會(huì)加上行號(hào)呦!cat 比較少用!畢竟當(dāng)你的檔案內(nèi)容的行數(shù)超過 40
行以上,嘿嘿!根本來不及看!所以,配合 more 或者是 |more 來執(zhí)行比較好!此外,如果是一般的 DOS
檔案時(shí),就需要特別留意一些奇奇怪怪的符號(hào)了,例如斷行與等,要顯示出來,就得加入
-A 之類的參數(shù)了!。
· tac
語法:
[root @test /root ]# tac [檔名]
參數(shù)說明:
范例:
[root @test /root]# tac ~/.bashrc
<==發(fā)現(xiàn)了沒?反向印出呦!lt;tab
說明:
嘿嘿! Linux 里面有『貓』?!喔!不是的, cat 是 Concatenate
(連續(xù))的簡(jiǎn)寫,主要的功能是將一個(gè)檔案的內(nèi)容連續(xù)的印出在屏幕上面!例如上面的例子中,我們將重要的參數(shù)檔 .bashrc
印出來!如果加上 -n 的話,則每一行前面還會(huì)加上行號(hào)呦!cat 比較少用!畢竟當(dāng)你的檔案內(nèi)容的行數(shù)超過 40
行以上,嘿嘿!根本來不及看!所以,配合 more 或者是 |more 來執(zhí)行比較好!此外,如果是一般的 DOS
檔案時(shí),就需要特別留意一些奇奇怪怪的符號(hào)了,例如斷行與&
· tac
語法:
[root @test /root ]# tac [檔名]
參數(shù)說明:
范例:
[root @test /root]# tac ~/.bashrc &
fi
. /etc/bashrc
if [ -f /etc/bashrc ]; then
# Source global definitions
alias h='history'
alias lm='ls -al|more'
alias ll='ls -l'
# alias ll='ls -l --color=never'
alias mv='mv -i'
alias cp='cp -i'
alias rm='rm -i'
export PATH
PATH="/bin:/sbin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:$PATH"
# User specific aliases and functions
# .bashrc
說明:
tac 這個(gè)好玩了!怎么說呢?詳細(xì)的看一下, cat 與 tac ,有沒有發(fā)現(xiàn)呀!對(duì)啦! tac 剛好是將 cat
反寫過來,所以他的功能就跟 cat 相反啦, cat 是由『第一行到最后一行連續(xù)顯示在屏幕上』,而 tac
則是『由最后一行到第一行反向在屏幕上顯示出來』,很好玩吧! Linux more 命令用法詳解
名稱:more
使用權(quán)限:所有使用者
使用方式:more [-dlfpcsu] [-num] [+/pattern] [+linenum]
[fileNames..]
說明:類似 cat ,不過會(huì)以一頁一頁的顯示方便使用者逐頁閱讀,而最基本的指令就是按空白鍵(space)就往下一頁顯示,按 b
鍵就會(huì)往回(back)一頁顯示,而且還有搜尋字串的功能(與 vi 相似),使用中的說明文件,請(qǐng)按 h 。
參數(shù):-num 一次顯示的行數(shù)
-d 提示使用者,在畫面下方顯示 [Press space to continue, 'q' to quit.]
,如果使用者按錯(cuò)鍵,則會(huì)顯示 [Press 'h' for instructions.] 而不是 '嗶' 聲
-l 取消遇見特殊字元 ^L(送紙字元)時(shí)會(huì)暫停的功能
-f 計(jì)算行數(shù)時(shí),以實(shí)際上的行數(shù),而非自動(dòng)換行過后的行數(shù)(有些單行字?jǐn)?shù)太長(zhǎng)的會(huì)被擴(kuò)展為兩行或兩行以上)
-p 不以卷動(dòng)的方式顯示每一頁,而是先清除螢?zāi)缓笤亠@示內(nèi)容
-c 跟 -p 相似,不同的是先顯示內(nèi)容再清除其他舊資料
-s 當(dāng)遇到有連續(xù)兩行以上的空白行,就代換為一行的空白行
-u 不顯示下引號(hào) (根據(jù)環(huán)境變數(shù) TERM 指定的 terminal 而有所不同)
+/ 在每個(gè)檔案顯示前搜尋該字串(pattern),然后從該字串之后開始顯示
+num 從第 num 行開始顯示
fileNames 欲顯示內(nèi)容的檔案,可為復(fù)數(shù)個(gè)數(shù)
范例:
more -s testfile 逐頁顯示 testfile 之檔案內(nèi)容,如有連續(xù)兩行以上空白行則以一行空白行顯示。
more +20 testfile 從第 20 行開始顯示 testfile 之檔案內(nèi)容。 · less
語法:
[root @test /root ]# less [檔名]
參數(shù)說明:
范例:
[root @test /root]# less ~/.bashrc
說明:
less 的用法比起 more 又更加的有彈性,怎么說呢?在 more 的時(shí)候,我們并沒有辦法向前面翻,只能往后面看,但若使用了
less 時(shí),呵呵!就可以使用 [pageup] [pagedown]
等按鍵的功能來往前往后翻看文件,您瞧,是不是更容易使用來觀看一個(gè)檔案的內(nèi)容了呢!?
more 與 less 的用途與用法真的是很廣啦!首先,你可以在 more 與 less
的畫面中進(jìn)行『搜尋』的工作!如何進(jìn)行呢?我們以 less 來說明好了,如果你想要知道 /etc/man.config
這個(gè)檔案里面有沒有一個(gè)叫做 GER 的大寫字眼,那么可以:
[root @test /root ]# less /etc/man.config
按鍵說明:
/word:在 /etc/man.config 這個(gè)檔案中搜尋 word 這個(gè)字符串的所在
q :離開 less 的畫面
然后在輸入 / 之后,光標(biāo)會(huì)移動(dòng)到最左下角等待輸入,這個(gè)時(shí)候您只要輸入你的字符串之后,就會(huì)自動(dòng)的幫你找出來該關(guān)鍵詞啰!
· head
語法:
[root @test /root ]# head [-n number] [檔名]
參數(shù)說明:
-n :顯示 number 行
范例:
[root @test /root]# head ~/.bashrc
<==預(yù)設(shè)情況下,顯示頭十行
[root @test /root]# head -n 20
~/.bashrc<==顯示頭二十行!
說明:
head 的英文意思就是『頭』啦,那么這個(gè)東西的用法自然就是顯示出一個(gè)檔案的前幾行啰!沒錯(cuò)!就是這樣!若沒有加上 -n
這個(gè)參數(shù)時(shí),預(yù)設(shè)只顯示十行,若只要一行呢?那就加入『 head -n 1 filename 』即可!
· tail
語法:
[root @test /root ]# tail [-n number] [檔名]
參數(shù)說明:
-n :顯示 number 行
范例:
[root @test /root]# tail ~/.bashrc
[root @test /root]# tail -n 5 ~/.bashrc
<==只顯示最后面五行!
說明:
那么有 head 自然就有 tail ( 尾巴 ) 啰!沒錯(cuò)!這個(gè) tail 的用法跟 head
的用法差不多類似,只是顯示的是后面幾行就是了!預(yù)設(shè)也是顯示十行,若要顯示非十行,就加 -n number 的參數(shù)!
例題一:假如我想要顯示 ~/.bashrc 的第 11 到第 20 行呢?
答:
這個(gè)應(yīng)該不算難,想一想,在第 11 到第 20 行,那么我取前 20 行,再取后十行,所以結(jié)果就是:『 head –n 20
~/.bashrc | tail –n 10 』,這樣就可以得到第 11 到第 20
行之間的內(nèi)容了!但是里面涉及到管線命令,需要在第三篇的時(shí)候才講的到!
· nl
語法:
[root @test /root ]# nl [檔名]
參數(shù)說明:
范例:
[root @test /root]# nl ~/.bashrc
說明:
那么 nl 又是什么?這也沒什么,這個(gè)指令的用法跟 cat -n
的用法類似,也就是『可以印出行號(hào)』的指令來查看檔案啦!也是挺好用的!
· od
語法:
[root @test /root ]# od [檔名]
參數(shù)說明:
范例:
[root @test /root]# od ~/.bashrc
0000000 020043 061056 071541 071150 005143 021412 052440
062563
0000020 020162 070163 061545 063151 061551 060440 064554
071541
0000040 071545 060440 062156 063040 067165 072143 067551
071556
0000060 050012 052101 036510 027442 064542 035156 071457
064542
0000100 035156 072457 071163 071457 064542 035156 072457
071163
0000120 061057 067151 027472 071565 027562 067554 060543
027554
0000140 061163 067151 027472 071565 027562 067554 060543
027554
0000160 064542 035156 050044 052101 021110 062412 070170
071157
0000200 020164 040520 044124 005012 066141 060551 020163
066562
0000220 023475 066562 026440 023551 060412 064554 071541
061440
0000240 036560 061447 020160 064455 005047 066141 060551
020163
0000260 073155 023475 073155 026440 023551 021412 060440
064554
0000300 071541 066040 036554 066047 020163 066055 026440
061455
0000320 066157 071157 067075 073145 071145 005047 066141
060551
0000340 020163 066154 023475 071554 026440 023554 060412
064554
0000360 071541 066040 036555 066047 020163 060455 076154
067555
0000400 062562 005047 066141 060551 020163 036550 064047
071551
0000420 067564 074562 005047 021412 051440 072557 061562
020145
0000440 066147 061157 066141 062040 063145 067151 072151
067551
0000460 071556 064412 020146 020133 063055 027440 072145
027543
0000500 060
總結(jié)
以上是生活随笔為你收集整理的linux除了cat读取文件内容,linux cut命令和cat命令以及查看文件内容命令总结的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux下什么文件不能修改,Linux
- 下一篇: u盘如何linux双系统,怎么用U盘在W