linuxwhich
『壹』 linux如何查找文件
1、使用find命令
Linuxfind命令用來在指定目錄下查找文件。任何位於參數之前的字元串都將被視為欲查找的目錄名。如果使用該命令時,不設置任何參數,則find命令將在當前目錄下查找子目錄或文件。並且將查找到的子目錄和文件全部進行顯示。
語法:find path -option [ -print ] [ -exec -ok command ] {} ;
2、使用locate命令
Linux locate命令用於查找符合條件的文檔,他會去保存文檔和目錄名稱的資料庫內,查找合乎範本樣式條件的文檔或目錄。
一般情況我們只需要輸入locate your_file_name即可查找指定文件。
語法:locate [-d ][--help][--version][範本樣式...]
3、使用which命令
Linux which命令用於查找文件。
which指令會在環境變數$PATH設置的目錄里查找符合條件的文件。
語法:which [文件...]
4、使用whereis命令
Linux whereis命令用於查找文件。
該指令會在特定目錄中查找符合條件的文件。這些文件應屬於原始代碼、二進制文件,或是幫助文件。
該指令只能用於查找二進制文件、源代碼文件和man手冊頁,一般文件的定位需使用locate命令。
語法:whereis [-bfmsu][-B <目錄>...][-M <目錄>...][-S<目錄>...][文件...]
『貳』 Linux下文件搜索、查找、查看命令
1、最強大的搜索命令:find 查找各種文件的命令
2、在文件資料中查找文件:locate
3、搜索命令所在的目錄及別名信息:which
4、搜索命令所在的目錄及幫助文檔路徑:whereis
5、在文件中搜尋字元串匹配的行並輸出:grep
6、分頁顯示一個文件或任何輸出結果:more
7、分頁顯示一個文件並且可以回頭:less
8、指定顯示前多少行文件內容:head
9、指定顯示文件後多少行內容:tail
10、查看一個文件:cat
11、查看文件內容多少字元多少行多少位元組:wc
12、排序文件內容:sort
一、根據 文件或目錄名稱 搜索
find 【搜索目錄】【-name或者-iname】【搜索字元】:-name和-iname的區別一個區分大小寫,一個不區分大小寫
eg:在/etc 目錄下搜索名字為init的文件或目錄
①、find /etc -name init (精準搜索,名字必須為 init 才能搜索的到)
②、find /etc -iname init (精準搜索,名字必須為 init或者有字母大寫也能搜索的到)
③、find /etc -name *init (模糊搜索,以 init 結尾的文件或目錄名)
④、find /etc -name init??? (模糊搜索,? 表示單個字元,即搜索到 init___)
二、根據 文件大小 搜索
eg:在根目錄下查找大於 100M 的文件
find / -size +204800
這里 +n 表示大於,-n 表示小於,n 表示等於
1 數據塊 == 512 位元組 0.5KB,也就是1KB等於2數據塊
100MB == 102400KB204800數據塊
三、根據 所有者和所屬組 搜索
①、在home目錄下查詢所屬組為 root 的文件
find /home -group root
②、在home目錄下查詢所有者為 root 的文件
find /home -user root
四、根據 時間屬性 搜索
find 【路徑】【選項】【時間】
選項有下面三種:-amin 訪問時間
-cmin 文件屬性被更改
-mmin 文件內容被修改
時間:+n,-n,n分別表示超過n分鍾,n分鍾以內和n分鍾
eg:在 /etc 目錄下查找5 分鍾內被修改過屬性的文件和目錄
find /etc -cmin -5
五、根據 文件類型或i節點 搜索
-type 根據文件類型查找:
f表示文件,d表示目錄,l表示軟鏈接
eg:查找 /home 目錄下文件類型是目錄的
find /home -type d
-inum 根據i節點查找
eg:查找 /tmp 目錄下i節點為400342的文件或目錄
find /tmp -inum 400342
六、組合條件 搜索
這里有兩個參數:
①、-a 表示兩個條件同時滿足(and)
②、-o 表示兩個條件滿足任意一個即可(or)
範例:查找/etc目錄下大於80MB同時小於100MB的文件
find /etc -size +163840 -a -size -204800
語法:locate【文件名】 -i 不區分大小寫
注意:這里和 find 命令是有區別的,find是全盤檢索,而locate 是在文件資料庫中進行搜索。所以locate命令的執行要比find命令執行速度快很多。但是這里有個問題,文件資料庫是需要不斷更新的。我們新創建的文件如果不更新 文件資料庫,使用 locate 是查找不到的。
updatedb 手動更新資料庫,但是對於/tmp目錄下的新建文件,是更新不到文件資料庫的,因為/tmp目錄不屬於文件資料庫的收錄范圍。
eg:locate hcf
功能描述:搜索命令所在的目錄及別名信息
語法:which【命令】
eg:which ls
功能描述:搜索命令所在的目錄及幫助文檔路徑
語法:whereis【命令】
eg:whereis ls
功能描述:在文件中搜尋字元串匹配的行並輸出
語法:grep -iv 【指定字元串】【文件】
-i 不區分大小寫
-v 排除指定字元串
eg:查找 /root/install.log 文件中包含 mysql 字元串的行,並輸出
grep mysql /root/install.log
本搜索工具,根據用戶指定的模式,對目標文件逐行進行匹配檢查,列印匹配到的行
grep是在文件中搜索匹配的字元串,是在文件中進行內容搜索,這個命令後面用到的比較多
描述:
分頁顯示一個文件或任何輸出結果
用於查看純文本文件(較長的)格式
格式:
more[選項] 文件
less 與 more 類似,但使用 less 可以隨意瀏覽文件,而 more 僅能向前移動,卻不能向後移動,而且 less 在查看之前不會載入整個文件。
head[必要參數][選擇參數][文件]
用於顯示指定文件開始多少行內容
命令參數:
-n 10 顯示前10行
-n -10 正常輸出但不顯示最後的10行
eg:顯示new.txt的前兩行內容
head -n 2 new.txt
head -2 new.txt
tail[必要參數][選擇參數][文件]
用於顯示指定文件末尾多少行內容
命令參數:
-n 10 顯示後面10行
-f 持續刷新顯示的內容
eg:顯示new.txt的末尾兩行內容
tail -n 2 new.txt
tail -2 new.txt
eg:指定從第二行開始顯示
tail -n +2 new.txt
描述:一次顯示整個文件內容
cat 命令 用於查看純文本文件(較短)
cat [選項] [文件]…
描述:wc 命令默認情況下會列印換行符數、單詞數和字元數。
用法:wc [選項] [文件]
用法:sort [選項] [文件]
轉自: Linux下文件搜索、查找、查看命令_黃小小的博客-CSDN博客_linux 搜索
『叄』 Linux新人問兩個關於linux中的which命令的問題
我剛看了,沒有-n, -p -w選項了。
which -V
輸出
GNU which v2.19, Copyright (C) 1999 - 2008 Carlo Wood.
GNU which comes with ABSOLUTELY NO WARRANTY;
This program is free software; your freedom to use, change
and distribute this program is protected by the GPL.
『肆』 linux中which和whereis的區別
which命令是查找某個命令的完整路徑,也就是說它是用來查找可執行文件的,which命令的原理是在當前登錄用戶的PATH環境變數記錄的路徑中進行查找。which命令使用例子:
which passwd(查找passwd命令的二進制文件路徑)
而whereis命令則是用來快速查找任何文件,注意是任何文件,所以是一個文件搜索命令,它和另一個文件搜索命令locate的功能是一樣的。比如如果輸入:whereis passwd,那麼找到的結果就比which命令找到的內容多,因為which命令只會列出二進制文件路徑,而whereis命令會把所有帶有passwd字樣的文件路徑都列舉出來。
『伍』 linux中好像which命令出了問題,查不到文件
先確認使用which的賬號,如果是非root賬號的話,可能是沒許可權使用which的,可以切換到root或者在which命令前加上sudo。
查找文件的話,還可以使用find命令,使用方法是:
find /opt -name abc*
這個命令是查找/opt目錄下,名字帶abc的文件
『陸』 Linux裡面where和which命令區別是什麼
你好很高興回答你的問題:
兩個命令都可以查找命令的位置
區別:
which 是根據PATH(命令環境變數) 裡面的路徑進行查找,一般查找的路徑是/bin/ /sbin/ /usr/bin/ /usr/sbin /usr/local/bin /usr/local/sbin 等目錄(後期還可以增加)
where(??)應該是whereis吧. whereis 是查找命令相關的文件或幫助文件 ,比which多些幫助文件
- 回答者-oldboylinux
『柒』 怎麼在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
『捌』 linux命令中which、whereis、locate有什麼區別
locate命令不是實時查找,所以查找的結果不精確,但查找速度很快。
which命令是查找命令是否存在,以及命令的存放位置在哪兒。
whereis命令只能用於搜索程序名,而且只搜索二進制文件
『玖』 Linux裡面which ab命令作用是什麼
which 可以看到命令的絕對路徑 例如 which ls 會顯示ls的絕對路徑 具體可以看看《linux就該這么學》
『拾』 linux中which命令可以查找內部命令嗎
which不可以查找內部命令,只能按PATH查找外部命令。