Ⅰ 在linux系統如何grep過濾中,不包含某些字元
1、linux系統中grep命令是一種強大的文本搜索工具,它能使用正則表達式搜索文本,並把匹配的行列印出來。grep全稱是Global Regular Expression Print,表示全局正則表達式版本,它的使用許可權是所有用戶。
2、格式
grep[options]
3、主要參數
[options]主要參數:
-c:只輸出匹配行的計數。
-I:不區分大小寫(只適用於單字元)。
-h:查詢多文件時不顯示文件名。
-l:查詢多文件時只輸出包含匹配字元的文件名。
-n:顯示匹配行及行號。
-s:不顯示不存在或無匹配文本的錯誤信息。
-v:顯示不包含匹配文本的所有行。
pattern正則表達式主要參數:
\:忽略正則表達式中特殊字元的原有含義。
^:匹配正則表達式的開始行。
$: 匹配正則表達式的結束行。
\<:從匹配正則表達式的行開始。
\>:到匹配正則表達式的行結束。
[ ]:單個字元,如[A]即A符合要求。
[ - ]:范圍,如[A-Z],即A、B、C一直到Z都符合要求。
。:所有的單個字元。
* :有字元,長度可以為0。
4、grep命令使用簡單實例:
$ grep 『test』d*
顯示所有以d開頭的文件中包含test的行。
$ grep 『test』aa bb cc
顯示在aa,bb,cc文件中匹配test的行。
$ grep『[a-z]\{5\}』 aa
顯示所有包含每個字元串至少有5個連續小寫字元的字元串的行。
Ⅱ linux查看文件中是否有某個字元串
用grep捕捉文件中的指定字元串,格式為:
grep指定字元串文件的完整路徑
如果該文件中有指定字元串,則該條命將輸出制定字元串所在整行字元,反之不顯示任何信息。
例,若/var文件夾中test文件內容如下:
123
444aabbcc
555
若需查詢其中是否包含aabbcc:
grep"aabbcc"/var/test
將顯示test文件內,aabbcc所在行內容「444aabbcc"
另外,若不清楚字元串的大小寫,可以在命令末尾加 -i ,這樣查詢將忽略字元串的大小寫。
grep"aaBBcc"/var/test-i
若需要查詢指定字元串在文件中的位置,可以在命令末尾加 -n ,這樣將顯示指定字元串在文件的行數。
grep"aabbcc"/var/test-n
結果顯示為:2:444aabbcc
Ⅲ linux如何過濾帶時間參數字元串
例如:
一個文件里的內容是
linux2014-04-13string
linux
datetime
過濾帶時間參數的字元串
方法:
1. 把上面三行寫入一個文件中,file.txt
2. grep -v '[0-9]\{4\}-[0-9]\{2\}-[0-9]\{2\}' file.txt
-v 是--invert-match表示輸出匹配不成功的行
你可以搜索grep -v
Ⅳ linux用grep在文件中查找字元串並顯示字元串在文件中的行號
grep -niR '想要查找的字元' xxx
註:n,顯示行號R,查找所有文件包含子目錄i,忽略大小寫 最後的「xxx」表示想要查找的文件名
Ⅳ linux 從文本截中取關鍵字元串,並輸出到某個文本文件
AAA=`sed-n-r's/.*VERSION.*"-(.*)".*/\1/p'version.h`BBB=`sed-n-r's/.*DESCRIPTION.*"(.*)".*/\1/p'version.h`
Ⅵ linux下怎樣在一個文件裡面查找一個字元串
在normal模式下按下/即可進入查找模式,輸入要查找的字元串並按下回車。版
Vim會跳轉到第一個匹配。權按下n查找下一個,按下N查找上一個。
Vim查找支持正則表達式,例如/vim$匹配行尾的"vim"。 需要查找特殊字元需要轉義,例如/vim$匹配"vim$"。
實戰一下:
1、用vim打開要查找的文件
注意,如果沒有安裝vim,系統會提示安裝語句,復制運行即可安裝vim
Ⅶ linux日誌中如何用正則表達式過濾網卡日誌信息
1、你可以通過AWK工具的正則表達式規則過濾
2、你可以能SED工具的正則表達式規則替換
3、你也可以用perl語言來過濾你的日誌文件
方法很多,看你的選擇
Ⅷ linux下如何提取日誌中指定的一段內容100分急求!!!
其實要說回答很簡單,但是要給你做出來稍微費工夫,因為沒有環境可以測試,你可以寫一段代碼來提取,也可以用sed/awk/grep等命令來做,但是命令的復雜度不亞於寫一段shell代碼。shell代碼我給你演算法吧。(括弧里是參考代碼,bash)
初始化變數(flg=0)
循環讀取每一行文件(while line in `cat $log`)
變數開始[sip/2.0]為真時( if [ $flg -eq 1 ]; then )
輸出當前行到結果文件中( echo $line >> $retFile )
如果是用戶結束 ( chkEnd $line #chkEnd 是個shell函數檢查是不是結束
if [ $? -eq 1 ]; then)
變數變數開始[sip/2.0]設置為假 (flg=0)
#如果是用戶結束(fi)
否則(else)
如果當前行含有[sip/2.0]( echo $line | grep "[sip/2.0"
if [ $? -eq 0 ]; then)
輸出當前行到結果文件中(echo $line >> $retFile)
變數變數開始[sip/2.0]設置為真(flg=1)
#如果當前行含有[sip/2.0](fi)
#變數開始[sip/2.0]為真時(fi)
Ⅸ 如何在Linux下查找文件內容包含某個特定字元串的文件
使用grep可以查找包含指定字元串的文件
格式:
grep 「要查找的字元串」 文件名
例子:
grep "192.168.0.1" /etc
文件名可以使用基本正則表達式(BRE),例如, 查找test目錄下的所有文件,是否包含www.tycode.com字元串。
grep 「www.tycode.com」 /root/zzh/test/*
幾個常用的查詢指令:
1、查找時不區分字元串的大小寫
grep -i 「查找的字元串」 文件名
2、查找時使用正則表達式,匹配符合的字元串
grep -e 「正則表達式」 文件名
3、查找不匹配指定字元串的行:
grep -v 「被查找的字元串」 文件名
4、查找時顯示被查找字元串所在的行數
grep -n 「查找的字元串」 文件名
Ⅹ 在LINUX中怎麼查找文件內容中含有某字元串的文件啊
grep
"chars"
./*
-rgrep
字元串
目錄名/*
-r其中目錄名/*是說目錄下所有文件-r是說要遞歸所以文件夾。即recursively