⑴ linux中怎麼顯示文件的第500行到文件末尾
假設第500行到文件末尾有10行,那麼:
tail -10 myfile
這樣就可以。
用 wc -l ./myfile 可以獲得文件的總行數,減去500加1就是第500行到文件末尾的行數(包括第500行)。
————————————————————————————
計算文件總共有多少行(myfile文件在當前目錄下):
line=`wc -l ./myfile | awk '{FS=" "} {print $1}'`
或:
line=`wc -l ./myfile | cut -d" " -f1`
計算第500行到文件末尾有多少行(注意運算符號兩邊的空格):
lineGap=`expr $line - 500`
用tail命令顯示文件的第500行到文件末尾的內容:
tail -$lineGap myfile
⑵ linux下將文件按行分割的命令
1)按2行切割 -l 2
2)指定切割後的文件前綴名 data_
3)指定切割後的文源兄塌件後綴名為數字 -d
4)指定切割後的文件後綴名數字的長度 -a 4,即位寬(10進制),這里長度可根據切割出來的文件有多少估算,到底拆分為幾個文件,由總行數,和每個文件的行數決定,不用指定。
如果為-a 4文件的後綴數字從0000開始計算,依次為0001,0002,0003,0004
split -l 2 data.log -d -a 4 data_
將文件data.log進行拆分,每個塵燃文件2行,如果文件總共有7行,則分為data_0000,雹圓data_0001,data_0002,data_0003
⑶ Linux裡面grep -v命令作用是什麼
grep命令
grep
1.作用
Linux系統中grep命令是一種強大的文本搜索工具,它能使用正則表達式搜索文本,並把匹 配的行列印出來。grep全稱是Global Regular Expression Print,表示全局正則表達式版本,它的使用許可權是所有用戶。
grep家族包括grep、egrep和fgrep。egrep和fgrep的命令只跟grep有很小不同。egrep是grep的擴展,支持更多的re元字元, fgrep就是fixed grep或fast grep,它們把所有的字母都看作單詞,也就是說,正則表達式中的元字元表示回其自身的字面意義,不再特殊。linux使用GNU版本的grep。它功能更強,可以通過-G、-E、-F命令行選項來使用egrep和fgrep的功能。
2.格式及主要參數
grep [options]
主要參數: grep --help可查看
-c:只輸出匹配行的計數。
-i:不區分大小寫。
-h:查詢多文件時不顯示文件名。
-l:查詢多文件時只輸出包含匹配字元的文件名。
-n:顯示匹配行及 行號。
-s:不顯示不存在或無匹配文本的錯誤信息。
-v:顯示不包含匹配文本的所有行。
--color=auto :可以將找到的關鍵詞部分加上顏色的顯示。
pattern正則表達式主要參數:
\: 忽略正則表達式中特殊字元的原有含義。
^:匹配正則表達式的開始行。
$: 匹配正則表達式的結束行。
\<:從匹配正則表達 式的行開始。
\>:到匹配正則表達式的行結束。
[ ]:單個字元,如[A]即A符合要求 。
[ - ]:范圍,如[A-Z],即A、B、C一直到Z都符合要求 。
.:所有的單個字元。
*:所有字元,長度可以為0。
3.grep命令使用簡單實例
itcast$ grep 『test』 d*
顯示所有以d開頭的文件中包含 test的行
itcast $ grep 『test』 aa bb cc
顯示在aa,bb,cc文件中匹配test的行。
itcast $ grep 『[a-z]\{5\}』 aa
顯示所有包含每個字元串至少有5個連續小寫字元的字元串的行。
itcast $ grep 『wesest.*\1′ aa
如果west被匹配,則es就被存儲到內存中,並標記為1,然後搜索任意個字元(.*),這些字元後面緊跟著 另外一個es(\1),找到就顯示該行。如果用egrep或grep -E,就不用」\」號進行轉義,直接寫成』w(es)t.*\1′就可以了。
4.grep命令使用復雜實例
明確要求搜索子目錄:
grep -r
或忽略子目錄
grep -d skip
如果有很多輸出時,您可以通過管道將其轉到』less』上閱讀:
itcast$ grep magic /usr/src/Linux/Documentation/* | less
這樣,您就可以更方便地閱讀。
有一點要注意,您必需提供一個文件過濾方式(搜索全部文件的話用 *)。如果您忘了,』grep』會一直等著,直到該程序被中斷。如果您遇到了這樣的情況,按 ,然後再試。
下面還有一些有意思的命令行參數:
grep -i pattern files :不區分大小寫地搜索。默認情況區分大小寫,
grep -l pattern files :只列出匹配的文件名,
grep -L pattern files :列出不匹配的文件名,
grep -w pattern files :只匹配整個單詞,而不是字元串的一部分(如匹配』magic』,而不是』magical』),
grep -C number pattern files :匹配的上下文分別顯示[number]行,
grep pattern1 | pattern2 files :顯示匹配 pattern1 或 pattern2 的行,
例如:grep "abc\|xyz" testfile 表示過濾包含abc或xyz的行
grep pattern1 files | grep pattern2 :顯示既匹配 pattern1 又匹配 pattern2 的行。
grep -n pattern files 即可顯示行號信息
grep -c pattern files 即可查找總行數
還有些用於搜索的特殊符號:\< 和 \> 分別標注單詞的開始與結尾。
例如:
grep man * 會匹配 『Batman』、』manic』、』man』等,
grep 『\<man』 * 匹配』manic』和』man』,但不是』Batman』,
grep 『\<man\>』 只匹配』man』,而不是』Batman』或』manic』等其他的字元串。
『^』: 指匹配的字元串在行首,
⑷ LINUX查看文件總行數和指定行
在Linux伺服器運維或操作過程中時常需要統計文件行數和查看指定行
wc命令:統計指定文件中的位元組數、字數、行數,並將結果顯示輸出。
⑸ linux下如何統計一個目錄下的文件個數以及代碼總行數的命令
知道指定後綴名的文件總個數命令:
find . -name *.cpp | wc -l
知道一個目錄下代碼總行數以及單個文件行數:
find . -name *.h | xargs wc -l
linux統計文件夾中文件數目
第一種方法:
ls -l|grep 「^-」|wc -l
ls -l 長列表輸出該目錄下文件信息(注意這里的文件,不同於一般的文件,可能是目錄、鏈接、設備文件等)。如果ls -lR|grep 「^-」|wc-l則可以連子目錄下的文件一起統計。
grep ^- 這里將長列表輸出信息過濾一部分,只保留一般文件,如果只保留目錄就是 ^d
wc -l 統計輸出信息的行數,因為已經過濾得只剩一般文件了,所以統計結果就是一般文件信息的行數,又由於一行信息對應一個文件,所以也就是文件的個數。
第二種方法:
find ./ -type f|wc -l
由於默認find會去子目錄查找,如果只想查找當前目錄的文件用
需要說明的是第二種方法會比第一種方法快很多,尤其是也統計子目錄時。
⑹ linux中wc -l指令用法,我知道怎麼得到一個文件的內容行數,但是是怎麼得到多個文件的內容的總行數
wc用於統計文本文件的行數、單詞數和位元組數,命令使用格式如下:
wc 選項 文件1 文件2......
也可以將其他命令的文本輸出通過管道符交由wc命令來統計:
命令字1 | 命令字2 | ...... | 命令字n | wc 選項
wc命令的常用選項包括:
-l 統計文本內容輸出的行數
-w 統計文本內容輸出的英文單詞數(英文按照空格來分割單詞)
-m 統計文本內容輸出的字元數(例如:「中」的字元數是1)
-c 統計文本內容輸出的位元組數(例如:「中」的位元組數是3,utf8編碼)
wc命令常用使用方式舉例如下。
①wc -l f1:統計文檔中的文字行數。
②wc -c f1:統計文檔中的位元組數。
③wc -m f1:統計文檔中的字元數。
④wc -w f1:統計文檔中的單詞數。
⑤wc -L f1:統計文檔中最長行的長度。
⑥ls -l /etc | grep "^d" | wc -l:統計/etc/下目錄的個數。執行ls -l命令後,一個目錄顯示為一行,所以統計行數即為統計目錄數,如下圖所示。
⑺ linux命令:、sort、more、cat、less
一個比較經典的問題:
如果線上機器的磁碟佔用率超級高,怎麼辦?
這時候優先想到的肯定是,定位到佔用磁碟空間最大的那些文件,然後把可以刪的給刪掉。
那麼,問題來了,如何定位到佔用磁碟空間最大的文件?
一個辦法是執行如下命令:
裡面涉及三個指令:、sort、more
既然用到了,就順便多了解一下這三個指令的用法,算是做下個人筆記。
首先是
作用:用來查看文件所佔用的磁碟情況。
格式: [選項] [文件]
可用選項(如下為 --help展示的內容):
操作示例:
對幾個比較常用的選項單獨拿出來,在機器上實際操作,效果如下:
首先,當前目錄如下:
:
其實吧,從圖裡面可以看到,使用「」的時候,最後一行就當前目錄的磁碟使用總量,所以,感覺一般情況下-c這個選項並沒有什麼用。
-s:只計算總量
不過,注意:-s與-a不能同時存在,會報錯的。
sort
作用:對輸出的結果進行排序
可用選項:
-r:代表逆序排序
-n:按照字元串數值排序
-g:按照常規數值排序
-f:忽略字母大小寫
實測效果:
首先是測試文件的原始狀態:
測試一:sort
可以發現:
空行排在了第一位;
不管數字有多大,字元串都會排在數字的後面;
數字之間排序的時候,優先考慮首位數字(感覺是把數字也當成了一個字元串進行排序);
more
作用:用於一頁一頁地展示文件內容。
幾個常用操作:
空格:翻到下一頁
b:翻到上一頁
/:啟動字元串搜索(類似於vim)
此外:
more +n XXX:從XXX文件的第n行開始展示
more -n XXX:展示XXX文件,並且將n行視為一頁,也就是按空格時,只會顯示後續的N行
cat
作用:一次性的展示所有文件內容
cat有兩個比較有用的選項:
-n:輸出所有行號
-b:只對非空行輸出行號
此外,
cat支持同時輸出多個文件的內容:cat XXX YYYY ZZZZ
並且,cat可以與more結合使用:cat XXX | more 或者 cat XXX YYYY ZZZZ | more 或者 cat -n XXX | more
less:
作用:對文件或者輸出內容進行分頁展示,並且less可以用於打開多個文件
常用操作:
j:向上滾動一行
k:向下滾動一行(類似於vim)
g:跳到第一行
G:跳到最後一行
b:向上翻一頁
空格:翻頁
n%:跳轉到整個文件的n%處
:e :在使用less打開多個文件時,使用「:e」選擇跳轉到其他文件去
/:進行字元串搜索
v:啟動編輯
常用選項:
-N:在每一行前面都顯示行號
-m:顯示讀取文件的百分比
-M:顯示讀取文件的百分比、行號和總行數
注意:
其他兩個比較簡單的指令:
head:顯示一個文件的前N行
用法:head -n 行數 文件名
tail:顯示一個文件的最後N行
用法:tail -n 行數 文件名
不過,使用tai的時候,因為-f選項可以自動顯示新增加的內容,所以經常會使用如下方式:
tail -f 文件名