$ find <指定目錄> <指定條件> <指定動做> - <指定目錄>: 所要搜索的目錄及其全部子目錄 - <指定條件>: 所要搜索的文件的特徵 (eg: -name -type) - <指定動做>: 對搜索結果進行特定的處理 (eg: -ls, -print,)
locate 其實至關於 "find -name",可是要比後者快得多,緣由在於它不搜索具體目錄,而是搜索一個數據庫(/var/lib/locatedb),這個數據庫中含有本地全部文件信息。Linux系統自動建立這個數據庫,而且天天自動更新一次,因此使用locate命令查不到最新變更過的文件。shell
爲了不這種狀況,能夠在使用locate以前,先使用updatedb命令,手動更新數據庫。數據庫
$ locate /etc/sh 搜索etc目錄下全部以sh開頭的文件。 $ locate ~/m 搜索用戶目錄下,全部以 m 開頭的文件。 $ locate -i ~/m 搜索用戶目錄下,全部以 m 開頭的文件,同時忽略大小寫。
whereis 命令只能用於程序名的搜索,並且只搜索二進制文件(參數-b)、man說明文件(參數-m)和源代碼文件(參數-s)。若是省略參數,則返回全部信息。vim
假設有一個日誌文件,裏面是每行的記錄以下:172.0.0.1 ,也就是每行都有一個ip,例如在一個分佈式系統裏面,有不少機器的ip,那麼咱們要知道哪些機器宕機了,那麼只須要ping一下這個ip便可,可是咱們不能一個一個的ping啊,Linux 有沒有什麼命令能夠解決。bash
Linux 自帶的 ping 命令自己不能夠 ping 多個 ip,但能夠用 shell 來實現同時 ping 多個 ip。分佈式
建一個空的輸出文件 日誌
touch /output.txtcode
新建一個腳本。ip
vim ping.shdate
腳本內容搜索
#!/bin/bash A = 'cat /ip.txt' for B in $A do ping -c 3 $B >>/output done wq
執行腳本
./ ping.sh
查看結果
cat output.txt