shell查找命令大全
生活随笔
收集整理的這篇文章主要介紹了
shell查找命令大全
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.whereis 文件名
特點:快速,但是是模糊查找,例如 找 #whereis mysql 它會把mysql,mysql.ini,mysql.*所在的目錄都找出來.一般的查找都用這條命令.
2.find / -name 文件名
特點:準確,但速度慢,消耗資源大,例如我想找到php.ini的準確位置,就需要用
#find / -name php.ini
3.locate 文件名
強力推薦的方法,最快,最好的方法.
注意:第一次使用該命令,可能需要更新數據庫,按照提示的命令執行一下就好了.
4.slocate命令
slocate提供了一種安全的方法為系統的文件建立索引,同時用戶可以通過slocate快速搜索到系統中的文件.它使用了與locate類似的增量 編碼方法來壓縮它的數據庫,極大提高了它的搜索速度,它同時包含了文件的許可權和所有關系,使得用戶看不到他們無權訪問的文件
slocate提供兩個功能:
(1)創建文件索引數據庫。它會定時或者手工刷新索引數據庫。
(2)在數據庫中搜索指定文件。存在索引數據庫,因此它的檢索速度非常快,能夠滿足對所有文件系統快速檢索文件的需要。
slocate的常用參數:
-u??????? 從根目錄開始建立索引數據庫(會花費一定時間,依賴于用戶系統性能和需建立索引的文件數量)
-U dir??????? 從指定的目錄dir建立索引數據庫
-e dirlist??????? 排除指定的目錄列表,以逗號分隔
-f filesystemlist??????? 排除指定的文件系統列表,以逗號分隔
示例:
slocate -e /usr,/etc -u?????? 從根目錄創建索引,但排除/usr,/etc目錄
slocate mysql
more
分頁顯示一個文件或任何輸出結果.其實more不是用來尋找文件的,但是一般人卻十有八九是在找文件時把它派上用場。例子:
shell>ls /etc |more
shell>more /etc/X11/XF86Config
less (這個命令目前只在 Linux 系統可以使用,其他 UNIX 家族尚無)
less與more相似,它的優點就是可以隨時回頭,最簡單的用【PgUp】鍵就可以向上翻。
shell>ls /etc |less
shell>less /etc/X11/XF86Config
Find命令詳解
find 是高級的尋找文件工具,但也因為它太高級了,復雜到很多人用不熟練。我們盡量只舉簡單的例子。
最簡單的格式如下:find / -name my* -print
這個意思是請它從最底層的主目錄開始找,找出文件名是 my 開頭的文件,把它顯示出來。-print 選項是顯示,您可把它當做固定要加上的項目。
但它還可以用時間來找,例如:
會從 /usr 目錄開始往下找,找最近3分鐘之內存取過的文件:find /usr -amin 3 –print
會從 /usr 目錄開始往下找,找最近5天之內修改過的文件:find /usr -ctime 5 -print
會從 /doc 目錄開始往下找,找屬于用戶jacky 的、文件名開頭是 j的文件:find /doc -user jacky -name 'j*' –print
會從 /doc 目錄開始往下找,找尋文件名是 ja 開頭或者 ma開頭的文件:find /doc \( -name 'ja*' -o- -name 'ma*' \) –print
會從 /doc 目錄開始往下找,找到凡是文件名結尾為 bak的文件,把它刪除掉。-exec 選項是執行的意思,rm 是刪除命令,{ } 表示文件名,“\;”是規定的命令結尾:find /doc -name '*bak' -exec rm {} \;
特點:快速,但是是模糊查找,例如 找 #whereis mysql 它會把mysql,mysql.ini,mysql.*所在的目錄都找出來.一般的查找都用這條命令.
2.find / -name 文件名
特點:準確,但速度慢,消耗資源大,例如我想找到php.ini的準確位置,就需要用
#find / -name php.ini
3.locate 文件名
強力推薦的方法,最快,最好的方法.
注意:第一次使用該命令,可能需要更新數據庫,按照提示的命令執行一下就好了.
4.slocate命令
slocate提供了一種安全的方法為系統的文件建立索引,同時用戶可以通過slocate快速搜索到系統中的文件.它使用了與locate類似的增量 編碼方法來壓縮它的數據庫,極大提高了它的搜索速度,它同時包含了文件的許可權和所有關系,使得用戶看不到他們無權訪問的文件
slocate提供兩個功能:
(1)創建文件索引數據庫。它會定時或者手工刷新索引數據庫。
(2)在數據庫中搜索指定文件。存在索引數據庫,因此它的檢索速度非常快,能夠滿足對所有文件系統快速檢索文件的需要。
slocate的常用參數:
-u??????? 從根目錄開始建立索引數據庫(會花費一定時間,依賴于用戶系統性能和需建立索引的文件數量)
-U dir??????? 從指定的目錄dir建立索引數據庫
-e dirlist??????? 排除指定的目錄列表,以逗號分隔
-f filesystemlist??????? 排除指定的文件系統列表,以逗號分隔
示例:
slocate -e /usr,/etc -u?????? 從根目錄創建索引,但排除/usr,/etc目錄
slocate mysql
more
分頁顯示一個文件或任何輸出結果.其實more不是用來尋找文件的,但是一般人卻十有八九是在找文件時把它派上用場。例子:
shell>ls /etc |more
shell>more /etc/X11/XF86Config
less (這個命令目前只在 Linux 系統可以使用,其他 UNIX 家族尚無)
less與more相似,它的優點就是可以隨時回頭,最簡單的用【PgUp】鍵就可以向上翻。
shell>ls /etc |less
shell>less /etc/X11/XF86Config
Find命令詳解
find 是高級的尋找文件工具,但也因為它太高級了,復雜到很多人用不熟練。我們盡量只舉簡單的例子。
最簡單的格式如下:find / -name my* -print
這個意思是請它從最底層的主目錄開始找,找出文件名是 my 開頭的文件,把它顯示出來。-print 選項是顯示,您可把它當做固定要加上的項目。
但它還可以用時間來找,例如:
會從 /usr 目錄開始往下找,找最近3分鐘之內存取過的文件:find /usr -amin 3 –print
會從 /usr 目錄開始往下找,找最近5天之內修改過的文件:find /usr -ctime 5 -print
會從 /doc 目錄開始往下找,找屬于用戶jacky 的、文件名開頭是 j的文件:find /doc -user jacky -name 'j*' –print
會從 /doc 目錄開始往下找,找尋文件名是 ja 開頭或者 ma開頭的文件:find /doc \( -name 'ja*' -o- -name 'ma*' \) –print
會從 /doc 目錄開始往下找,找到凡是文件名結尾為 bak的文件,把它刪除掉。-exec 選項是執行的意思,rm 是刪除命令,{ } 表示文件名,“\;”是規定的命令結尾:find /doc -name '*bak' -exec rm {} \;
總結
以上是生活随笔為你收集整理的shell查找命令大全的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java类集-SortedSet接口
- 下一篇: 一些奇葩的元素节点object,vide