在linux終端,面對命令不知道怎麼用,或不記得命令的拼寫及引數時,我們需要求助於系統的幫助文件; linux系統內建的幫助文件很詳細,通常能解決我們的問題,我們需要掌握如何正確的去使用它們;
下面介紹這些命令;
簡要說明命令的作用(顯示命令所處的man分類頁面):
$whatis command
正則匹配:
$whatis -w "loca*"
更加詳細的說明文件:
$info command
查詢命令command的說明文件:
使用page up和page down來上下翻頁$man command
eg:man date
在man的幫助手冊中,將幫助文件分為了9個類別,對於有的關鍵字可能存在多個類別中, 我們就需要指定特定的類別來檢視;(一般我們查詢bash命令,歸類在1類中);
man頁面所屬的分類標識(常用的是分類1和分類3)
前面說到使用whatis會顯示命令所在的具體的文件類別,我們學習如何使用它(1)、使用者可以操作的命令或者是可執行檔案
(2)、系統核心可呼叫的函式與工具等
(3)、一些常用的函式與資料庫
(4)、裝置檔案的說明
(5)、設定檔案或者某些檔案的格式
(6)、遊戲
(7)、慣例與協議等。例如linux標準檔案系統、網路協議、ascⅱ,碼等說明內容
(8)、系統管理員可用的管理條令
(9)、與核心有關的檔案
我們看到printf在分類1和分類3中都有;分類1中的頁面是命令操作及可執行檔案的幫助;而3是常用函式庫說明;如果我們想看的是c語言中printf的用法,可以指定檢視分類3的幫助:eg:
$whatis printf
printf (1) - format and print data
printf (1p) - write formatted output
printf (3) - formatted output conversion
printf (3p) - print formatted output
printf [builtins] (1) - bash built-in commands, see bash(1)
查詢關鍵字 根據命令中部分關鍵字來查詢命令,適用於只記住部分命令的場合;$man 3 printf
$man -k keyword
eg:查詢gnome的config配置工具命令:
$man -k gnome config| grep 1
檢視程式的binary檔案所在路徑:
$which command
eg:查詢make程式安裝路徑:
$which make
檢視程式的搜尋路徑:
$whereis command
當系統中安裝了同一軟體的多個版本時,不確定使用的是哪個版本時,這個命令就能派上用場;
檔案管理不外乎檔案或目錄的建立、刪除、查詢、移動,有mkdir/rm/mv
檔案查詢是重點,用find來進行查詢;find的引數豐富,也非常強大;
檢視檔案內容是個大的話題,文字的處理有太多的工具供我們使用,在本章中只是點到即止,後面會有專門的一章來介紹文字的處理工具;
有時候,需要給檔案建立乙個別名,我們需要用到ln,使用這個別名和使用原檔案是相同的效果;
檢視當前目錄下檔案個數:
$find ./ | wc -l
複製目錄:
$cp -r source_dir dest_dir
以上這個命令用到的頻率如此之高,以至於我們需要為它建立乙個快捷命令方式:
在.bashrc 中設定命令別名:
這樣,使用lsl,就可以顯示目錄中的檔案按照修改時間排序;以列表方式顯示;alias lsl='ls -lrt'
alias lm='ls -al|more'
注:.bashrc 在/home/你的使用者名稱/ 資料夾下,以隱藏檔案的方式儲存;可使用 ls -a 檢視;
搜尋檔案或目錄:
$find ./ -name "core*" | xargs file
查詢目標資料夾中是否有obj檔案:
$find ./ -name '*.o'
遞迴當前目錄及子目錄刪除所有.o檔案:
$find ./ -name "*.o" -exec rm {} \;
find是實時查詢,如果需要更快的查詢,可試試locate;locate會為檔案系統建立索引資料庫,如果有檔案更新,需要定期執行更新命令來更新索引庫:
$locate string
尋找包含有string的路徑:
$updatedb
與find不同,locate並不是實時查詢。你需要更新資料庫,以獲得最新的檔案索引資訊。
檢視檔案:cat vi head tail more
顯示時同時顯示行號:
$cat -n
按頁顯示列表內容:
$ls -al | more
只看前10行:
$head - 10 **
顯示檔案第一行:
$head -1 filename
顯示檔案倒數第五行:
$tail -5 filename
檢視兩個檔案間的差別:
$diff file1 file2
動態顯示文字最新資訊:
$tail -f crawler.log
使用egrep查詢檔案內容:
chmod語法egrep '03.1\/co\/ae' tsf_stat_111130.log.012
egrep 'a_lmca777:c' tsf_stat_111130.log.035 > co.out2
chmod語法:chmod [-cfvr] [--help] [--version] mode file...
引數說明
mode : 許可權設定字串,格式如下 :
[ugoa...][[+-=][rwxx]...][,...]
其中:
其他引數說明:
chown語法:
chown [-cfhvr] [--help] [--version] user[:group] file...
引數:
ln cc ccagain :硬連線;刪除乙個,將仍能找到;
ln -s cc ccto :符號鏈結(軟鏈結);刪除源,另乙個無法使用;(後面乙個ccto 為新建的檔案)
ls /proc && echo suss! || echo failed.
能夠提示命名是否執行成功or失敗;
與上述相同效果的是:
if ls /proc; then echo suss; else echo fail; fi
重定向:
ls proc/*.c > list 2> &l 將標準輸出和標準錯誤重定向到同一檔案;
等價的是:
ls proc/*.c &> list
清空檔案:
:> a.txt
重定向:
echo aa >> a.txt
啟動帳號後自動執行的是 檔案為 .profile,然後通過這個檔案可設定自己的環境變數;
安裝的軟體路徑一般需要加入到path中:
快捷鍵:
查詢record.log中包含aaa,但不包含bbb的記錄的總數:ctl-u 刪除游標到行首的所有字元,在某些設定下,刪除全行
ctl-w 刪除當前游標到前邊的最近乙個空格之間的字元
ctl-h backspace,刪除游標前邊的字元
ctl-r 匹配最相近的乙個檔案,然後輸出
cat -v record.log | grep aaa | grep -v bbb | wc -l
Linux檔案管理及目錄操作
乙個檔案系統通常包括3個部分 1 超級塊 包括整個檔案系統的基本資訊,如塊的大小,指向空間inode和資料塊的指標等相關資訊。2 inode塊 檔案索引。他是檔案系統的最基本單元。每個子目錄和檔案只有唯一的乙個inode塊。3 資料塊 具體存放資料的位置區域。超級塊的結構以及對於的操作簡介 超級塊物...
linux檔案及目錄命令管理
大家都知道,熟悉命令操作的開發人員,linux作業系統命令操作效率要高於圖形介面的操作,所以了解和學習linux基本命令操作是學習linux作業系統的首要任務,本文主要介紹以下四個知識點 1.shell基本命令格式 2.檔案及檔案目錄基本操作命令 3.結果重定向 4.歸檔及壓縮命令 一 shell基...
linux命令 檔案及目錄管理
命令 功能ls 檢視目錄下的內容 pwd檢視當前目錄 cd改變當前目錄 touch 建立檔案 rm刪除檔案 mv移動檔案 cp拷貝檔案 cat顯示檔案內容 grep 在檔案中查詢 mkdir 建立目錄 rmdir 刪除目錄 ls命令 檢視當前目錄下的內容 選項 含義 a 展示所有檔案及目錄,包含隱藏...