從網上搜尋的,這三個常用命令可能有很多重複的,有時間整理下。不過這樣也好就當加強記憶了
apt-get:
debian系系統的軟體包管理程式(其圖形化前端就是大名鼎鼎的新立得了),會自動幫你搞定依賴關係
最常用參數:
update —-與你的軟體源(在/etc/apt/sources.list中列出)更新軟體包列表,換源後需要執行
upgrade —-根據update得到的源軟體庫與本地已經安裝的對比,(如果需要升級就)全部升級
install —-安裝軟體包(可以使用tab補全軟體包的名字,比較方便)
remove —-卸載軟體包
purge —-卸載軟體包,同時刪除該軟體的設定檔
source —-從源裡下載軟體包的源碼到目前的目錄(執行此命令的目錄)並解壓(除非指定–download-only參數)
該地址由/etc/apt/sources.list中的 deb-src 行指定
check —-用來(自動)修複(已裝)軟體包之間的依賴關係
clean —-清除/var/cache/apt/archives/包括其子目錄partial/下的所有軟體包緩衝
autoclean —-比clean常用,我的理解是刪除低版本的緩衝而保留高版本的(或者包括非當前源裡的軟體包?)
aptitude:
此為PT同學補充,他的說法是aptitude比apt-get少個橫線,tab補全比較容易(=.=)~大概神牛都比較懶吧
不得不提下蛋蛋童鞋以前說過的ubuntu彩蛋:) <僅限於UBUNTU 8.04>
man apt —-最後會看到 “本apt有著超級牛力” or “this APT has a super-cow power”
man aptitude —-會看到 “這個aptitude沒有超級牛力”
看看aptitude的參數,你就會明白為什麼aptitude會標稱”進階軟體包管理程式”了
最常用參數:
search —-在(你的源的)所有軟體包列表中搜尋該軟體,search的運算式可以很複雜,具體看man
其餘常用參數同apt-get
cat:
把(一個或多個)檔案內容(串連)顯示到標準輸出
當文字檔很小,而且你只是想看下,並不打算用gedit或者vim之類編輯器編輯的時候,可以cat一下,我是用來配合grep使用
cd:
切換當前工作目錄
不同於其他命令,這是一個shell內建命令,所以沒有手冊頁可看…夠基礎,所以才會出現在本篇文章中(=.=)鬱悶
最常用參數:
. —-切換到目前的目錄(貌似沒有什麼意義)(.這個目錄可以通過ls -a看到)
.. —-切換到上層目錄
~ —-回到家目錄(/home/你的登入名稱/)
chmod:
改變檔案的許可權位
linux檔案系統的許可權位有兩種表示方法,要是詳細說下,非得累死老鼠不可=.=,所以只說8進位數表示:)
簡要介紹下:ls -l可以顯示出檔案的許可權,比如(-rwxr-xr–),代表了三種使用者的許可權
第一個rwx,代表檔案所有者的許可權,即(讀,寫,執行),用二進位表示為111,代表八進位中的4+2+1=7
第二個r-x,代表檔案所有者同一使用者組其他使用者的許可權,即(讀, ,執行),用二進位表示為101,代表八進位中的5=4+0+1
第三個r–,代表其他使用者的許可權,即(讀, , ),二進位表示為100,代表八進位的4=4+0+0
所以這個檔案的許可權位為754
這也就是chmod的用法,例如chmod 751 myfile #將該檔案許可權設定為rwxr-x–x
最常用參數:
-v —-列出當前正在執行的步驟
-R —-遞迴式,即改變非空目錄下的一切為指定許可權
cp:
拷貝檔案和目錄
最常用參數:
-b —-為每個已經存在的目的檔案作個備份
-d —-遇到軟連結時不拷貝軟連結所指向的檔案;拷貝時保留links屬性(連結數)
-p —-保留檔案的存取權限,所有者,和時間戳記
-R和-r —-遞迴式拷貝(cp過程遇到非空目錄才有效),即拷貝目錄,子目錄,子目錄的子目錄…..
-a —-作用同-dpR
-s —-並不真的做拷貝,而只是為每個檔案作軟連結(符號連結)
-u —-同下面 mv 的-u參數
head, tail
就像這兩個名字,一個顯示檔案頭部,一個顯示尾部
最常用參數:
-n —-指定輸出的(頭部或尾部)行數, 當沒有此參數時,預設顯示10行
ifconfig:
配置網卡
最常用參數:
沒有參數 —-列出當前活動網卡的狀態
-a —-列出所有網卡的狀態
interface —-指定網卡名稱比如eth0
up —-喚醒該網卡
down —-關閉該網卡
arp,mtu,netmask addr,…等等很多參數 =.=
ln:
為檔案建立連結
linux的連結分為兩種:永久連結和軟連結,ln預設建立永久連結(hard link),兩種的區別請自己搜尋:)
最常用參數:
-s —-建立軟連結(符號連結,可以理解為win下的捷徑)
-f —-如果要建立的連結名已經存在,則刪除之
ls:
顯示目錄內容
最常用參數:
-a —-顯示指定目錄所有檔案,包括檔案名稱以 . 開頭的檔案
-l —-顯示檔案詳細資料(包括檔案類型,許可權,修改時間,訪問時間,大小,檔案名稱…)
-h —-將檔案大小以方便閱讀的形式表示出來,配合 -l 參數使用,常有奇效
man:
閱讀參考手冊of~
題外話:HX說這是linux最最難學的命令,因為man你學好了,就沒有什麼命令能難倒你了,=.=無敵了
man可以查的不僅僅是命令額(當然,因為man是無敵的嘛/ch)
最常用參數:
man 阿拉伯數字
阿拉伯數字1: 可執行程式(一般為使用者安裝的程式,如果提供了manpages的話)和shell命令
阿拉伯數字2: 系統調用(例如 open調用,socket調用,chmod調用 等等等等),先裝manpages-dev先
阿拉伯數字3: 庫函數調用(例如 man 3 printf),先裝manpages-dev先
…….
當你執行man ls 時, 和 man 1 ls結果是一樣的,因為ls在man手冊中只有一個入口
當你想看chmod調用的手冊頁時,就要特別指定 man 2 chmod了~~因為chmod不止有一個入口
在man的時候,可以通過j,k上下移動(和vi中類似),可以通過/查詢,通過n,N尋找下個,上個匹配(和vi類似)
q退出(也和vi類似….)
比較有意思的一點:
由於man 本身是個命令,所以,連man都是可以man的 =.=
mkdir:
建立一個目錄
最常用參數:
-p —-如果給出的路徑中父目錄不存在,則同時建立父目錄
mount:
掛載檔案系統(可理解為掛載一個分區)
最常用參數:
-t —-指定檔案系統類型,比如iso9660(掛載iso鏡像為光碟片,相當於虛擬光碟機),ntfs,ext3,rfs等等
-l —-列出所有已經掛載的檔案系統,支援卷標
-a —-掛載fstab中記錄的所有分區
-n —-掛載的時候不寫入/etc/mtab
-o —-相當常用的一個參數,指定掛載檔案系統的”選項”,比如noatime,用來掛載BT專用分區很合適
mv:
移動或者更名檔案,取決於目的目錄是否為目前的目錄
最常用參數:
-b —-為每個已經存在的目的檔案做個備份(防止覆蓋)
-f —-不提示是否覆蓋已經存在的目的檔案
-i —-與-f參數相反
-u —-僅當源檔案比目的檔案更新或者目的檔案不存在時候才移動
-v —-顯示移動檔案的進度(個人總是推薦使用此參數,明白你在做什麼)
ps,top:
列出當前命令的執行狀態,ps為靜態,top為動態(top時’q’退出)
ps:這個命令本人更常用些,推薦給你看看=.=
最常用參數(ps多用參數集合,而不是單個參數,並且配合grep使用)
-ef —-以標準文法列出當前所有進程狀態,例如ps -ef | grep eva #列出eva的進程狀態
aux —-以BSD文法列出………………………………..
-ejH —-列出進程樹
-eLf —-同時列出線程狀態
rm, rmdir:
rm:刪除檔案或目錄,rmdir:刪除一個空目錄(此命令個人認為沒啥用,可以用rm -r替代)
rm最常用參數:
-f —-不提示不存在的檔案,直接跳過
-i —-每個刪除動作都提示 (=.= 刪除多的話豈不是煩死)
-I —-刪除多個檔案(多於3個時)或者遞迴式刪除(對於非空目錄)提示一次
-r和-R —-遞迴式刪除該目錄下的一切東東
-v —-顯示每個檔案的刪除動作(個人總是推薦使用此參數,明白你在做什麼)
sudo,su:
這大概是裝好系統之後第一個要用的命令吧?
sudo我們主要用來臨時提升許可權,主要用以管理員(超級使用者)的許可權來運行命令,當需要修改當前登入使用者力所不能及的檔案/目錄
時需要用sudo,或者su -c,當然sudo和su的作用範圍不僅僅如此
可以使用visudo來編輯/etc/sudoers檔案來修改sudo更詳細的動作(比如記住密碼的時間戳記長度),請謹慎修改!
sh:
在終端解釋執行
類似於’./’的形式,但PT給了不同點: ‘./’僅僅對目前的目錄下有執行許可權的程式才有效,’sh’則不管這套
想想也是哈, ‘./’僅僅是給出了一個檔案的路徑(在目前的目錄下)而已, 但這個檔案能不能執行就不好說了
所以用sh總是正確的
shutdown:
關閉系統,如果停留在TTY,請改用halt, poweroff等命令
常用參數:
+m —-指定關機延遲的分鐘
-c —-取消一個等待關機的請求(關掉運行此命令的終端也可:))
now —-立即關機
hh:mm —-手動指定時間(以24小時計)
tar:
打包/解包
這個tar不多說了吧..到處都是tar.gz,tar.bz2的東東
和ps命令一樣,tar一般不用單個參數,而是多個參數的組合,記住參數x是解壓(extract),c是建立包(creat)即可
最常用參數:
-xvf —-詳細列出解包的步驟
-cvf —-詳細列出打包的步驟
-j —-用來說明這是個tar.bz2包,例如tar -xjvf myfile.tar.bz2
-t —-列出包中的檔案清單
—–打包時常追加的參數:
-r —-追加到壓縮包中
-u —-只把比包中更新的檔案追加進去
-h —-不把符號連結添加到包中,而是添加此符號連結指向的檔案
附加說明:tar是個太強大的東東,常用的操作也就是打包解包,進階功能還是參閱man =.=
touch:
改變檔案時間戳記,預設包括修改時間和建立時間,預設修改為目前時間,預設如果檔案不存在就建立(=.=是不是很羅嗦)