耳朵(七):linux——檔案查詢與編輯器
Linux下查詢檔案命令:which,whereis,locate,find which命令:which是通過 PATH環境變數到該路徑內查詢可執行檔案,所以基 本的功能是尋找可執行檔案 -a :將所有由 PATH 目錄中可以找到的指令均列出,而不止第一個 whereis : whereis [-bmsu] 檔案或者目錄名稱 -b : 只找二進位制檔案 -m: 只找在說明檔案manual路徑下的檔案 -s : 只找source原始檔 -u : 沒有說明文件的檔案 和find相比,whereis查詢的速度非常快,這是因為linux系統會 將 系統內的所有檔案都記錄在一個數據庫檔案中,當使用whereis 和下面即將介紹的locate時,會從資料庫中查詢資料,而不是像 find命令那樣,通 過遍歷硬碟來查詢,效率自然會很高。 但是該資料庫檔案並不是實時更新,預設情況下時每天更新一次, 因此,我們在用whereis和locate 查詢檔案時,有時會找到已經被 刪除的資料,或者剛剛建立檔案,卻無法查詢到,原因就是因為數 據庫檔案沒有被更新。 locate: locate [檔名或目錄] -i :忽略大小寫的差異; - -r :後面可接正則表示法的顯示方式 locate 尋找的資料是由『已建立的資料庫 /var/lib/mlocate/』 裡面的資料所搜尋到的,所以不用直接在去硬碟中存取資料,因此 很快。 find: find 路徑 引數 -atime n :將n24小時記憶體取過的的檔案列出來 -ctime n :將n
上述的-exec還可以用xargs -exec 1.引數是一個一個傳遞的,傳遞一個引數執行一次rm 2.檔名有空格等特殊字元也能處理 -xargs 1.一次將引數傳給命令,可以使用-n控制引數個數 2.處理特殊檔名需要採用如下方式: find . -name “*.txt” print0 |xargs -0 rm {} xargs是給命令傳遞引數的一個過濾器,也是組合多個命令的一個 工具。它把一個數據流分割為一些足 夠小的塊,以方便過濾器和命 令進行處理。 1、查詢/etc 目錄下屬主為 root,且屬組為 mail 的所有檔案或目錄; 2、查詢/etc目錄下不屬於root, bin或hadoop的所有檔案或目錄;
vi、vim編輯器 Vi是Visual interface的簡稱。 Vim是Vi的增強版,即Vi Improved。 模式:工作模式、命令模式、輸入模式、末行模式 Vim擁有5種編輯模式:命令模式、輸入模式、末行模式、視覺化 模式、查詢模式。 1).命令模式(其它模式→ESC) 2).輸入模式(命令模式→a、i、o、A、I、O) 3).末行模式(命令模式→:) 4).視覺化模式(命令模式→v) 5).查詢模式(命令模式→?、/)
vi/輸入模式常用命令 dd 刪除(剪下)游標所在整行 10dd 刪除(剪下)從游標處開始的10行 yy 複製游標所在整行 10yy 複製從游標處開始的10行 p 刪除(dd)或複製(yy)過的資料貼上到游標後面 n 顯示搜尋命令定位到的下一個字串 N 顯示搜尋命令定位到的上一個字串 u 撤銷上一步的操作 ctrl+f 向檔案尾翻一屏 ctrl+b 向檔案首翻一屏 a 在當前字元後新增文字 i 在當前字元前新增文字 o 在當前後面插入一空行 h、j、k、l 左、下、上、右 shirf + $ 行尾 shift + ^ 行首 shift + G 尾部 gg 首部
vi/末行模式常用命令 :w 儲存 :q 退出 :q! 強制退出 :wq! 強制儲存退出 :set nu 顯示行號 :set nonu 不顯示行號 ?/one/two 當前游標所在行的第一個one替換成two ?/one/two/g 當前游標所在行的所有one替換成two :%s/one/two/g 將全文中的所有one替換成two ?str 在文字中從下至上搜索該字串 /str 在文字中從上至下搜尋該字串