Linux必學(xué)的重要命令
tar
1. 作用
tar命令是Unix/Linux系統(tǒng)中備份文件的可靠方法,幾乎可以工作于任何環(huán)境中,它的使用權(quán)限是所有用戶(hù)。
2. 格式
tar [主選項(xiàng)+輔選項(xiàng)] 文件或目錄
3.主要參數(shù)
使用該命令時(shí),主選項(xiàng)是必須要有的,它告訴tar要做什么事情,輔選項(xiàng)是輔助使用的,可以選用。
主選項(xiàng):
-c 創(chuàng)建新的檔案文件。如果用戶(hù)想備份一個(gè)目錄或是一些文件,就要選擇這個(gè)選項(xiàng)。
-r 把要存檔的文件追加到檔案文件的未尾。例如用戶(hù)已經(jīng)做好備份文件,又發(fā)現(xiàn)還有一個(gè)目錄或是一些文件忘記備份了,這時(shí)可以使用該選項(xiàng),將忘記的目錄或文件追加到備份文件中。
-t 列出檔案文件的內(nèi)容,查看已經(jīng)備份了哪些文件。
-u 更新文件。就是說(shuō),用新增的文件取代原備份文件,如果在備份文件中找不到要更新的文件,則把它追加到備份文件的最后。
-x 從檔案文件中釋放文件。
輔助選項(xiàng):
-b 該選項(xiàng)是為磁帶機(jī)設(shè)定的,其后跟一數(shù)字,用來(lái)說(shuō)明區(qū)塊的大小,系統(tǒng)預(yù)設(shè)值為20(20×512 bytes)。
-f 使用檔案文件或設(shè)備,這個(gè)選項(xiàng)通常是必選的。
-k 保存已經(jīng)存在的文件。例如把某個(gè)文件還原,在還原的過(guò)程中遇到相同的文件,不會(huì)進(jìn)行覆蓋。
-m 在還原文件時(shí),把所有文件的修改時(shí)間設(shè)定為現(xiàn)在。
-M 創(chuàng)建多卷的檔案文件,以便在幾個(gè)磁盤(pán)中存放。
-v 詳細(xì)報(bào)告tar處理的文件信息。如無(wú)此選項(xiàng),tar不報(bào)告文件信息。
-w 每一步都要求確認(rèn)。
-z 用gzip來(lái)壓縮/解壓縮文件,加上該選項(xiàng)后可以將檔案文件進(jìn)行壓縮,但還原時(shí)也一定要使用該選項(xiàng)進(jìn)行解壓縮。
3. 應(yīng)用說(shuō)明
tar是Tape Archive(磁帶歸檔)的縮寫(xiě),最初設(shè)計(jì)用于將文件打包到磁帶上。如果下載過(guò)Linux的源代碼,或許已經(jīng)碰到過(guò)tar文件。tar是一個(gè)基于文件的命令,它本質(zhì)上是連續(xù)地、首尾相連地堆放文件。使用tar可以打包整個(gè)目錄樹(shù),這使得它特別適合用于備份。歸檔文件可以全部還原,或者從中展開(kāi)單獨(dú)的文件和目錄。備份可以保存到基于文件的設(shè)備或磁帶設(shè)備上。文件可以在還原時(shí)重定向,以便將它們重新放到一個(gè)與最初保存它們的目錄(或系統(tǒng))不同的目錄(或系統(tǒng))。tar與文件系統(tǒng)無(wú)關(guān),可以使用在ext2、ext3、JFS、Reiser和其它文件系統(tǒng)上。它支持各種備份介質(zhì),包括軟盤(pán)、光盤(pán)寫(xiě)入器、可重寫(xiě)的光盤(pán)、JazZip、磁帶、高端磁帶等。Linux中以.tar結(jié)尾的文件都是用tar創(chuàng)建的。它的使用超出了單純的備份,可用來(lái)把許多不同文件放到一起組成一個(gè)易于分開(kāi)的文件。如果使用Linux源代碼安裝程序,一定使用過(guò)tar文件。這是一個(gè)基于文件的命令,它本質(zhì)上是連續(xù)地、首尾相連地堆放文件。tar官方網(wǎng)址是http://www.gnu. org/software/tar/tar.html。
請(qǐng)注意,不要忘了Linux是區(qū)分大小寫(xiě)的。例如,tar命令應(yīng)該總是以小寫(xiě)的形式執(zhí)行。命令行開(kāi)關(guān)可以是大寫(xiě)、小寫(xiě)或大小寫(xiě)的混合。例如,-t和-T執(zhí)行不同的功能。文件或目錄名稱(chēng)可以混合使用大小寫(xiě),而且就像命令和命令行開(kāi)關(guān)一樣是區(qū)分大小寫(xiě)的。
4.應(yīng)用實(shí)例
tar是一個(gè)命令行的工具,沒(méi)有圖形界面。使用Konsole打開(kāi)一個(gè)終端窗口,接下來(lái)是一個(gè)簡(jiǎn)單的備份命令(在/temp目錄中創(chuàng)建一個(gè)back.tar的文件,/usr目錄中所有內(nèi)容都包含在其中。):
$tar cvf - /usr > /temp/back.tar
另外,tar命令支持前面第三講中講過(guò)的crontab命令,可以用crontab工具設(shè)置成基于時(shí)間的有規(guī)律地運(yùn)行。例如,每晚6點(diǎn)把/usr目錄備份到hda—第一個(gè)IDE接口的主驅(qū)動(dòng)器 (總是位于第一個(gè)硬盤(pán))中,只要將下面語(yǔ)句添加到root的crontab中即可:
$00 06 * * * tar cvf /dev/hda1/usrfiles.tar - /usr
一般情況下,以下這些目錄是需要備份的:
◆ /etc 包含所有核心配置文件,其中包括網(wǎng)絡(luò)配置、系統(tǒng)名稱(chēng)、防火墻規(guī)則、用戶(hù)、組,以及其它全局系統(tǒng)項(xiàng)。
◆ /var 包含系統(tǒng)守護(hù)進(jìn)程(服務(wù))所使用的信息,包括DNS配置、DHCP租期、郵件緩沖文件、HTTP服務(wù)器文件、dB2實(shí)例配置等。
◆ /home 包含所有默認(rèn)用戶(hù)的主目錄,包括個(gè)人設(shè)置、已下載的文件和用戶(hù)不希望失去的其它信息。
◆ /root 根(root)用戶(hù)的主目錄。
◆ /opt 是安裝許多非系統(tǒng)文件的地方。IBM軟件就安裝在這里。OpenOffice、JDK和其它軟件在默認(rèn)情況下也安裝在這里。
有些目錄是可以不備份的:
◆ /proc 應(yīng)該永遠(yuǎn)不要備份這個(gè)目錄。它不是一個(gè)真實(shí)的文件系統(tǒng),而是運(yùn)行內(nèi)核和環(huán)境的虛擬化視圖,包括諸如/proc/kcore這樣的文件,這個(gè)文件是整個(gè)運(yùn)行內(nèi)存的虛擬視圖。備份這些文件只是在浪費(fèi)資源。
◆ /dev 包含硬件設(shè)備的文件表示。如果計(jì)劃還原到一個(gè)空白的系統(tǒng),就可以備份/dev。然而,如果計(jì)劃還原到一個(gè)已安裝的Linux 系統(tǒng),那么備份/dev是沒(méi)有必要的。
unzip
1. 作用
unzip命令位于/usr/bin目錄中,它們和MS DOS下的pkzip、pkunzip及MS Windows中的Winzip軟件功能一樣,將文件壓縮成.zip文件,以節(jié)省硬盤(pán)空間,當(dāng)需要的時(shí)候再將壓縮文件用unzip命令解開(kāi)。該命令使用權(quán)限是所有用戶(hù)。
2. 格式
unzip [-cflptuvz][-agCjLMnoqsVX][-P <密碼>][.zip文件][文件][-d <目錄>][-x <文件>]
3. 主要參數(shù)
-c:將解壓縮的結(jié)果顯示到屏幕上,并對(duì)字符做適當(dāng)?shù)霓D(zhuǎn)換。
-f:更新現(xiàn)有的文件。
-l:顯示壓縮文件內(nèi)所包含的文件。
-p:與-c參數(shù)類(lèi)似,會(huì)將解壓縮的結(jié)果顯示到屏幕上,但不會(huì)執(zhí)行任何的轉(zhuǎn)換。
-t:檢查壓縮文件是否正確。
-u:與-f參數(shù)類(lèi)似,但是除了更新現(xiàn)有的文件外,也會(huì)將壓縮文件中的其它文件解壓縮到目錄中。
-v:執(zhí)行是時(shí)顯示詳細(xì)的信息。
-z:僅顯示壓縮文件的備注文字。
-a:對(duì)文本文件進(jìn)行必要的字符轉(zhuǎn)換。
b:不要對(duì)文本文件進(jìn)行字符轉(zhuǎn)換。
-C:壓縮文件中的文件名稱(chēng)區(qū)分大小寫(xiě)。
-j:不處理壓縮文件中原有的目錄路徑。
-L:將壓縮文件中的全部文件名改為小寫(xiě)。
-M:將輸出結(jié)果送到more程序處理。[!--empirenews.page--]
-n:解壓縮時(shí)不要覆蓋原有的文件。
-o:不必先詢(xún)問(wèn)用戶(hù),unzip執(zhí)行后覆蓋原有文件。
-P<密碼>:使用zip的密碼選項(xiàng)。
-q:執(zhí)行時(shí)不顯示任何信息。
-s:將文件名中的空白字符轉(zhuǎn)換為底線字符。
-V:保留VMS的文件版本信息。
-X:解壓縮時(shí)同時(shí)回存文件原來(lái)的UID/GID。
[.zip文件]:指定.zip壓縮文件。
[文件]:指定要處理.zip壓縮文件中的哪些文件。
-d<目錄>:指定文件解壓縮后所要存儲(chǔ)的目錄。
-x<文件>:指定不要處理.zip壓縮文件中的哪些文件。
-Z unzip:-Z等于執(zhí)行zipinfo指令。在Linux中,還提供了一個(gè)叫zipinfo的工具,能夠察看zip壓縮文件的詳細(xì)信息。unzip最新版本是5.50。
gunzip
1.作用
gunzip命令作用是解壓文件,使用權(quán)限是所有用戶(hù)。
2.格式
gunzip [-acfhlLnNqrtvV][-s <壓縮字尾字符串>][文件...]
或者gunzip [-acfhlLnNqrtvV][-s <壓縮字尾字符串>][目錄](méi)
3.主要參數(shù)
-a或--ascii:使用ASCII文字模式。
-c或--stdout或--to-stdout:把解壓后的文件輸出到標(biāo)準(zhǔn)輸出設(shè)備。
-f或-force:強(qiáng)行解開(kāi)壓縮文件,不理會(huì)文件名稱(chēng)或硬連接是否存在,以及該文件是否為符號(hào)連接。
-h或--help:在線幫助。
-l或--list:列出壓縮文件的相關(guān)信息。
-L或--license:顯示版本與版權(quán)信息。
-n或--no-name:解壓縮時(shí),若壓縮文件內(nèi)含有原來(lái)的文件名稱(chēng)及時(shí)間戳記,則將其忽略不予處理。
-N或--name:解壓縮時(shí),若壓縮文件內(nèi)含有原來(lái)的文件名稱(chēng)及時(shí)間戳記,則將其回存到解開(kāi)的文件上。
-q或--quiet:不顯示警告信息。
-r或--recursive:遞歸處理,將指定目錄下的所有文件及子目錄一并處理。
-S<壓縮字尾字符串>或--suffix<壓縮字尾字符串>:更改壓縮字尾字符串。
-t或--test:測(cè)試壓縮文件是否正確無(wú)誤。
-v或--verbose:顯示指令執(zhí)行過(guò)程。
-V或--version:顯示版本信息。
4.說(shuō)明
gunzip是個(gè)使用廣泛的解壓縮程序,它用于解開(kāi)被gzip壓縮過(guò)的文件,這些壓縮文件預(yù)設(shè)最后的擴(kuò)展名為“.gz”。事實(shí)上,gunzip就是gzip的硬連接,因此不論是壓縮或解壓縮,都可通過(guò)gzip指令單獨(dú)完成。gunzip最新版本是1.3.3 。
unarj
1.作用
unarj解壓縮格式為.arj格式的文件,使用權(quán)限是所有用戶(hù)。
2.格式
unarj [eltx][.arj壓縮文件]
3.主要參數(shù)
e:解壓縮.arj文件。
l:顯示壓縮文件內(nèi)所包含的文件。
t:檢查壓縮文件是否正確。
x:解壓縮時(shí)保留原有的路徑。
4.說(shuō)明
帶有.arj擴(kuò)展名的文件是由用于MS DOS和Windows的ARJ實(shí)用程序創(chuàng)建的。因?yàn)锳RJ是一種不能免費(fèi)獲得源代碼的共享件程序,所以在Linux平臺(tái)上幾乎不存在與其功能匹配的工具,要解壓縮.arj文件,就要使用unarj實(shí)用程序。unarj比ARJ慢,能力也不如ARJ,但至少能夠順利地抽取大多數(shù).arj文件。unarj只能將文件抽取到當(dāng)前的工作目錄、列出檔案內(nèi)容,或者測(cè)試檔案。從ARJ Software的站點(diǎn)或攜帶所需Linux發(fā)行版的FTP服務(wù)器上可以下載unarj源碼。另外,unarj通常是基本Linux發(fā)行版的一部分,因此可以在主要發(fā)行版本的CD-ROM上找到它。如果需要可到所有Linux發(fā)行版鏈接的列表下載,ARJ軟件網(wǎng)址為http://www.arjsoft.com,ARJ的下� ... unarj選項(xiàng)不是以減號(hào)(-)開(kāi)頭的。
mtools
1.作用
mtools實(shí)際上是一個(gè)命令集合,是DOS文件系統(tǒng)的工具程序,它可以模擬許多DOS命令,使用起來(lái)非常方便。使用權(quán)限是所有用戶(hù)。Linux系統(tǒng)提供了一組稱(chēng)為mtools的可移植工具,可以讓用戶(hù)輕松地從標(biāo)準(zhǔn)的DOS軟盤(pán)上讀、寫(xiě)文件和目錄。它們對(duì)DOS和Linux環(huán)境之間交換文件非常有用。mtools的使用非常簡(jiǎn)單,如果想把軟盤(pán)里所有的文件都拷貝到硬盤(pán)上,那么就可以執(zhí)行以下命令:
mcopy a:*.*
也就是說(shuō),只需要在相應(yīng)的DOS命令之前加上一個(gè)字母“m”,就可以完成對(duì)應(yīng)的功能了。一般Linux發(fā)行版本中都有這個(gè)軟件,可以使用下面命令檢查一下。
rpm -qa|grep mtools
如果沒(méi)有安裝,也沒(méi)有關(guān)系,可以從網(wǎng)上下載(http://mtools.linux.lu/)一個(gè)最新版本來(lái)安裝。目前可供下載的最新mtools版本是3.9.9,下載鏈接為http://mtools.linux.lu/mtools-3. ... 略睪蟀滄耙幌錄純傘�
2.包括的命令
mcd 目錄名:改變MS DOS下的目錄。
mcopy 源文件 目標(biāo)文件:在MS DOS和Unix之間復(fù)制文件。
mdel 文件名:刪除MS DOS下的文件。
mdir 目錄名:顯示MS DOS下的目錄。
mformat 驅(qū)動(dòng)器號(hào):在低級(jí)格式化的軟盤(pán)上創(chuàng)建MS DOS文件系統(tǒng)。
rnlabel 驅(qū)動(dòng)器號(hào):產(chǎn)生MS DOS下的卷標(biāo)
mmd 目錄名:建立MS DOS下的目錄。
mrd 目錄名:刪除MS DOS下的目錄。
mren 源文件 目標(biāo)文件:重新命名已存在的MS DOS文件。
mtype 文件名:顯示MS DOS文件的內(nèi)容。
請(qǐng)注意,這些命令和對(duì)應(yīng)的MS DOS命令非常相似。在mtools命令中,“/”和“\”是可以混用的。因?yàn)槲募斜淼氖荄OS系統(tǒng)下的文檔,對(duì)大小寫(xiě)并不敏感,所以“CDE”和“cde”在這里是一樣的。
3.應(yīng)用實(shí)例
(1)如果把軟盤(pán)進(jìn)行快速格式化,可以使用命令mformat:
mformat A:
mtools當(dāng)初發(fā)展的目的是用來(lái)處理DOS文件系統(tǒng)的,所以只能用在FAT文件格式的分區(qū)上。需要注意的是,如果用mount命令來(lái)掛載了FAT16/32分區(qū),那么就不能使用mtools的指令來(lái)處理這些分區(qū)上的文件。這是因?yàn)橐坏〧AT16/32分區(qū)掛到了Linux文件目錄下,Linux就會(huì)將其視為文件系統(tǒng)本身的一部分,這時(shí)如果要對(duì)其操作就必須使用Linux本身所附帶的指令集。
(2)將DOS盤(pán)上的文件htca.c復(fù)制到當(dāng)前目錄下,并用ls命令進(jìn)行驗(yàn)證。
$ mcopy a:\htca.c
$ ls -l htca.c
[!--empirenews.page--]-rw-r- -r- - 1 xxq xxq 27136 Jan 1 01:80 htca.c
man
1.作用
man命令用來(lái)提供在線幫助,使用權(quán)限是所有用戶(hù)。在Linux系統(tǒng)中存儲(chǔ)著一部聯(lián)機(jī)使用的手冊(cè),以供用戶(hù)在終端上查找。使用man命令可以調(diào)閱其中的幫助信息,非常方便和實(shí)用。
2.格式
man 命令名稱(chēng)
man [-acdfhkKtwW] [-m system] [-p string] [-C config_file] [-M path] [-P pager] [-S section_list] [section] name ...
1. 參數(shù)
-C config_file:指定設(shè)定文件man.conf,缺省值是/etc/man.conf。
-M path:指定了聯(lián)機(jī)手冊(cè)的搜尋路徑, 如果沒(méi)有指定則使用環(huán)境變數(shù)MANPATH的設(shè)定;如果沒(méi)有使用MANPATH, 則會(huì)使用/usr/lib/man.conf內(nèi)的設(shè)定;如果MANPATH是空字串,則表示使用缺省值。
-P pager:指定使用何種pager.man會(huì)優(yōu)先使用此選項(xiàng)設(shè)定,然后是依環(huán)境變數(shù)MANPAGER設(shè)定,然后是環(huán)境變數(shù)PAGER;man缺省使用/usr/bin/less -is。
-S section_list man:所搜尋的章節(jié)列表(以冒號(hào)分隔),此選項(xiàng)會(huì)覆蓋環(huán)境變數(shù)MANSECT的設(shè)定。
-a man:缺省情況是在顯示第一個(gè)找到的手冊(cè)之后,就會(huì)停止搜尋,使用此選項(xiàng)會(huì)強(qiáng)迫man繼續(xù)顯示所有符合name的聯(lián)機(jī)手冊(cè)。
-c:即使有最新的cat page,也繼續(xù)對(duì)聯(lián)機(jī)手冊(cè)重新作排版,本選項(xiàng)在屏幕的行列數(shù)改變時(shí)或已排版的聯(lián)機(jī)手冊(cè)損壞時(shí)特別有意義。
-d:不要真的顯示聯(lián)機(jī)手冊(cè),只顯示除錯(cuò)訊息。
-D:同時(shí)顯示聯(lián)機(jī)手冊(cè)與除錯(cuò)訊息。
-h:顯示求助訊息然后結(jié)束程式 。
-K:對(duì)所有的聯(lián)機(jī)手冊(cè)搜尋所指定的字串。請(qǐng)注意,本功能回應(yīng)速度可能很慢,如果指定section(區(qū)域)會(huì)對(duì)速度有幫助。
-m system:依所指定的system名稱(chēng)而指定另一組的聯(lián)機(jī)手冊(cè)。
man:是manual(手冊(cè))的縮寫(xiě)。在輸入命令有困難時(shí),可以立刻得到這個(gè)文檔。例如, 如果使用ps命令時(shí)遇到困難,可以輸入man ps得到幫助信息,此時(shí)會(huì)顯示出ps的手冊(cè)頁(yè)(man page)。
由于手冊(cè)頁(yè)man page是用less程序來(lái)看的(可以方便地使屏幕上翻和下翻), 所以在man page里可以使用less的所有選項(xiàng)。
less中比較重要的功能鍵有:
[q] 退出;
[Enter] 一行行地下翻;
[Space] 一頁(yè)頁(yè)地下翻;
上翻一頁(yè);
[/] 后跟一個(gè)字符串和[Enter]來(lái)查找字符串;
[n] 發(fā)現(xiàn)上一次查找的下一個(gè)匹配。
unencode
1.作用
unencode命令可以把一個(gè)二進(jìn)制文件表編碼為一個(gè)文本文件,使用權(quán)限是所有用戶(hù)。
2.格式
uuencode [-hv] [源文件] 目標(biāo)文件
3.主要參數(shù)
-h:列出指令使用格式(help) 。
-v:列出版本信息。
4.應(yīng)用說(shuō)明
uuencode指令可以將二進(jìn)制文件轉(zhuǎn)化成可使用電子郵件發(fā)送的ASCII編碼形式。uuencode編碼后的資料都以 begin開(kāi)始,以end作為結(jié)束,且通常其中的每一行的開(kāi)始均為“M”,中間部分是編碼過(guò)的文件,編碼后的文件比源文件要大一些。
uudecode
1.作用
uudecode命令用來(lái)將uuencode編碼后的檔案還原,uudecode只會(huì)將begin與end標(biāo)記之間的編碼資料還原,程序會(huì)跳過(guò)標(biāo)記以外的資料。它的使用權(quán)限為所有用戶(hù)。
2.格式
uuencode [-hv] [file1 ...]
3.主要參數(shù)
-h:列出指令使用格式(help)。
-v:列出版本信息。