自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Linux搜索文件的5個(gè)高效命令的正確使用方法

數(shù)據(jù)庫(kù)
本文主要講解Linux系統(tǒng)里最常用的5個(gè)高效搜索文件的命令,他們分別是which,type,whereis,locate,find

 1. 前言

本文主要講解Linux系統(tǒng)里最常用的5個(gè)高效搜索文件的命令,他們分別是which,type,whereis,locate,find

[[275966]]

他們的使用分別是:

  • which:在PATH路徑變量中,搜索系統(tǒng)命令對(duì)應(yīng)文件的目錄位置
  • type:用于顯示哪些命令是shell自帶的,哪些命令是外部命令。如何使用選項(xiàng)-p,會(huì)顯示外部命令的保存位置,相當(dāng)于which命令。
  • whereis:只能用于搜索程序名,選項(xiàng)-b用于搜索二進(jìn)制文件,即編譯好的文件、選項(xiàng)-m用于搜索用戶手冊(cè)文件和選項(xiàng)-s用于搜索源代碼文件
  • locate:基于數(shù)據(jù)庫(kù)緩存信息顯示文件位置,并不是實(shí)時(shí)查找,如果想要實(shí)時(shí)查找,使用前需要手動(dòng)更新數(shù)據(jù)庫(kù)。
  • find:Linux系統(tǒng)最常用和最強(qiáng)大的查找命令,用于實(shí)時(shí)查找硬盤(pán)上的文件。

注意:

在這5個(gè)命令中,find命令是最慢的,原因是它可以搜索任意類型的文件,并且是實(shí)時(shí)查找的。

通常先使用whereis或者locate查找文件,如果沒(méi)有找到目標(biāo)文件,再用find命令

這是因?yàn)閣hereis與locate通過(guò)查詢數(shù)據(jù)庫(kù)來(lái)定位文件路徑的,所以相當(dāng)快速,比較節(jié)省時(shí)間。而find命令是通過(guò)實(shí)時(shí)搜索硬盤(pán)的文件的。

locate命令是mlocte軟件套件的一個(gè)子命令集,通過(guò)以下命令安裝mlocate套件

  1. [root@CentOS7 ~]# yum -y install mlocate 

總下載量:113 k

安裝大?。?79 k

Downloading packages:

mlocate-0.26-8.el7.x86_64.rpm | 113 kB 00:00:00

Running transaction check

Running transaction test

Transaction test succeeded

Running transaction

正在安裝 : mlocate-0.26-8.el7.x86_64 1/1

驗(yàn)證中 : mlocate-0.26-8.el7.x86_64 1/1

已安裝:

mlocate.x86_64 0:0.26-8.el7

完畢!

執(zhí)行以下命令手動(dòng)更新數(shù)據(jù)庫(kù):

  1. [root@CentOS7 ~]# updatedb 

updatedb命令通過(guò)讀取/etc/updatedb.conf中的配置,然后搜索整個(gè)Linux文件系統(tǒng)的文件,然后更新數(shù)據(jù)庫(kù)文件,查找文件直接讀取該數(shù)據(jù)庫(kù)

2. 搜索系統(tǒng)命令位置-`which`命令

which命令在PATH變量指定的路徑中,搜索某個(gè)系統(tǒng)命令的位置,并且返回第一個(gè)搜索結(jié)果。

which命令的格式如下:

  1. which [-a] command 

which命令的參數(shù)如下:

  • -a:將所有由PATH目錄中可以找到的命令均列出來(lái),而不是只列出第一個(gè)被找到的命令。

使用案例,通過(guò)which命令查找wget程序文件所在的目錄位置:

  1. [root@zcwyou ~]# which wget 

/usr/bin/wget

可以看出wget的程序位置

3. 搜索程序相關(guān)的文件命令`whereis`

whereis命令的使用格式如下:

  1. whereis [-bmsu] 文件或目錄名 

whereis命令的選項(xiàng)作用如下:

選項(xiàng)備注-b只搜索程序二進(jìn)制文件-m只搜索程序?qū)?yīng)的使用手冊(cè)-s只搜索程序源文件-u查找不在上述三個(gè)選項(xiàng)當(dāng)中的其他特殊文件

使用locate搜索案例:

搜索locate這個(gè)命令程序所在的位置:

  1. [root@CentOS7 ~]# whereis locate 

搜索結(jié)果如下,可以看出locate程序的程序文件和手冊(cè)文件所在的位置

locate: /usr/bin/locate /usr/share/man/man1/locate.1.gz

搜索chmod程序的使用手冊(cè)文件

  1. [root@zcwyou ~]# whereis -m chmod 

chmod: /usr/share/man/man1/chmod.1.gz

搜索程序相關(guān)的文件命令之whereis

4. 通過(guò)`locate`命令搜索文件

locate命令的格式如下:

  1. locate [-ir] keyword 

locate命令的參數(shù)如下:

  • -i:忽略大小寫(xiě)差異;
  • -r:后面可接正則表達(dá)式的實(shí)現(xiàn)方式。

使用案例:

  1. [root@zcwyou ~]# locate useradd 

/etc/default/useradd

/usr/sbin/luseradd

/usr/sbin/useradd

/usr/share/man/de/man8/useradd.8.gz

/usr/share/man/fr/man8/useradd.8.gz

/usr/share/man/id/man8/useradd.8.gz

/usr/share/man/it/man8/useradd.8.gz

/usr/share/man/ja/man8/useradd.8.gz

/usr/share/man/man1/luseradd.1.gz

/usr/share/man/man8/useradd.8.gz

/usr/share/man/ru/man8/useradd.8.gz

/usr/share/man/tr/man8/useradd.8.gz

/usr/share/man/zh_CN/man8/useradd.8.gz

/usr/share/man/zh_TW/man8/useradd.8.gz

5. 使用Linux最強(qiáng)大的搜索命令工具`find`

可以通過(guò)find命令查找Linux系統(tǒng)文件上的任何文件

使用Linux最強(qiáng)大的搜索命令工具find

find命令的使用格式如下:

  1. find [PATH] [option] [action

5.1 `find`命令基于文件名的搜索

與文件名有關(guān)的參數(shù)如下:

-name filename:查找文件名為filename的文件。filename可使用正則表達(dá)式表示。

使用案例:

  1. [root@CentOS7 ~]# find / -name sz 

/usr/bin/sz

查找文件名為sz的文件。

5.2 `find`命令之基于文件大小的搜索

如果想通過(guò)文件大小做為搜索條件的話,可以使用以下參數(shù):

  • -size xxx:查找剛好等于xxx大小的文件;
  • -size -xxx:查找大于xxx的文件;
  • -size +xxx:查找小于xxx的文件。

其中,xxx的單位有:

-c字節(jié)byte;

-w 表示漢字(2字節(jié));

-b塊(512字節(jié));

- k表示千字節(jié);

- M 表示兆字節(jié);

- G 表示吉字節(jié)。

find使用案例:

搜索當(dāng)前目錄下大于99KB的文件

  1. [root@zcwyou ~] # find . -type f -size +99k 

搜索當(dāng)前目錄下等于88KB的文件

  1. [root@zcwyou ~] # find . -type f -size 88k 

5.3 `find`命令之基于文件類型的搜索

與文件類型有關(guān)的選項(xiàng)如下:

選項(xiàng)-type 表示定義查找目標(biāo)文件的類型。

TYPE的參數(shù)列表有:

-f :普通文件;

-l:符號(hào)連接;

-d:目錄;

-c :字符設(shè)備;

-b :塊設(shè)備;

-s :套接字;

- p:FIFO。

使用案例:

查找/proc目錄下所有類型為socket的文件。

  1. [root@zcwyou ~] # find /proc -type s 

5.4 `find`命令之基于文件時(shí)間進(jìn)行搜索

與時(shí)間有關(guān)的參數(shù)共有 -atime、-ctime、-mtime。下面以-mtime說(shuō)明:

  • -mtime n: n為數(shù)字,列出在n天之前的“一天之內(nèi)”被更改過(guò)的文件名;
  • -mtime +n:列出在n天之前(不含第n天本身)被更改過(guò)的文件名;
  • -mtime -n:列出在n天之內(nèi)(不含第n天本身)被更改過(guò)的文件名;
  • -newer file:file為一個(gè)存在的文件,列出比f(wàn)ile還要新的文件名。

下面以幾個(gè)實(shí)際寫(xiě)法解釋此用法:

-mtime +2,表示2天以外的,即從距離當(dāng)前時(shí)間的2天前開(kāi)始算起,往更早的時(shí)間推移。

-mtime +1,表示1天以外的,即從距當(dāng)前時(shí)間的1天前算起,往更早的時(shí)間推移。

-mtime 1, 距離當(dāng)前時(shí)間第1天的文件,因此以此為時(shí)間點(diǎn)。

使用案例:

查找從現(xiàn)在開(kāi)始到24小時(shí)前,/etc目錄下所有改動(dòng)過(guò)內(nèi)容的文件都會(huì)被列出來(lái)。

  1. [root@zcwyou ~] # find /etc -mtime 0 

查找/etc目錄下,所有比/etc/passwd文件更新的文件。

  1. [root@zcwyou ~] # find /ect -newer /etc/passwd 

其它更多關(guān)于find命令的使用方法請(qǐng)參考本站的教程:

Linux find命令查找文件34個(gè)實(shí)用案例

6. 總結(jié)

linux搜索文件的命令必須牢記,系統(tǒng)運(yùn)維頻繁要用到的,掌握這5大命令的用法能極大提升運(yùn)維效率。

責(zé)任編輯:華軒 來(lái)源: 今日頭條
相關(guān)推薦

2010-03-04 10:44:04

Linux ftp命令

2010-03-05 15:20:25

Linux man命令

2009-09-05 10:26:20

Linux壓縮打包命令Linux命令

2009-08-04 08:32:06

Linux Find命Linux Find使用方法

2022-02-26 08:39:09

LinuxScp命令

2022-10-08 09:17:15

Linuxinxi

2009-12-02 14:50:25

PHP接口類inter

2012-05-11 10:13:54

2010-03-01 17:39:07

WCF Address

2009-12-23 18:43:05

Fedora Linu

2009-08-09 09:27:41

linux命令行瀏覽器linux打開(kāi)瀏覽器命linux命令行

2010-03-08 17:04:17

Linux df命令

2009-11-26 18:49:54

PHP函數(shù)preg_s

2011-04-27 16:38:31

投影機(jī)

2012-05-09 10:52:37

Linux監(jiān)控命令

2010-03-04 15:17:30

Python prin

2010-05-04 09:44:12

Oracle Trig

2023-11-05 09:00:00

Linux命令MySQL

2009-10-26 10:47:57

linux vi編輯器

2012-05-10 10:53:10

Linuxhistory
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)