Linux查找文件內容的常用命令方法。
1、從文件內容查找匹配指定字元串的行:
$ grep "被查找的字元串" 文件名
例子:在當前目錄里第一級文件夾中尋找包含指定字元串的.in文件
grep "thermcontact" */*.in
2、從文件內容查找與正則表達式匹配的行:
$ grep –e 「正則表達式」 文件名
3、查找時不區分大小寫:
$ grep –i "被查找的字元串" 文件名
4、查找匹配的行數:
$ grep -c "被查找的字元串" 文件名
5、從文件內容查找不匹配指定字元串的行:
$ grep –v "被查找的字元串" 文件名
6、從根目錄開始查找所有擴展名為.log的文本文件,並找出包含」ERROR」的行
find / -type f -name "*.log" | xargs grep "ERROR"
例子:從當前目錄開始查找所有擴展名為.in的文本文件,並找出包含」thermcontact」的行
find . -name "*.in" | xargs grep "thermcontact"
B. Linux下怎樣搜索文件
linux下最強大的搜索命令為」find「。它的格式為」find <指定目錄> <指定條件回> <指定動作>「;比如使用答find命令搜索在根目錄下的所有interfaces文件所在位置,命令格式為」find / -name 'interfaces'「
使用locate搜索linux系統中的文件,它比find命令快。因為它查詢的是資料庫(/var/lib/locatedb),資料庫包含本地所有的文件信息。使用locate命令在根目錄下搜索interfaces文件的命令為」locate interfaces「
使用」whereis「命令可以搜索linux系統中的所有可執行文件即二進制文件。使用whereis命令搜索grep二進制文件的命令為」whereis grep「。
4
使用which命令查看系統命令是否存在,並返回系統命令所在的位置。使用which命令查看grep命令是否存在以及存在的目錄的命令為」which grep「。
5
使用type命令查看系統中的某個命令是否為系統自帶的命令。使用type命令查看cd命令是否為系統自帶的命令;查看grep 是否為系統自帶的命令。
C. 怎麼在Linux中查找某個文件
在 Linux 中查找文件有兩種方法。一種是使用 find 命令,另外一種是使用 locate 命令。
1、Find 命令
使用 Linux find 命令可以用不同的搜索標准如名字、類型、所屬人、大小等來搜索目錄樹。基本語法如下:
#findpathexpressionsearch-term
下面是使用 find 命令根據文件名來查找特定文件的一個例子:
#find-nametest.file
命令會搜索整個目錄樹來查找名為 test.file 的文件,並且會提供其存放位置。你可以使用你 Linux 上一個存在的文件名來嘗試一下。
find 命令有時會花費幾分鍾來查找整個目錄樹,尤其是如果系統中有很多文件和目錄的話。要顯著減少時間,你可以指定搜索的目錄。比如,如果你知道 /var 中存在 test.file,那就沒有必要搜索其它目錄。這樣,你可以使用下面的命令:
#find/var-nametest.file
find 還可以根據時間、大小、所屬人、許可權等選項搜索文件。要了解更多關於這些選項的信息,你可以使用查看** Linux find 命令**的手冊。
#manfind
2、locate 命令
要在Linux中使用locate命令,首先需要安裝它。
如果你正在使用 Ubuntu,運行下面的命令來安裝 locate:
#apt-getupdate#apt-getinstallmlocate
如果你使用的是 CentOS ,運行下面的命令來安裝 locate:
#yuminstallmlocate
locate 是一種比 find 更快的方式,因為它在資料庫中查找文件。要更新搜索資料庫,運行下面的命令:
#updatedb
使用 locate 查找文件的語法:
#locatetest.file
就像 find 命令一樣,locate 也有很多選項來過濾輸出。要了解更多你可以查看Linux Locate 命令的手冊。
#manlocate
D. Linux中查找文件夾的命令
Linux中查找文件夾的命令是find命令。
Linux-文件搜索命令find的操作使用方法如下:
1、全盤搜索,也可以指定目錄搜索。find搜索目錄 -name目標名字,find / -name file
E. Linux文件路徑要怎麼進行查找
linux怎麼查找文件路徑?我們一起來了解一下吧。
1、打開linux系統,在linux的桌面的空白處右擊。
2、在彈出的下拉選項里,點擊打開終端。
3、輸入find/-name+文件名,回車運行,即可顯示文件所在路徑。
4、輸入locate+文件名,可以找到所有包含此文件名的文件。
F. Linux中如何在指定目錄下查找文件
find顧名思義就是查找的意思,該命令是各種Linux發行版本中比較重要的、常用的一個命令。Linux下的find命令提供相當多的查找條件,功能比較強大,掌握這個命令之後,對平時的系統運維、管理工作可以達到事半功倍的效果。那麼Linux系統中find命令的用法是什麼?具體請看下文:
Linux
find命令用來在指定目錄下查找文件。任何位於參數之前的字元串都將被視為欲查找的目錄名。如果使用該命令時,不設置任何參數,則find命令將在當前目錄下查找子目錄與文件,並且將查找到的子目錄和文件全部進行顯示。
語法格式:
find path -option [ -print ] [ -exec -ok command ] {} \;
參數說明:
find根據下列規則判斷path和expression,在命令列上第一個-(),!之前的部分為path,之後的部分是expression。如果path是空字串則使用目前路徑,如果expression是空字串則使用-print為預設expression。
expression中可使用的選項有二三十個,在此只介紹常用的部分。
-mount,-xedv:只檢查和指定目錄在同一個文件系統下的文件,避免列出其他文件系統中的文件;
-amin n:在過去n分鍾內被讀取過;
-anewer file:比文件file更晚被讀取過的文件;
-atime n:在過去n天內被讀取過的文件;
-cmin n:在過去n分鍾內被修改過;
-cnewer file:比文件file更新的文件;
-ctime n:在過去n天內被修改過的文件;
-empty:空的文件-gid n or -group name:gid是n或是group名稱是name;
-ipath p,-path p:路徑名稱符合p的文件,ipath會忽略大小寫;
-name name,-iname name:文件名稱符合name的文件,iname會忽略大小寫;
-size n:文件大小是n單位,b代表512位元組的區塊,c表示字元數,k表示kilo bytes,w是二個位元組。
-type c:文件類型是C的文件。
G. linux查找內容命令
find,用於在文件樹中查找文件並作相應的處理
-name:按照文件名查找文件
-perm:按照文件許可權查找文件
-user:按照文件屬主來查找文件
-size:按照指定的文件大小查找文件【+n:大於,-n:小於,n:等於】
-group:按照文件所屬的組來查找文件
-mtime<-n><+n>:按照文件更改時間來查找文件,-n表示n天之內,+n表示n天以前
-newer file1 file2:查找更改時間在file1和file2之間的文件
例如:
find -mtime -2:查找48小時修改過的文件
find -name ".log":查找當前目錄以".log"結尾的文件
find /opt/soft/test -perm 777:查找指定目錄下許可權為777的文件
find -type f -name "*.log":查找當前目錄下以".log"結尾的普通文件
find -type d | sort:查找當前所有目標目錄並排序
find /home/wansw -size +20M:查找大於20M的文件
locate指令,可以快速定位文件路徑,利用事先建立的系統中的所有文件名稱和路徑的locate資料庫,無需遍歷整個文件系統,查詢速度較快,為了保證查詢准確性,需要定期更新。《Linux就該這么學》
updatedb:第一次運行前,創建locate資料庫
grep,用於過濾/搜索指定字元串。可以使用正則表達式,能配合多種命令使用。
用法:grep 【選項】 查找內容 源文件
-A:顯示符合的行及之後的內容
-B:顯示符合的行及之前的內容
-C:顯示符合的行及前後的內容
-c:計算符合的行數目
-n:顯示匹配行和行號
-i:忽略大小寫
規則表達式
:'grep'表示匹配所有以grep開頭的行
'表示匹配所有以grep結尾的行
.:'gr.p'表示匹配'gr'後面接任意字元然後是'p'
:'grep'表示匹配一個或多個空格後緊跟grep的行
[]:[Gg]rep表示匹配Grep與grep
[]:[A-FH-Z]rep表示匹配不以A-F、H-Z開頭並緊跟rep的行
例如(grep命令大多數時候多要和別的命令一起使用才有意義):
ps -ef | grep -c SVN:查找指定的進程的個數
cat test.txt | grep -f test2.txt:從text2.txt中讀取關鍵字後在test.txt中搜索
cat test.txt | grep nf text2.txt:從text2.txt中讀取關鍵字後在text.txt中搜索並顯示行號
grep 'linux' text.txt test2.txt:從多個文件中搜索關鍵字'linux'
cat test.txt | grep -E 'ed|at':顯示包含ed或at的行
H. Linux下find命令和grep命令查找文件
在使用linux時,經常需要進行文件查找。其中查找的命令主要有find和grep。
兩個命令是有區的。
(1)find命令是根據文件的屬性進行查找,如文件名,文件大小,所有者,所屬組,是否為空,訪問時間,修改時間等。
(2)grep是根據文件的內容進行查找,會對文件的每一行按照給定的模式(patter)進行匹配查找。
一.find命令
基本格式:find path expression
1.按照文件名查找
(1)find / -name httpd.conf
在根目錄下查找文件httpd.conf,表示在整個硬碟查找
(2)find /etc -name httpd.conf
在/etc目錄下文件httpd.conf
(3)find /etc -name ' srm '
使用通配符*(0或者任意多個)。表示在/etc目錄下查找文件名中含有字元串『srm』的文件
(4)find . -name 'srm*'
表示當前目錄下查找文件名開頭是字元串『srm』的文件
I. linux下按文件名和文件內容查找文件
在當前目錄下,查找所有內容包含『abc'的文件
find . -type f | xargs grep -l 'abc'
或
find . -type f -exec grep -l 'abc' {} ;
linux查找文件命令find
根據部分文件名查找方法:
這個方法和在WINDOWS中查找已知的文件名方法是一樣的。不過在Linux中根據部分文件名查找文件的方法要比在WINDOWS中的同類查找方法要強大得多。
例如我們知道某個文件包含有srm這3個字母,那麼要找到系統中所有包含有這3個字母的文件是可以實現的,輸入:
find /etc -name '*srm*'
這個命令表明了Linux系統將在/etc整個目錄中查找所有的包含有srm這3個字母的文件,比如 absrmyz, tibc.srm等等符合條件的文件都能顯示出來。如果你還知道這個文件是由srm 這3個字母打頭的,那麼我們還可以省略最前面的星號,命令如下:
find/etc -name 'srm*'
這是只有像srmyz 這樣的文件才被查找出來,象absrmyz或者 absrm這樣的文件都不符合要求,不被顯示,這樣查找文件的效率和可靠性就大大增強了。
J. 在linux中如何用命令查找文件在哪
linux中查找文件位置的命令有很多,常用的有find,locate和whereis三個命令,下面分別介紹它們的用內法:
1、find命令是容linux中最強大的查找文件的命令,它的格式為」find <指定目錄> <指定條件> <指定動作>「。比如使用find命令搜索在根目錄下的所有interfaces文件所在位置,命令格式為」find / -name 'interfaces'」,輸入後就會返回搜索的結果了: