Linux經常使用命令: find 和 ping

find 命令

$ find <指定目錄> <指定條件> <指定動做>

- <指定目錄>: 所要搜索的目錄及其全部子目錄
- <指定條件>: 所要搜索的文件的特徵 (eg: -name -type)
- <指定動做>: 對搜索結果進行特定的處理 (eg: -ls, -print,)

locate 命令

locate 其實至關於 "find -name",可是要比後者快得多,緣由在於它不搜索具體目錄,而是搜索一個數據庫(/var/lib/locatedb),這個數據庫中含有本地全部文件信息。Linux系統自動建立這個數據庫,而且天天自動更新一次,因此使用locate命令查不到最新變更過的文件。shell

爲了不這種狀況,能夠在使用locate以前,先使用updatedb命令,手動更新數據庫。數據庫

$ locate /etc/sh
搜索etc目錄下全部以sh開頭的文件。

$ locate ~/m
搜索用戶目錄下,全部以 m 開頭的文件。

$ locate -i ~/m
搜索用戶目錄下,全部以 m 開頭的文件,同時忽略大小寫。

whereis 命令

whereis 命令只能用於程序名的搜索,並且只搜索二進制文件(參數-b)、man說明文件(參數-m)和源代碼文件(參數-s)。若是省略參數,則返回全部信息。vim

ping 多個 ip

假設有一個日誌文件,裏面是每行的記錄以下:172.0.0.1 ,也就是每行都有一個ip,例如在一個分佈式系統裏面,有不少機器的ip,那麼咱們要知道哪些機器宕機了,那麼只須要ping一下這個ip便可,可是咱們不能一個一個的ping啊,Linux 有沒有什麼命令能夠解決。bash

Linux 自帶的 ping 命令自己不能夠 ping 多個 ip,但能夠用 shell 來實現同時 ping 多個 ip。分佈式

  1. 建一個空的輸出文件 日誌

    touch /output.txtcode

  2. 新建一個腳本。ip

    vim ping.shdate

  3. 腳本內容搜索

    #!/bin/bash
    A = 'cat /ip.txt'
    for B in $A 
    do
    ping -c 3 $B >>/output
    done
    wq
  4. 執行腳本

    ./ ping.sh

  5. 查看結果

    cat output.txt

相關文章
相關標籤/搜索