Linux基本命令的常用參數大全
每當我們在使用Ubuntu等Linux的時候就會有很多命令需要我們主要,在本篇文章中所有命令按字母順序排列,只介紹最常用參數,相信等你看完之后,就有能力擺平在使用中的相關問題。
此前own也曾發表過幾篇文章,詳細的介紹了幾個命令比ls,sudo,chmod等等。直到前天群里有人問cd命令怎么用..暴寒~~想想也是,一定有很多在win下也沒接觸過命令的吧?于是決定寫點東東 (轉自OwnLinux)
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參數
#p#
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 參數使用,常有奇效
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
【編輯推薦】
- 天外飛仙級別的Linux Shell命令(第二彈)
- 天外飛仙級別的Linux Shell命令
- 你所不知道的Linux svn管理工具命令
- Linux svn管理工具的12個命令實踐
- 三個實用的Linux命令行工具