當前位置:首頁 » 操作系統 » linux搜索文件的命令

linux搜索文件的命令

發布時間: 2023-02-19 21:54:06

1. linux下按文件名和文件內容查找文件

在當前目錄下,查找所有內容包含『abc'的文件

find . -type f | xargs grep -l 'abc'

find . -type f -exec grep -l 'abc' {} ;

(1)linux搜索文件的命令擴展閱讀:

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這樣的文件都不符合要求,不被顯示,這樣查找文件的效率和可靠性就大大增強了。

2. 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』的文件

3. 知識分享之Linux——find文件搜索命令

日常我們開發時,我們會遇到各種各樣的奇奇怪怪的問題(踩坑o(╯□╰)o),這個常見問題系列就是我日常遇到的一些問題的記錄文章系列,這里整理匯總後分享給大家,讓其還在深坑中的小夥伴有繩索能爬出來。
同時在這里也歡迎大家把自己遇到的問題留言或私信給我,我看看其能否給大家解決。

在Linux中我們經常需要查找一些文件或者根據文件內容進行查找到底在哪些文件裡面,這時就需要用到本節要講到的find命令了,這個命令可以讓我們進行查找到想要的文件,話不多說下面直接開始本節的干貨。

1、查找當前目錄下的指定文件(當前目錄向下無限極)

2、全文搜索符合於文件名的

3、不區分大小寫文件名的搜索

4、列出當前目錄及子目錄下的所有文件

5、查找近10天內被更新過的文件(-ctime 天 -cmin分鍾 )

6、根據文件內容查找文件

7、在特定文件類型下根據文件內容查找文件

以上就是我整理的常用的查詢文件命令,整理出來供大家一起使用,有需要補充的歡迎在留言區進行留言補充,謝謝大家~~~

4. linux查看文件內容命令

步驟如下:
1.點擊終端,點擊打開開始菜單上的終端。
2.輸入命令按下回車,在終端上輸入cat命令,後面加上要查看內容的文件的路徑,按下回車鍵。
3.查看到內容,在終端里查看到文件的內容。

5. Linux文件相關命令

grep命令:
grep命令是非常重要的命令,可以對文本進行查找和搜索

常用參數如下:

常用實例:
1、在多個文件中查找:
grep "file" file_1 file_2 file_3

2、輸出除之外的所有行 -v 選項:
grep -v "file" file_name

3、標記匹配顏色 --color=auto 選項:
grep "file" file_name --color=auto

4、使用正則表達式 -E 選項:
grep -E "[1-9]+"
egrep "[1-9]+"

5、只輸出文件中匹配到的部分 -o 選項:
echo this is a test line. | grep -o -E "[a-z]+."
line.

echo this is a test line. | egrep -o "[a-z]+."
line.

6、統計文件或者文本中包含匹配字元串的行數-c 選項:
grep -c "text" file_name
2

7、輸出包含匹配字元串的行數 -n 選項:
grep "text" -n file_name

cat file_name | grep "text" -n

8、多個文件
grep "text" -n file_1 file_2

9、搜索多個文件並查找匹配文本在哪些文件中:
grep -l "text" file1 file2 file3...

10、grep遞歸搜索文件
在多級目錄中對文本進行遞歸搜索:
grep "text" . -r -n

11、忽略匹配樣式中的字元大小寫:
echo "hello world" | grep -i "HELLO"
hello

12、選項 -e 指定多個匹配樣式:
echo this is a text line | grep -e "is" -e "line" -o
is
line

13、也可以使用 -f 選項來匹配多個樣式,在樣式文件中逐行寫出需要匹配的字元。
cat patfile
aaa
bbb
echo aaa bbb ccc ddd eee | grep -f patfile -o

14、在grep搜索結果中包括或者排除指定文件:
只在目錄中所有的.php和.html文件中遞歸搜索字元"main()"
grep "main()" . -r --include *.{php,html}

15、在搜索結果中排除所有README文件
grep "main()" . -r --exclude "README"

16、在搜索結果中排除filelist文件列表裡的文件
grep "main()" . -r --exclude-from filelist

touch abc.txt 創建一個名為abc.txt的文件
touch -r 指定文件時間與參考文件相同
touch -t 201608012234.55[yyyymmddhhmm.ss] abc.txt 更改文件為指定的時間
touch temp 創建一個名為temp的文件

vi編輯器有三種模式,命令行模式、編輯模式、底行模式。
vi 文件名進入命令行模式,Insert進入編輯模式,編輯完成Esc退出編輯模式,:wq進入底行模式並保存修改,:q直接退出保存。

tar命令用於打包壓縮文件,常用的壓縮命令還有bzip2,gzip
bunzip2 file1.bz2 解壓一個叫做 'file1.bz2'的文件
bzip2 file1 壓縮一個叫做 'file1' 的文件
gunzip file1.gz 解壓一個叫做 'file1.gz'的文件
gzip file1 壓縮一個叫做 'file1'的文件
gzip -9 file1 最大程度壓縮
rar a file1.rar test_file 創建一個叫做 'file1.rar' 的包
rar a file1.rar file1 file2 dir1 同時壓縮 'file1', 'file2' 以及目錄 'dir1'
rar x file1.rar 解壓rar包
unrar x file1.rar 解壓rar包
tar -cvf archive.tar file1 創建一個非壓縮的 tarball
tar -cvf archive.tar file1 file2 dir1 創建一個包含了 'file1', 'file2' 以及 'dir1'的檔案文件
tar -tf archive.tar 顯示一個包中的內容
tar -xvf archive.tar 釋放一個包
tar -xvf archive.tar -C /tmp 將壓縮包釋放到 /tmp目錄下
tar -cvfj archive.tar.bz2 dir1 創建一個bzip2格式的壓縮包
tar -xvfj archive.tar.bz2 解壓一個bzip2格式的壓縮包
tar -cvfz archive.tar.gz dir1 創建一個gzip格式的壓縮包
tar -xvfz archive.tar.gz 解壓一個gzip格式的壓縮包
zip file1.zip file1 創建一個zip格式的壓縮包
zip -r file1.zip file1 file2 dir1 將幾個文件和目錄同時壓縮成一個zip格式的壓縮包
unzip file1.zip 解壓一個zip格式壓縮包

which命令用於用戶查找命令所有路徑
命令格式

file命令用於獲取文件屬性
命令格式
file 文件名或目錄名
命令示例:

使用說明
命令格式:cat [-AbeEnstTuv] [--help] [--version] fileName
cat file1 從第一個位元組開始正向查看文件的內容
-n 或 --number:由 1 開始對所有輸出的行數編號。
-b 或 --number-nonblank:和 -n 相似,只不過對於空白行不編號。
-s 或 --squeeze-blank:當遇到有連續兩行以上的空白行,就代換為一行的空白行。
-v 或 --show-nonprinting:使用 ^ 和 M- 符號,除了 LFD 和 TAB 之外。
-E 或 --show-ends : 在每行結束處顯示 $。
-T 或 --show-tabs: 將 TAB 字元顯示為 ^I。
-A, --show-all:等價於 -vET。
-e:等價於"-vE"選項;
-t:等價於"-vT"選項;

使用示例
把 textfile1 的文檔內容加上行號後輸入 textfile2 這個文檔里
cat -n textfile1 > textfile2
把 textfile1 和 textfile2 的文檔內容加上行號(空白行不加)之後將內容附加到 textfile3 文檔里
cat -b textfile1 textfile2 >> textfile3
清空 /etc/test.txt 文檔內容
cat /dev/null > /etc/test.txt

tac [filename]
從最後一行開始反向查看一個文件的內容,ac與cat命令剛好相反,文件內容從最後一行開始顯示,可以看出 tac 是 cat 的倒著寫。

nl [-bnw] 文件
選項與參數:
-b: 指定行號指定的方式,主要有兩種:
-b a :表示不論是否為空行,也同樣列出行號(類似 cat -n);
-b t :如果有空行,空的那一行不要列出行號(默認值);
-n :列出行號表示的方法,主要有三種:
-n ln :行號在熒幕的最左方顯示;
-n rn :行號在自己欄位的最右方顯示,且不加 0 ;
-n rz :行號在自己欄位的最右方顯示,且加 0 ;
-w :行號欄位的佔用的位數。

more file1 查看一個長文件的內容,支持一頁一頁翻動
運行的時候,支持以下幾個按鍵:
空白鍵 (space):代表向下翻一頁;
Enter :代表向下翻『一行』;
/字串 :代表在這個顯示的內容當中,向下搜尋『字串』這個關鍵字;
:f :立刻顯示出檔名以及目前顯示的行數;
q :代表立刻離開 more ,不再顯示該文件內容。
b 或 [ctrl]-b :代表往回翻頁,不過這動作只對文件有用,對管線無用。

less file1 類似於 'more' 命令,但是它允許在文件中和正向操作一樣的反向操作
less運行時可以輸入的命令有:
空白鍵 :向下翻動一頁;
[pagedown]:向下翻動一頁;
[pageup] :向上翻動一頁;
/字串 :向下搜尋『字串』的功能;
?字串 :向上搜尋『字串』的功能;
n :重復前一個搜尋 (與 / 或 ? 有關!)
N :反向的重復前一個搜尋 (與 / 或 ? 有關!)
q :離開 less 這個程序;

head [-n number]
head -2 file1 查看一個文件的前兩行

tail [-n number]
tail -2 file1 查看一個文件的最後兩行
tail -f /var/log/messages 實時查看被添加到一個文件中的內容

文件許可權列中三位為一組,分別代表相關的用戶、組、其它用戶的許可權
許可權列中三位為一組,分別代表相關的用戶、組、其它用戶的許可權

所以修改許可權可以分別修改或一同修改,系統中許可權分為數字許可權與字元許可權
數字許可權:r=4,w=2,x=1
字元許可權:+ 增加 -去除 a取消所有加上給定的

修改許可權的命令chmod,命令格式:
chmod 許可權 文件名或目錄名 修改許可權格式
chmod -R 許可權 目錄名 遞歸將目錄及其下面所有內容許可權全部修改
chown 改變文件或目錄的屬主(所有者)

chown 用戶名 文件名或目錄名

chown 用戶名.組名 文件名或目錄名
修改所屬組也可用chgrp 命令來完成
當你用ls -l 查看到文件的屬主、屬組為數字時,就表明該文件的創建用戶已被刪除。

文件的特殊許可權

chattr +i(-i) 文件名 鎖定文件(取消鎖定)不可刪除與清空
chattr +a(-a) 文件名 添加內容(只可添加內容)
使用lsattr 文件名 查看文件的特殊許可權

由此可以看出
root用戶默認創建的目錄許可權是755,文件許可權是644
普通用戶默認創建的目錄許可權是775,文件許可權是664
這也是系統默認的比較安全的許可權分配,其實這些默認許可權全部都是由umask值來決定的
系統規定了
文件的許可權值是從666開始計算(默認許可權=許可權值-umask值)
目錄的許可權值是從777開始計算(默認許可權=許可權值-umask值)
文件1的許可權=444 (666-232=434——43(3+1)4)

6. 在linux中如何用命令查找文件在哪

需要准備的材料分別是:電腦、linux連接工具。

1、首先連接上linux主機,進入等待輸入指令的linux命令行狀態。

7. Linux中在當前目錄下查找某個文件。

1、打開shell連接工具,連接上伺服器,pwd查看當前目錄,一般進來默認在主目錄下。

8. 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 搜索

9. Linux中查找文件夾的命令

Linux中查找文件夾的命令是find命令。

Linux-文件搜索命令find的操作使用方法如下:

1、全盤搜索,也可以指定目錄搜索。find搜索目錄 -name目標名字,find / -name file

熱點內容
sqlifnotexists 發布:2025-08-02 02:02:14 瀏覽:127
如何製作伺服器的懸空標題字 發布:2025-08-02 01:57:49 瀏覽:843
唱吧上傳撤銷 發布:2025-08-02 01:48:11 瀏覽:693
區域網伺服器不能用ip訪問 發布:2025-08-02 01:47:20 瀏覽:540
c語言日誌 發布:2025-08-02 01:39:14 瀏覽:489
詳細編程 發布:2025-08-02 01:17:13 瀏覽:349
怎麼查看wifi的密碼 發布:2025-08-02 00:46:24 瀏覽:929
linux工具開發 發布:2025-08-02 00:44:52 瀏覽:688
c語言編程我愛你 發布:2025-08-02 00:40:12 瀏覽:946
車銑復合加工編程 發布:2025-08-02 00:39:21 瀏覽:49