不卡AV在线|网页在线观看无码高清|亚洲国产亚洲国产|国产伦精品一区二区三区免费视频

學(xué)習(xí)啦 > 學(xué)習(xí)電腦 > 操作系統(tǒng) > Linux教程 > Linux常用系統(tǒng)及網(wǎng)絡(luò)命令大全

Linux常用系統(tǒng)及網(wǎng)絡(luò)命令大全

時(shí)間: 春健736 分享

Linux常用系統(tǒng)及網(wǎng)絡(luò)命令大全

  你打開(kāi)瀏覽器,自由地游弋于浩如煙海的互聯(lián)網(wǎng)世界之時(shí),是否也沉迷于下載各種實(shí)用軟件?其中也許有很大一部分就是網(wǎng)絡(luò)工具吧!那你知道Linux常用系統(tǒng)及網(wǎng)絡(luò)命令嗎?下面大家跟著學(xué)習(xí)啦小編一起來(lái)學(xué)習(xí)一下吧。

  Linux常用系統(tǒng)及網(wǎng)絡(luò)命令

  計(jì)算機(jī)網(wǎng)絡(luò)的主要優(yōu)點(diǎn)是能夠?qū)崿F(xiàn)資源和信息的共享,并且用戶可以遠(yuǎn)程訪問(wèn)信息。Linux提供了一組強(qiáng)有力的網(wǎng)絡(luò)命令來(lái)為用戶服務(wù),這些工具能夠幫助用戶登錄到遠(yuǎn)程計(jì)算機(jī)上、傳輸文件和執(zhí)行遠(yuǎn)程命令等。

  本章介紹下列幾個(gè)常用的有關(guān)網(wǎng)絡(luò)操作的命令:

  ftp 傳輸文件

  telnet 登錄到遠(yuǎn)程計(jì)算機(jī)上

  r - 使用各種遠(yuǎn)程命令

  netstat 查看網(wǎng)絡(luò)的狀況

  nslookup 查詢域名和IP地址的對(duì)應(yīng)

  finger 查詢某個(gè)使用者的信息

  ping 查詢某個(gè)機(jī)器是否在工作

  使用ftp命令進(jìn)行遠(yuǎn)程文件傳輸

  ftp命令是標(biāo)準(zhǔn)的文件傳輸協(xié)議的用戶接口。ftp是在TCP/IP網(wǎng)絡(luò)上的計(jì)算機(jī)之間傳輸文件的簡(jiǎn)單有效的方法。它允許用戶傳輸ASCII文件和二進(jìn)制文件。

  在ftp會(huì)話過(guò)程中,用戶可以通過(guò)使用ftp客戶程序連接到另一臺(tái)計(jì)算機(jī)上。從此,用戶可以在目錄中上下移動(dòng)、列出目錄內(nèi)容、把文件從遠(yuǎn)程機(jī)拷貝到本地機(jī)上、把文件從本地機(jī)傳輸?shù)竭h(yuǎn)程系統(tǒng)中。

  需要注意的是,如果用戶沒(méi)有那個(gè)文件的存取權(quán)限,就不能從遠(yuǎn)程系統(tǒng)中獲得文件或向遠(yuǎn)程系統(tǒng)傳輸文件。 為了使用ftp來(lái)傳輸文件,用戶必須知道遠(yuǎn)程計(jì)算機(jī)上的合法用戶名和口令。這個(gè)用戶名/口令的組合用來(lái)確認(rèn)ftp

  會(huì)話,并用來(lái)確定用戶對(duì)要傳輸?shù)奈募梢赃M(jìn)行什么樣的訪問(wèn)。另外,用戶顯然需要知道對(duì)其進(jìn)行ftp 會(huì)話的計(jì)算機(jī)的名字或IP地址。

  Ftp命令的功能是在本地機(jī)和遠(yuǎn)程機(jī)之間傳送文件。該命令的一般格式如下:

  $ ftp 主機(jī)名/IP

  其中“主機(jī)名/IP”是所要連接的遠(yuǎn)程機(jī)的主機(jī)名或IP地址。在命令行中,主機(jī)名屬于選項(xiàng),如果指定主機(jī)名,ftp將試圖與遠(yuǎn)程機(jī)的ftp服務(wù)程序進(jìn)行連接;如果沒(méi)有指定主機(jī)名,ftp將給出提示符,等待用戶輸入命令:

  $ ftp ftp > 此時(shí)在ftp>提示符后面輸入open命令加主機(jī)名或IP地址,將試圖連接指定的主機(jī)。 不管使用哪一種方法,如果連接成功,需要在遠(yuǎn)程機(jī)上登錄。用戶如果在遠(yuǎn)程機(jī)上有帳號(hào),就可以通過(guò)ftp使用這一帳號(hào)并需要提供口令。

  在遠(yuǎn)程機(jī)上的用戶帳號(hào)的讀寫(xiě)權(quán)限決定該用戶在遠(yuǎn)程機(jī)上能下載什么文件和將上載文件放到哪個(gè)目錄中。如果沒(méi)有遠(yuǎn)程機(jī)的專用登錄帳號(hào),許多ftp站點(diǎn)設(shè)有可以使用的特殊帳號(hào)。這個(gè)帳號(hào)的登錄名為anonymous(也稱為匿名ftp),當(dāng)使用這一帳號(hào)時(shí),要求輸入email地址作為口令。

  如果遠(yuǎn)程系統(tǒng)提供匿名ftp服務(wù),用戶使用這項(xiàng)服務(wù)可以登錄到特殊的,供公開(kāi)使用的目錄。

  一般專門(mén)提供兩個(gè)目錄:pub目錄和incoming目錄。pub目錄包含該站點(diǎn)供公眾使用的所有文件,incoming目錄存放上載到該站點(diǎn)的文件。

  一旦用戶使用ftp在遠(yuǎn)程站點(diǎn)上登錄成功,將得到“ftp>”提示符?,F(xiàn)在可以自由使用ftp提供的命令,可以用 help命令取得可供使用的命令清單,也可以在

  help命令后面指定具體的命令名稱,獲得這條命令的說(shuō)明。

  最常用的命令有:

  ls 列出遠(yuǎn)程機(jī)的當(dāng)前目錄

  cd 在遠(yuǎn)程機(jī)上改變工作目錄

  lcd 在本地機(jī)上改變工作目錄

  ascii 設(shè)置文件傳輸方式為ASCII模式

  binary 設(shè)置文件傳輸方式為二進(jìn)制模式

  close終止當(dāng)前的ftp會(huì)話

  hash 每次傳輸完數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù)后就顯示一個(gè)#號(hào)

  get(mget) 從遠(yuǎn)程機(jī)傳送指定文件到本地機(jī)

  put(mput) 從本地機(jī)傳送指定文件到遠(yuǎn)程機(jī)

  open 連接遠(yuǎn)程ftp站點(diǎn)

  quit斷開(kāi)與遠(yuǎn)程機(jī)的連接并退出ftp

  ? 顯示本地幫助信息

  ! 轉(zhuǎn)到Shell中

  下面簡(jiǎn)單將ftp常用命令作一簡(jiǎn)介。

  啟動(dòng)ftp會(huì)話 open命令用于打開(kāi)一個(gè)與遠(yuǎn)程主機(jī)的會(huì)話。該命令的一般格式是: open 主機(jī)名/IP 如果在ftp 會(huì)話期間要與一個(gè)以上的站點(diǎn)連接,通常只用不帶參數(shù)的ftp命令。如果在會(huì)話期間只想與一臺(tái)計(jì)算機(jī)連接,那么在命令行上指定遠(yuǎn)程主機(jī)名或IP地址作為 ftp命令的參數(shù)。

  終止ftp會(huì)話 close、disconnect、quit和bye命令用于終止與遠(yuǎn)程機(jī)的會(huì)話。close和disronnect命令關(guān)閉與遠(yuǎn)程機(jī)的連接,但是使用戶留在本地計(jì)算機(jī)的ftp程序中。quit和bye命令都關(guān)閉用戶與遠(yuǎn)程機(jī)的連接,然后退出用戶機(jī)上的ftp

  程序。 改變目錄 “cd [目錄](méi)”命令用于在ftp會(huì)話期間改變遠(yuǎn)程機(jī)上的目錄,lcd命令改變本地目錄,使用戶能指定查找或放置本地文件的位置。

  遠(yuǎn)程目錄列表 ls命令列出遠(yuǎn)程目錄的內(nèi)容,就像使用一個(gè)交互shell中的ls命令一樣。ls命令的一般格式是: ls [目錄](méi) [本地文件]

  如果指定了目錄作為參數(shù),那么ls就列出該目錄的內(nèi)容。如果給出一個(gè)本地文件的名字,那么這個(gè)目錄列表被放入本地機(jī)上您指定的這個(gè)文件中。 從遠(yuǎn)程系統(tǒng)獲取文件

  get和mget命令用于從遠(yuǎn)程機(jī)上獲取文件。get命令的一般格式為: get 文件名 您還可以給出本地文件名,這個(gè)文件名是這個(gè)要獲取的文件在您的本地機(jī)上創(chuàng)建時(shí)的文件名。如果您不給出一個(gè)本地文件名,那么就使用遠(yuǎn)程文件原來(lái)的名字。

  mget命令一次獲取多個(gè)遠(yuǎn)程文件。mget命令的一般格式為: mget 文件名列表 使用用空格分隔的或帶通配符的文件名列表來(lái)指定要獲取的文件,對(duì)其中的每個(gè)文件都要求用戶確認(rèn)是否傳送。

  向遠(yuǎn)程系統(tǒng)發(fā)送文件 put和mput命令用于向遠(yuǎn)程機(jī)發(fā)送文件。Put命令的一般格式為: put 文件名 mput命令一次發(fā)送多個(gè)本地文件,mput命令的一般格式為:

  mput 文件名列表 使用用空格分隔的或帶通配符的文件名列表來(lái)指定要發(fā)送的文件。對(duì)其中的每個(gè)文件都要求用戶確認(rèn)是否發(fā)送。 改變文件傳輸模式

  默認(rèn)情況下,ftp按ASCII模式傳輸文件,用戶也可以指定其他模式。ascii和brinary命令的功能是設(shè)置傳輸?shù)哪J?。用ASCII模式傳輸文件對(duì)純文本是非常好的,但為避免對(duì)二進(jìn)制文件的破壞,用戶可以以二進(jìn)制模式傳輸文件。

  檢查傳輸狀態(tài) 傳輸大型文件時(shí),可能會(huì)發(fā)現(xiàn)讓ftp提供關(guān)于傳輸情況的反饋信息是非常有用的。hash命令使ftp在每次傳輸完數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù)后,就在屏幕上打印一個(gè)#字符。本命令在發(fā)送和接收文件時(shí)都可以使用。

  ftp中的本地命令 當(dāng)您使用ftp時(shí),字符“!”用于向本地機(jī)上的命令shell傳送一個(gè)命令。如果用戶處在ftp會(huì)話中,需要shell做某些事,就很有用。例如用戶要建立一個(gè)目錄來(lái)保存接收到的文件。如果輸入!mkdir

  new_dir,那么Linux就在用戶當(dāng)前的本地目錄中創(chuàng)建一個(gè)名為new_dir 的目錄。

  從遠(yuǎn)程機(jī)grunthos下載二進(jìn)制數(shù)據(jù)文件的典型對(duì)話過(guò)程如下:

  $ ftp grunthos Connected to grunthos 220 grunthos ftp server Name (grunthos:pc):

  anonymous 33l Guest login ok, send your complete e-mail address as password.

  Password: 230 Guest 1ogin ok, access restrictions apply. Remote system

  type is UNIX. ftp > cd pub 250 CWD command successful. ftp > ls

  200 PORT command successful. l50 opening ASCII mode data connection for

  /bin/1s. total ll4 rog1 rog2 226 Transfer comp1ete . ftp > binary 200

  type set to I. ftp > hash Hash mark printing on (1024 bytes/hash mark).

  ftp > get rog1 200 PORT command successfu1. 150 opening BINARY mode

  data connection for rogl (l4684 bytes). # # # # # # # # # # # # # 226

  Transfer complete. 14684 bytes received in 0.0473 secs (3e + 02 Kbytes/sec)

  ftp > quit 22l Goodbye.

  使用telnet命令訪問(wèn)遠(yuǎn)程計(jì)算機(jī)

  用戶使用telnet命令進(jìn)行遠(yuǎn)程登錄。該命令允許用戶使用telnet協(xié)議在遠(yuǎn)程計(jì)算機(jī)之間進(jìn)行通信,用戶可以通過(guò)網(wǎng)絡(luò)在遠(yuǎn)程計(jì)算機(jī)上登錄,就像登錄到本地機(jī)上執(zhí)行命令一樣。

  為了通過(guò)telnet登錄到遠(yuǎn)程計(jì)算機(jī)上,必須知道遠(yuǎn)程機(jī)上的合法用戶名和口令。雖然有些系統(tǒng)確實(shí)為遠(yuǎn)程用戶提供登錄功能,但出于對(duì)安全的考慮,要限制來(lái)賓的操作權(quán)限,因此,這種情況下能使用的功能是很少的。當(dāng)允許遠(yuǎn)程用戶登錄時(shí),系統(tǒng)通常把這些用戶放在一個(gè)受限制的shell中,以防系統(tǒng)被懷有惡意的或不小心的用戶破壞。

  用戶還可以使用telnet從遠(yuǎn)程站點(diǎn)登錄到自己的計(jì)算機(jī)上,檢查電子郵件、編輯文件和運(yùn)行程序,就像在本地登錄一樣。

  但是,用戶只能使用基于終端的環(huán)境而不是X Wndows環(huán)境,telnet只為普通終端提供終端仿真,而不支持 X Wndow等圖形環(huán)境。 telnet命令的一般形式為:

  telnet 主機(jī)名/IP 其中“主機(jī)名/IP”是要連接的遠(yuǎn)程機(jī)的主機(jī)名或IP地址。如果這一命令執(zhí)行成功,將從遠(yuǎn)程機(jī)上得到login:提示符。

  使用telnet命令登錄的過(guò)程如下: $ telnet 主機(jī)名/IP 啟動(dòng)telnet會(huì)話。 一旦telnet成功地連接到遠(yuǎn)程系統(tǒng)上,就顯示登錄信息并提示用戶輸人用戶名和口令。如果用戶名和口令輸入正確,就能成功登錄并在遠(yuǎn)程系統(tǒng)上工作。

  在telnet提示符后面可以輸入很多命令,用來(lái)控制telnet會(huì)話過(guò)程,在telnet聯(lián)機(jī)幫助手冊(cè)中對(duì)這些命令有詳細(xì)的說(shuō)明。

  下面是一臺(tái)Linux計(jì)算機(jī)上的telnet會(huì)話舉例:

  $ telnet server. somewhere. com Trying 127.0.0.1… Connected to serve.

  somewhere. com. Escape character is \'?]\'. “TurboLinux release 4. 0 (Colgate)

  kernel 2.0.18 on an I486   login: bubba password: Last login:Mon Nov

  l5 20:50:43 for localhost Linux 2. 0.6. (Posix). server: ~$ server: ~$

  logout Connection closed by foreign host $

  用戶結(jié)束了遠(yuǎn)程會(huì)話后,一定要確保使用logout命令退出遠(yuǎn)程系統(tǒng)。然后telnet報(bào)告遠(yuǎn)程會(huì)話被關(guān)閉,并返回到用戶的本地機(jī)的Shell提示符下。

  r-系列命令 除ftp和telnet以外,還可以使用r-系列命令訪問(wèn)遠(yuǎn)程計(jì)算機(jī)和在網(wǎng)絡(luò)上交換文件。使用r-系列命令需要特別注意,因?yàn)槿绻脩舨恍⌒?,就?huì)造成嚴(yán)重的安全漏洞。用戶發(fā)出一個(gè)r-系列命令后,遠(yuǎn)程系統(tǒng)檢查名為 /etc/hosts.equiv的文件,以查看用戶的主機(jī)是否列在這個(gè)文件中。如果它沒(méi)有找到用戶的主機(jī),就檢查遠(yuǎn)程機(jī)上同名用戶的主目錄中名為.

  rhosts的文件,看是否包括該用戶的主機(jī)。如果該用戶的主機(jī)包括在這兩個(gè)文件中的任何一個(gè)之中,該用戶執(zhí)行r-系列命令就不用提供口令。

  雖然用戶每次訪問(wèn)遠(yuǎn)程機(jī)時(shí)不用鍵入口令可能是非常方便的,但是它也可能會(huì)帶來(lái)嚴(yán)重的安全問(wèn)題。我們建議用戶在建立/etc/hosts.equiv和.rhosts文件之前,仔細(xì)考慮r-命令隱含的安全問(wèn)題。

  rlogin命令

  功能:rlogin 是“remote login”(遠(yuǎn)程登錄)的縮寫(xiě)。該命令與telnet命令很相似,允許用戶啟動(dòng)遠(yuǎn)程系統(tǒng)上的交互命令會(huì)話。

  格式: rlogin [ -8EKLdx ] [ -e char ] [-k

  realm ] [ - l username ] host

  參數(shù):

  -8 此選項(xiàng)始終允許8位輸入數(shù)據(jù)通道。該選項(xiàng)允許發(fā)送格式化的ANSI字符和其他的特殊代碼。如果不用這個(gè)選項(xiàng),除非遠(yuǎn)端的終止和啟動(dòng)字符不是或,否則就去掉奇偶校驗(yàn)位。

  -E 停止把任何字符當(dāng)作轉(zhuǎn)義字符。當(dāng)和-8選項(xiàng)一起使用時(shí),它提供一個(gè)完全的透明連接。

  -K 關(guān)閉所有的Kerberos確認(rèn)。只有與使用Kerberos 確認(rèn)協(xié)議的主機(jī)連接時(shí)才使用這個(gè)選項(xiàng)。

  -L 允許rlogin會(huì)話在litout模式中運(yùn)行。要了解更多信息,請(qǐng)查閱tty聯(lián)機(jī)幫助。

  -d 打開(kāi)與遠(yuǎn)程主機(jī)進(jìn)行通信的TCP sockets的socket調(diào)試。要了解更多信息,請(qǐng)查閱setsockopt的聯(lián)機(jī)幫助。

  -e 為rlogin會(huì)話設(shè)置轉(zhuǎn)義字符,默認(rèn)的轉(zhuǎn)義字符是“~”,用戶可以指定一個(gè)文字字符或一個(gè)\nnn形式的八進(jìn)制數(shù)。

  -k 請(qǐng)求rlogin獲得在指定區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos許可,而不是獲得由krb_realmofhost(3)確定的遠(yuǎn)程主機(jī)區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos

  許可。

  -x 為所有通過(guò)rlogin會(huì)話傳送的數(shù)據(jù)打開(kāi)DES加密。這會(huì)影響響應(yīng)時(shí)間和CPU利用率,但是可以提高安全性。

  rsh命令

  功能:rsh是“remote shell”(遠(yuǎn)程 shell)的縮寫(xiě)。 該命令在指定的遠(yuǎn)程主機(jī)上啟動(dòng)一個(gè)shell并執(zhí)行用戶在rsh命令行中指定的命令。如果用戶沒(méi)有給出要執(zhí)行的命令,rsh就用rlogin命令使用戶登錄到遠(yuǎn)程機(jī)上。

  格式:rsh [-Kdnx] [-k realm] [-l username]

  host [command]

  command可以是從shell提示符下鍵人的任何Linux命令。

  參數(shù):

  -K 關(guān)閉所有的Kerbero確認(rèn)。該選項(xiàng)只在與使用Kerbero確認(rèn)的主機(jī)連接時(shí)才使用。

  -d 打開(kāi)與遠(yuǎn)程主機(jī)進(jìn)行通信的TCP sockets的socket調(diào)試。要了解更多的信息,請(qǐng)查閱setsockopt的聯(lián)機(jī)幫助。

  -k 請(qǐng)求rsh獲得在指定區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos許可,而不是獲得由krb_relmofhost(3)確定的遠(yuǎn)程主機(jī)區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos許可。

  -l 缺省情況下,遠(yuǎn)程用戶名與本地用戶名相同。本選項(xiàng)允許指定遠(yuǎn)程用戶名,如果指定了遠(yuǎn)程用戶名,則使用Kerberos 確認(rèn),與在rlogin命令中一樣。

  -n 重定向來(lái)自特殊設(shè)備/dev/null的輸入。

  -x 為傳送的所有數(shù)據(jù)打開(kāi)DES加密。這會(huì)影響響應(yīng)時(shí)間和CPU利用率,但是可以提高安全性。    Linux把標(biāo)準(zhǔn)輸入放入rsh命令中,并把它拷貝到要遠(yuǎn)程執(zhí)行的命令的標(biāo)準(zhǔn)輸入中。它把遠(yuǎn)程命令的標(biāo)準(zhǔn)輸出拷貝到rsh的標(biāo)準(zhǔn)輸出中。它還把遠(yuǎn)程標(biāo)準(zhǔn)錯(cuò)誤拷貝到本地標(biāo)準(zhǔn)錯(cuò)誤文件中。任何退出、中止和中斷信號(hào)都被送到遠(yuǎn)程命令中。當(dāng)遠(yuǎn)程命令終止了,rsh也就終止了。

  rcp命令

  功能:rcp代表“remote file copy”(遠(yuǎn)程文件拷貝)。該命令用于在計(jì)算機(jī)之間拷貝文件。

  rcp命令有兩種格式。第一種格式用于文件到文件的拷貝;第二種格式用于把文件或目錄拷貝到另一個(gè)目錄中。

  格式:

  rcp [-px] [-k realm] file1 file2 rcp [-px] [-r] [-k realm] file

  directory 每個(gè)文件或目錄參數(shù)既可以是遠(yuǎn)程文件名也可以是本地文件名。遠(yuǎn)程文件名具有如下形式:rname@rhost:path,其中rname是遠(yuǎn)程用戶名,rhost是遠(yuǎn)程計(jì)算機(jī)名,path是這個(gè)文件的路徑。

  參數(shù):

  -r 遞歸地把源目錄中的所有內(nèi)容拷貝到目的目錄中。要使用這個(gè)選項(xiàng),目的必須是一個(gè)目錄。

  -p 試圖保留源文件的修改時(shí)間和模式,忽略u(píng)mask。

  -k 請(qǐng)求rcp獲得在指定區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos 許可,而不是獲得由krb_relmofhost(3)確定的遠(yuǎn)程主機(jī)區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos許可。

  -x 為傳送的所有數(shù)據(jù)打開(kāi)DES加密。這會(huì)影響響應(yīng)時(shí)間和CPU利用率,但是可以提高安全性。如果在文件名中指定的路徑不是完整的路徑名,那么這個(gè)路徑被解釋為相對(duì)遠(yuǎn)程機(jī)上同名用戶的主目錄。如果沒(méi)有給出遠(yuǎn)程用戶名,就使用當(dāng)前用戶名。如果遠(yuǎn)程機(jī)上的路徑包含特殊shell字符,需要用反斜線(\)、雙引號(hào)(”)或單引號(hào)(’)括起來(lái),使所有的shell元字符都能被遠(yuǎn)程地解釋。

  需要說(shuō)明的是,rcp不提示輸入口令,它通過(guò)rsh命令來(lái)執(zhí)行拷貝。 - Turbolinux 提供稿件

  This file is decompiled from a .CHM file

  by an UNREGISTERED version of Easy CHM.

  You can download Easy CHM at :

  Linux必學(xué)60個(gè)命令文件處理

  作者: artiomgy 中級(jí)會(huì)員(61.54.106.238)

  日期: 2005-10-07 13:15:19

  Linux系統(tǒng)信息存放在文件里,文件與普通的公務(wù)文件類似。每個(gè)文件都有自己的名字、內(nèi)容、存放地址及其它一些管理信息,如文件的用戶、文件的大小等。文件可以是一封信、一個(gè)通訊錄,或者是程序的源語(yǔ)句、程序的數(shù)據(jù),甚至可以包括可執(zhí)行的程序和其它非正文內(nèi)容。 Linux文件系統(tǒng)具有良好的結(jié)構(gòu),系統(tǒng)提供了很多文件處理程序。這里主要介紹常用的文件處理命令。

  file

  1.作用

  file通過(guò)探測(cè)文件內(nèi)容判斷文件類型,使用權(quán)限是所有用戶。

  2.格式

  file [options] 文件名

  3.[options]主?問(wèn)?

  -v:在標(biāo)準(zhǔn)輸出后顯示版本信息,并且退出。

  -z:探測(cè)壓縮過(guò)的文件類型。

  -L:允許符合連接。

  -f name:從文件namefile中讀取要分析的文件名列表。

  4.簡(jiǎn)單說(shuō)明

  使用file命令可以知道某個(gè)文件究竟是二進(jìn)制(ELF格式)的可執(zhí)行文件, 還是Shell Script文件,或者是其它的什么格式。file能識(shí)別的文件類型有目錄、Shell腳本、英文文本、二進(jìn)制可執(zhí)行文件、C語(yǔ)言源文件、文本文件、DOS的可執(zhí)行文件。

  5.應(yīng)用實(shí)例

  如果我們看到一個(gè)沒(méi)有后綴的文件grap,可以使用下面命令:

  $ file grap

  grap: English text

  此時(shí)系統(tǒng)顯示這是一個(gè)英文文本文件。需要說(shuō)明的是,file命令不能探測(cè)包括圖形、音頻、視頻等多媒體文件類型。

  mkdir

  1.作用

  mkdir命令的作用是建立名稱為dirname的子目錄,與MS DOS下的md命令類似,它的使用權(quán)限是所有用戶。

  2.格式

  mkdir [options] 目錄名

  3.[options]主要參數(shù)

  -m, --mode=模式:設(shè)定權(quán)限<模式>,與chmod類似。

  -p, --parents:需要時(shí)創(chuàng)建上層目錄;如果目錄早已存在,則不當(dāng)作錯(cuò)誤。

  -v, --verbose:每次創(chuàng)建新目錄都顯示信息。

  --version:顯示版本信息后離開(kāi)。

  4.應(yīng)用實(shí)例

  在進(jìn)行目錄創(chuàng)建時(shí)可以設(shè)置目錄的權(quán)限,此時(shí)使用的參數(shù)是“-m”。假設(shè)要?jiǎng)?chuàng)建的目錄名是“tsk”,讓所有用戶都有rwx(即讀、寫(xiě)、執(zhí)行的權(quán)限),那么可以使用以下命令:

  $ mkdir -m 777 tsk

  grep

  1.作用

  grep命令可以指定文件中搜索特定的內(nèi)容,并將含有這些內(nèi)容的行標(biāo)準(zhǔn)輸出。grep全稱是Global Regular Expression Print,表示全局正則表達(dá)式版本,它的使用權(quán)限是所有用戶。

  2.格式

  grep [options]

  3.主要參數(shù)

  [options]主要參數(shù):

  -c:只輸出匹配行的計(jì)數(shù)。

  -I:不區(qū)分大小寫(xiě)(只適用于單字符)。

  -h:查詢多文件時(shí)不顯示文件名。

  -l:查詢多文件時(shí)只輸出包含匹配字符的文件名。

  -n:顯示匹配行及行號(hào)。

  -s:不顯示不存在或無(wú)匹配文本的錯(cuò)誤信息。

  -v:顯示不包含匹配文本的所有行。

  pattern正則表達(dá)式主要參數(shù):

  \:忽略正則表達(dá)式中特殊字符的原有含義。

  ^:匹配正則表達(dá)式的開(kāi)始行。

  $: 匹配正則表達(dá)式的結(jié)束行。

  \<:從匹配正則表達(dá)式的行開(kāi)始。

  \>:到匹配正則表達(dá)式的行結(jié)束。

  [ ]:?jiǎn)蝹€(gè)字符,如[A]即A符合要求 。

  [ - ]:范圍,如[A-Z],即A、B、C一直到Z都符合要求 。

  。:所有的單個(gè)字符。

  * :有字符,長(zhǎng)度可以為0。

  正則表達(dá)式是Linux/Unix系統(tǒng)中非常重要的概念。正則表達(dá)式(也稱為“regex”或“regexp”)是一個(gè)可以描述一類字符串的模式(Pattern)。如果一個(gè)字符串可以用某個(gè)正則表達(dá)式來(lái)描述,我們就說(shuō)這個(gè)字符和該正則表達(dá)式匹配(Match)。這和DOS中用戶可以使用通配符 “*”代表任意字符類似。在Linux系統(tǒng)上,正則表達(dá)式通常被用來(lái)查找文本的模式,以及對(duì)文本執(zhí)行“搜索-替換”操作和其它功能。

  4.應(yīng)用實(shí)例

  查詢DNS服務(wù)是日常工作之一,這意味著要維護(hù)覆蓋不同網(wǎng)絡(luò)的大量IP地址。有時(shí)IP地址會(huì)超過(guò)2000個(gè)。如果要查看nnn.nnn網(wǎng)絡(luò)地址,但是卻忘了第二部分中的其余部分,只知到有兩個(gè)句點(diǎn),例如nnn nn..。要抽取其中所有nnn.nnn IP地址,使用[0-9 ]\{3 \}\.[0-0\。含義是任意數(shù)字出現(xiàn)3次,后跟句點(diǎn),接著是任意數(shù)字出現(xiàn)3次,后跟句點(diǎn)。

  $grep ´[0-9 ]\{3 \}\.[0-0\´ ipfile

  補(bǔ)充說(shuō)明,grep家族還包括fgrep和egrep。fgrep是fix grep,允許查找字符串而不是一個(gè)模式;egrep是擴(kuò)展grep,支持基本及擴(kuò)展的正則表達(dá)式,但不支持\q模式范圍的應(yīng)用及與之相對(duì)應(yīng)的一些更加規(guī)范的模式。

  dd

  1.作用

  dd命令用來(lái)復(fù)制文件,并根據(jù)參數(shù)將數(shù)據(jù)轉(zhuǎn)換和格式化。

  2.格式

  dd [options]

  3.[opitions]主要參數(shù)

  bs=字節(jié):強(qiáng)迫 ibs=<字節(jié)>及obs=<字節(jié)>。

  cbs=字節(jié):每次轉(zhuǎn)換指定的<字節(jié)>。

  conv=關(guān)鍵字:根據(jù)以逗號(hào)分隔的關(guān)鍵字表示的方式來(lái)轉(zhuǎn)換文件。

  count=塊數(shù)目:只復(fù)制指定<塊數(shù)目>的輸入數(shù)據(jù)。

  ibs=字節(jié):每次讀取指定的<字節(jié)>。

  if=文件:讀取<文件>內(nèi)容,而非標(biāo)準(zhǔn)輸入的數(shù)據(jù)。

  obs=字節(jié):每次寫(xiě)入指定的<字節(jié)>。

  of=文件:將數(shù)據(jù)寫(xiě)入<文件>,而不在標(biāo)準(zhǔn)輸出顯示。

  seek=塊數(shù)目:先略過(guò)以obs為單位的指定<塊數(shù)目>的輸出數(shù)據(jù)。

  skip=塊數(shù)目:先略過(guò)以ibs為單位的指定<塊數(shù)目>的輸入數(shù)據(jù)。

  4.應(yīng)用實(shí)例

  dd命令常常用來(lái)制作Linux啟動(dòng)盤(pán)。先找一個(gè)可引導(dǎo)內(nèi)核,令它的根設(shè)備指向正確的根分區(qū),然后使用dd命令將其寫(xiě)入軟盤(pán):

  $ rdev vmlinuz /dev/hda

  $dd if=vmlinuz of=/dev/fd0

  上面代碼說(shuō)明,使用rdev命令將可引導(dǎo)內(nèi)核vmlinuz中的根設(shè)備指向/dev/hda,請(qǐng)把“hda”換成自己的根分區(qū),接下來(lái)用dd命令將該內(nèi)核寫(xiě)入軟盤(pán)。

  find

  1.作用

  find命令的作用是在目錄中搜索文件,它的使用權(quán)限是所有用戶。

  2.格式

  find [path][options][expression]

  path指定目錄路徑,系統(tǒng)從這里開(kāi)始沿著目錄樹(shù)向下查找文件。它是一個(gè)路徑列表,相互用空格分離,如果不寫(xiě)path,那么默認(rèn)為當(dāng)前目錄。

  3.主要參數(shù)

  [options]參數(shù):

  -depth:使用深度級(jí)別的查找過(guò)程方式,在某層指定目錄中優(yōu)先查找文件內(nèi)容。

  -maxdepth levels:表示至多查找到開(kāi)始目錄的第level層子目錄。level是一個(gè)非負(fù)數(shù),如果level是0的話表示僅在當(dāng)前目錄中查找。

  -mindepth levels:表示至少查找到開(kāi)始目錄的第level層子目錄。

  -mount:不在其它文件系統(tǒng)(如Msdos、Vfat等)的目錄和文件中查找。

  -version:打印版本。

  [expression]是匹配表達(dá)式,是find命令接受的表達(dá)式,find命令的所有操作都是針對(duì)表達(dá)式的。它的參數(shù)非常多,這里只介紹一些常用的參數(shù)。

  —name:支持統(tǒng)配符*和?。

  -atime n:搜索在過(guò)去n天讀取過(guò)的文件。

  -ctime n:搜索在過(guò)去n天修改過(guò)的文件。

  -group grpoupname:搜索所有組為grpoupname的文件。

  -user 用戶名:搜索所有文件屬主為用戶名(ID或名稱)的文件。

  -size n:搜索文件大小是n個(gè)block的文件。

  -print:輸出搜索結(jié)果,并且打印。

  已編輯 1 次, 最后一次由 chase 于 05-10-21 12:01。

  管理: 刪除•移動(dòng)話題•關(guān)閉話題 •隱藏信息及回復(fù) •編輯

  選項(xiàng): 回復(fù)本帖•引用本帖•跟蹤•舉報(bào)

  Linux 的常用網(wǎng)絡(luò)命令

  作者: chase 總版主(219.239.136.141)

  日期: 2005-10-21 12:02:17

  Linux 的常用網(wǎng)絡(luò)命令

  作者: artiomgy 中級(jí)會(huì)員(61.54.106.238)

  日期: 2005-10-05 09:14:01

  計(jì)算機(jī)網(wǎng)絡(luò)的主要優(yōu)點(diǎn)是能夠?qū)崿F(xiàn)資源和信息的共享,并且用戶可以遠(yuǎn)程訪問(wèn)信息。Linux提供了一組強(qiáng)有力的網(wǎng)絡(luò)命令來(lái)為用戶服務(wù),這些工具能夠幫助用戶登錄到遠(yuǎn)程計(jì)算機(jī)上、傳輸文件和執(zhí)行遠(yuǎn)程命令等。

  本章介紹下列幾個(gè)常用的有關(guān)網(wǎng)絡(luò)操作的命令:

  ftp 傳輸文件

  telnet 登錄到遠(yuǎn)程計(jì)算機(jī)上

  r - 使用各種遠(yuǎn)程命令

  netstat 查看網(wǎng)絡(luò)的狀況

  nslookup 查詢域名和IP地址的對(duì)應(yīng)

  finger 查詢某個(gè)使用者的信息

  ping 查詢某個(gè)機(jī)器是否在工作

  使用ftp命令進(jìn)行遠(yuǎn)程文件傳輸

  ftp命令是標(biāo)準(zhǔn)的文件傳輸協(xié)議的用戶接口。ftp是在TCP/IP網(wǎng)絡(luò)上的計(jì)算機(jī)之間傳輸文件的簡(jiǎn)單有效的方法。它允許用戶傳輸ASCII文件和二進(jìn)制文件。

  在ftp會(huì)話過(guò)程中,用戶可以通過(guò)使用ftp客戶程序連接到另一臺(tái)計(jì)算機(jī)上。從此,用戶可以在目錄中上下移動(dòng)、列出目錄內(nèi)容、把文件從遠(yuǎn)程機(jī)拷貝到本地機(jī)上、把文件從本地機(jī)傳輸?shù)竭h(yuǎn)程系統(tǒng)中。

  需要注意的是,如果用戶沒(méi)有那個(gè)文件的存取權(quán)限,就不能從遠(yuǎn)程系統(tǒng)中獲得文件或向遠(yuǎn)程系統(tǒng)傳輸文件。 為了使用ftp來(lái)傳輸文件,用戶必須知道遠(yuǎn)程計(jì)算機(jī)上的合法用戶名和口令。這個(gè)用戶名/口令的組合用來(lái)確認(rèn)ftp

  會(huì)話,并用來(lái)確定用戶對(duì)要傳輸?shù)奈募梢赃M(jìn)行什么樣的訪問(wèn)。另外,用戶顯然需要知道對(duì)其進(jìn)行ftp 會(huì)話的計(jì)算機(jī)的名字或IP地址。

  Ftp命令的功能是在本地機(jī)和遠(yuǎn)程機(jī)之間傳送文件。該命令的一般格式如下:

  $ ftp 主機(jī)名/IP

  其中“主機(jī)名/IP”是所要連接的遠(yuǎn)程機(jī)的主機(jī)名或IP地址。在命令行中,主機(jī)名屬于選項(xiàng),如果指定主機(jī)名,ftp將試圖與遠(yuǎn)程機(jī)的ftp服務(wù)程序進(jìn)行連接;如果沒(méi)有指定主機(jī)名,ftp將給出提示符,等待用戶輸入命令:

  $ ftp ftp > 此時(shí)在ftp>提示符后面輸入open命令加主機(jī)名或IP地址,將試圖連接指定的主機(jī)。 不管使用哪一種方法,如果連接成功,需要在遠(yuǎn)程機(jī)上登錄。用戶如果在遠(yuǎn)程機(jī)上有帳號(hào),就可以通過(guò)ftp使用這一帳號(hào)并需要提供口令。

  在遠(yuǎn)程機(jī)上的用戶帳號(hào)的讀寫(xiě)權(quán)限決定該用戶在遠(yuǎn)程機(jī)上能下載什么文件和將上載文件放到哪個(gè)目錄中。如果沒(méi)有遠(yuǎn)程機(jī)的專用登錄帳號(hào),許多ftp站點(diǎn)設(shè)有可以使用的特殊帳號(hào)。這個(gè)帳號(hào)的登錄名為anonymous(也稱為匿名ftp),當(dāng)使用這一帳號(hào)時(shí),要求輸入email地址作為口令。

  如果遠(yuǎn)程系統(tǒng)提供匿名ftp服務(wù),用戶使用這項(xiàng)服務(wù)可以登錄到特殊的,供公開(kāi)使用的目錄。

  一般專門(mén)提供兩個(gè)目錄:pub目錄和incoming目錄。pub目錄包含該站點(diǎn)供公眾使用的所有文件,incoming目錄存放上載到該站點(diǎn)的文件。

  一旦用戶使用ftp在遠(yuǎn)程站點(diǎn)上登錄成功,將得到“ftp>”提示符?,F(xiàn)在可以自由使用ftp提供的命令,可以用 help命令取得可供使用的命令清單,也可以在

  help命令后面指定具體的命令名稱,獲得這條命令的說(shuō)明。

  最常用的命令有:

  ls 列出遠(yuǎn)程機(jī)的當(dāng)前目錄

  cd 在遠(yuǎn)程機(jī)上改變工作目錄

  lcd 在本地機(jī)上改變工作目錄

  ascii 設(shè)置文件傳輸方式為ASCII模式

  binary 設(shè)置文件傳輸方式為二進(jìn)制模式

  close終止當(dāng)前的ftp會(huì)話

  hash 每次傳輸完數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù)后就顯示一個(gè)#號(hào)

  get(mget) 從遠(yuǎn)程機(jī)傳送指定文件到本地機(jī)

  put(mput) 從本地機(jī)傳送指定文件到遠(yuǎn)程機(jī)

  open 連接遠(yuǎn)程ftp站點(diǎn)

  quit斷開(kāi)與遠(yuǎn)程機(jī)的連接并退出ftp

  ? 顯示本地幫助信息

  ! 轉(zhuǎn)到Shell中

  下面簡(jiǎn)單將ftp常用命令作一簡(jiǎn)介。

  啟動(dòng)ftp會(huì)話 open命令用于打開(kāi)一個(gè)與遠(yuǎn)程主機(jī)的會(huì)話。該命令的一般格式是: open 主機(jī)名/IP 如果在ftp 會(huì)話期間要與一個(gè)以上的站點(diǎn)連接,通常只用不帶參數(shù)的ftp命令。如果在會(huì)話期間只想與一臺(tái)計(jì)算機(jī)連接,那么在命令行上指定遠(yuǎn)程主機(jī)名或IP地址作為 ftp命令的參數(shù)。

  終止ftp會(huì)話 close、disconnect、quit和bye命令用于終止與遠(yuǎn)程機(jī)的會(huì)話。close和disronnect命令關(guān)閉與遠(yuǎn)程機(jī)的連接,但是使用戶留在本地計(jì)算機(jī)的ftp程序中。quit和bye命令都關(guān)閉用戶與遠(yuǎn)程機(jī)的連接,然后退出用戶機(jī)上的ftp

  程序。 改變目錄 “cd [目錄](méi)”命令用于在ftp會(huì)話期間改變遠(yuǎn)程機(jī)上的目錄,lcd命令改變本地目錄,使用戶能指定查找或放置本地文件的位置。

  遠(yuǎn)程目錄列表 ls命令列出遠(yuǎn)程目錄的內(nèi)容,就像使用一個(gè)交互shell中的ls命令一樣。ls命令的一般格式是: ls [目錄](méi) [本地文件]

  如果指定了目錄作為參數(shù),那么ls就列出該目錄的內(nèi)容。如果給出一個(gè)本地文件的名字,那么這個(gè)目錄列表被放入本地機(jī)上您指定的這個(gè)文件中。 從遠(yuǎn)程系統(tǒng)獲取文件

  get和mget命令用于從遠(yuǎn)程機(jī)上獲取文件。get命令的一般格式為: get 文件名 您還可以給出本地文件名,這個(gè)文件名是這個(gè)要獲取的文件在您的本地機(jī)上創(chuàng)建時(shí)的文件名。如果您不給出一個(gè)本地文件名,那么就使用遠(yuǎn)程文件原來(lái)的名字。

  mget命令一次獲取多個(gè)遠(yuǎn)程文件。mget命令的一般格式為: mget 文件名列表 使用用空格分隔的或帶通配符的文件名列表來(lái)指定要獲取的文件,對(duì)其中的每個(gè)文件都要求用戶確認(rèn)是否傳送。

  向遠(yuǎn)程系統(tǒng)發(fā)送文件 put和mput命令用于向遠(yuǎn)程機(jī)發(fā)送文件。Put命令的一般格式為: put 文件名 mput命令一次發(fā)送多個(gè)本地文件,mput命令的一般格式為:

  mput 文件名列表 使用用空格分隔的或帶通配符的文件名列表來(lái)指定要發(fā)送的文件。對(duì)其中的每個(gè)文件都要求用戶確認(rèn)是否發(fā)送。 改變文件傳輸模式

  默認(rèn)情況下,ftp按ASCII模式傳輸文件,用戶也可以指定其他模式。ascii和brinary命令的功能是設(shè)置傳輸?shù)哪J健S肁SCII模式傳輸文件對(duì)純文本是非常好的,但為避免對(duì)二進(jìn)制文件的破壞,用戶可以以二進(jìn)制模式傳輸文件。

  檢查傳輸狀態(tài) 傳輸大型文件時(shí),可能會(huì)發(fā)現(xiàn)讓ftp提供關(guān)于傳輸情況的反饋信息是非常有用的。hash命令使ftp在每次傳輸完數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù)后,就在屏幕上打印一個(gè)#字符。本命令在發(fā)送和接收文件時(shí)都可以使用。

  ftp中的本地命令 當(dāng)您使用ftp時(shí),字符“!”用于向本地機(jī)上的命令shell傳送一個(gè)命令。如果用戶處在ftp會(huì)話中,需要shell做某些事,就很有用。例如用戶要建立一個(gè)目錄來(lái)保存接收到的文件。如果輸入!mkdir

  new_dir,那么Linux就在用戶當(dāng)前的本地目錄中創(chuàng)建一個(gè)名為new_dir 的目錄。

  從遠(yuǎn)程機(jī)grunthos下載二進(jìn)制數(shù)據(jù)文件的典型對(duì)話過(guò)程如下:

  $ ftp grunthos Connected to grunthos 220 grunthos ftp server Name (grunthos:pc):

  anonymous 33l Guest login ok, send your complete e-mail address as password.

  Password: 230 Guest 1ogin ok, access restrictions apply. Remote system

  type is UNIX. ftp > cd pub 250 CWD command successful. ftp > ls

  200 PORT command successful. l50 opening ASCII mode data connection for

  /bin/1s. total ll4 rog1 rog2 226 Transfer comp1ete . ftp > binary 200

  type set to I. ftp > hash Hash mark printing on (1024 bytes/hash mark).

  ftp > get rog1 200 PORT command successfu1. 150 opening BINARY mode

  data connection for rogl (l4684 bytes). # # # # # # # # # # # # # 226

  Transfer complete. 14684 bytes received in 0.0473 secs (3e + 02 Kbytes/sec)

  ftp > quit 22l Goodbye.

  使用telnet命令訪問(wèn)遠(yuǎn)程計(jì)算機(jī)

  用戶使用telnet命令進(jìn)行遠(yuǎn)程登錄。該命令允許用戶使用telnet協(xié)議在遠(yuǎn)程計(jì)算機(jī)之間進(jìn)行通信,用戶可以通過(guò)網(wǎng)絡(luò)在遠(yuǎn)程計(jì)算機(jī)上登錄,就像登錄到本地機(jī)上執(zhí)行命令一樣。

  為了通過(guò)telnet登錄到遠(yuǎn)程計(jì)算機(jī)上,必須知道遠(yuǎn)程機(jī)上的合法用戶名和口令。雖然有些系統(tǒng)確實(shí)為遠(yuǎn)程用戶提供登錄功能,但出于對(duì)安全的考慮,要限制來(lái)賓的操作權(quán)限,因此,這種情況下能使用的功能是很少的。當(dāng)允許遠(yuǎn)程用戶登錄時(shí),系統(tǒng)通常把這些用戶放在一個(gè)受限制的shell中,以防系統(tǒng)被懷有惡意的或不小心的用戶破壞。

  用戶還可以使用telnet從遠(yuǎn)程站點(diǎn)登錄到自己的計(jì)算機(jī)上,檢查電子郵件、編輯文件和運(yùn)行程序,就像在本地登錄一樣。

  但是,用戶只能使用基于終端的環(huán)境而不是X Wndows環(huán)境,telnet只為普通終端提供終端仿真,而不支持 X Wndow等圖形環(huán)境。 telnet命令的一般形式為:

  telnet 主機(jī)名/IP 其中“主機(jī)名/IP”是要連接的遠(yuǎn)程機(jī)的主機(jī)名或IP地址。如果這一命令執(zhí)行成功,將從遠(yuǎn)程機(jī)上得到login:提示符。

  使用telnet命令登錄的過(guò)程如下: $ telnet 主機(jī)名/IP 啟動(dòng)telnet會(huì)話。 一旦telnet成功地連接到遠(yuǎn)程系統(tǒng)上,就顯示登錄信息并提示用戶輸人用戶名和口令。如果用戶名和口令輸入正確,就能成功登錄并在遠(yuǎn)程系統(tǒng)上工作。

  在telnet提示符后面可以輸入很多命令,用來(lái)控制telnet會(huì)話過(guò)程,在telnet聯(lián)機(jī)幫助手冊(cè)中對(duì)這些命令有詳細(xì)的說(shuō)明。

  下面是一臺(tái)Linux計(jì)算機(jī)上的telnet會(huì)話舉例:

  $ telnet server. somewhere. com Trying 127.0.0.1… Connected to serve.

  somewhere. com. Escape character is \'?]\'. “TurboLinux release 4. 0 (Colgate)

  kernel 2.0.18 on an I486   login: bubba password: Last login:Mon Nov

  l5 20:50:43 for localhost Linux 2. 0.6. (Posix). server: ~$ server: ~$

  logout Connection closed by foreign host $

  用戶結(jié)束了遠(yuǎn)程會(huì)話后,一定要確保使用logout命令退出遠(yuǎn)程系統(tǒng)。然后telnet報(bào)告遠(yuǎn)程會(huì)話被關(guān)閉,并返回到用戶的本地機(jī)的Shell提示符下。

  r-系列命令 除ftp和telnet以外,還可以使用r-系列命令訪問(wèn)遠(yuǎn)程計(jì)算機(jī)和在網(wǎng)絡(luò)上交換文件。使用r-系列命令需要特別注意,因?yàn)槿绻脩舨恍⌒模蜁?huì)造成嚴(yán)重的安全漏洞。用戶發(fā)出一個(gè)r-系列命令后,遠(yuǎn)程系統(tǒng)檢查名為 /etc/hosts.equiv的文件,以查看用戶的主機(jī)是否列在這個(gè)文件中。如果它沒(méi)有找到用戶的主機(jī),就檢查遠(yuǎn)程機(jī)上同名用戶的主目錄中名為.

  rhosts的文件,看是否包括該用戶的主機(jī)。如果該用戶的主機(jī)包括在這兩個(gè)文件中的任何一個(gè)之中,該用戶執(zhí)行r-系列命令就不用提供口令。

  雖然用戶每次訪問(wèn)遠(yuǎn)程機(jī)時(shí)不用鍵入口令可能是非常方便的,但是它也可能會(huì)帶來(lái)嚴(yán)重的安全問(wèn)題。我們建議用戶在建立/etc/hosts.equiv和.rhosts文件之前,仔細(xì)考慮r-命令隱含的安全問(wèn)題。

  rlogin命令

  功能:rlogin 是“remote login”(遠(yuǎn)程登錄)的縮寫(xiě)。該命令與telnet命令很相似,允許用戶啟動(dòng)遠(yuǎn)程系統(tǒng)上的交互命令會(huì)話。

  格式: rlogin [ -8EKLdx ] [ -e char ] [-k

  realm ] [ - l username ] host

  參數(shù):

  -8 此選項(xiàng)始終允許8位輸入數(shù)據(jù)通道。該選項(xiàng)允許發(fā)送格式化的ANSI字符和其他的特殊代碼。如果不用這個(gè)選項(xiàng),除非遠(yuǎn)端的終止和啟動(dòng)字符不是或,否則就去掉奇偶校驗(yàn)位。

  -E 停止把任何字符當(dāng)作轉(zhuǎn)義字符。當(dāng)和-8選項(xiàng)一起使用時(shí),它提供一個(gè)完全的透明連接。

  -K 關(guān)閉所有的Kerberos確認(rèn)。只有與使用Kerberos 確認(rèn)協(xié)議的主機(jī)連接時(shí)才使用這個(gè)選項(xiàng)。

  -L 允許rlogin會(huì)話在litout模式中運(yùn)行。要了解更多信息,請(qǐng)查閱tty聯(lián)機(jī)幫助。

  -d 打開(kāi)與遠(yuǎn)程主機(jī)進(jìn)行通信的TCP sockets的socket調(diào)試。要了解更多信息,請(qǐng)查閱setsockopt的聯(lián)機(jī)幫助。

  -e 為rlogin會(huì)話設(shè)置轉(zhuǎn)義字符,默認(rèn)的轉(zhuǎn)義字符是“~”,用戶可以指定一個(gè)文字字符或一個(gè)\nnn形式的八進(jìn)制數(shù)。

  -k 請(qǐng)求rlogin獲得在指定區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos許可,而不是獲得由krb_realmofhost(3)確定的遠(yuǎn)程主機(jī)區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos

  許可。

  -x 為所有通過(guò)rlogin會(huì)話傳送的數(shù)據(jù)打開(kāi)DES加密。這會(huì)影響響應(yīng)時(shí)間和CPU利用率,但是可以提高安全性。

  rsh命令

  功能:rsh是“remote shell”(遠(yuǎn)程 shell)的縮寫(xiě)。 該命令在指定的遠(yuǎn)程主機(jī)上啟動(dòng)一個(gè)shell并執(zhí)行用戶在rsh命令行中指定的命令。如果用戶沒(méi)有給出要執(zhí)行的命令,rsh就用rlogin命令使用戶登錄到遠(yuǎn)程機(jī)上。

  格式:rsh [-Kdnx] [-k realm] [-l username]

  host [command]

  command可以是從shell提示符下鍵人的任何Linux命令。

  參數(shù):

  -K 關(guān)閉所有的Kerbero確認(rèn)。該選項(xiàng)只在與使用Kerbero確認(rèn)的主機(jī)連接時(shí)才使用。

  -d 打開(kāi)與遠(yuǎn)程主機(jī)進(jìn)行通信的TCP sockets的socket調(diào)試。要了解更多的信息,請(qǐng)查閱setsockopt的聯(lián)機(jī)幫助。

  -k 請(qǐng)求rsh獲得在指定區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos許可,而不是獲得由krb_relmofhost(3)確定的遠(yuǎn)程主機(jī)區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos許可。

  -l 缺省情況下,遠(yuǎn)程用戶名與本地用戶名相同。本選項(xiàng)允許指定遠(yuǎn)程用戶名,如果指定了遠(yuǎn)程用戶名,則使用Kerberos 確認(rèn),與在rlogin命令中一樣。

  -n 重定向來(lái)自特殊設(shè)備/dev/null的輸入。

  -x 為傳送的所有數(shù)據(jù)打開(kāi)DES加密。這會(huì)影響響應(yīng)時(shí)間和CPU利用率,但是可以提高安全性。    Linux把標(biāo)準(zhǔn)輸入放入rsh命令中,并把它拷貝到要遠(yuǎn)程執(zhí)行的命令的標(biāo)準(zhǔn)輸入中。它把遠(yuǎn)程命令的標(biāo)準(zhǔn)輸出拷貝到rsh的標(biāo)準(zhǔn)輸出中。它還把遠(yuǎn)程標(biāo)準(zhǔn)錯(cuò)誤拷貝到本地標(biāo)準(zhǔn)錯(cuò)誤文件中。任何退出、中止和中斷信號(hào)都被送到遠(yuǎn)程命令中。當(dāng)遠(yuǎn)程命令終止了,rsh也就終止了。

  rcp命令

  功能:rcp代表“remote file copy”(遠(yuǎn)程文件拷貝)。該命令用于在計(jì)算機(jī)之間拷貝文件。

  rcp命令有兩種格式。第一種格式用于文件到文件的拷貝;第二種格式用于把文件或目錄拷貝到另一個(gè)目錄中。

  格式:

  rcp [-px] [-k realm] file1 file2 rcp [-px] [-r] [-k realm] file

  directory 每個(gè)文件或目錄參數(shù)既可以是遠(yuǎn)程文件名也可以是本地文件名。遠(yuǎn)程文件名具有如下形式:rname@rhost:path,其中rname是遠(yuǎn)程用戶名,rhost是遠(yuǎn)程計(jì)算機(jī)名,path是這個(gè)文件的路徑。

  參數(shù):

  -r 遞歸地把源目錄中的所有內(nèi)容拷貝到目的目錄中。要使用這個(gè)選項(xiàng),目的必須是一個(gè)目錄。

  -p 試圖保留源文件的修改時(shí)間和模式,忽略u(píng)mask。

  -k 請(qǐng)求rcp獲得在指定區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos 許可,而不是獲得由krb_relmofhost(3)確定的遠(yuǎn)程主機(jī)區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos許可。

  -x 為傳送的所有數(shù)據(jù)打開(kāi)DES加密。這會(huì)影響響應(yīng)時(shí)間和CPU利用率,但是可以提高安全性。如果在文件名中指定的路徑不是完整的路徑名,那么這個(gè)路徑被解釋為相對(duì)遠(yuǎn)程機(jī)上同名用戶的主目錄。如果沒(méi)有給出遠(yuǎn)程用戶名,就使用當(dāng)前用戶名。如果遠(yuǎn)程機(jī)上的路徑包含特殊shell字符,需要用反斜線(\)、雙引號(hào)(”)或單引號(hào)(’)括起來(lái),使所有的shell元字符都能被遠(yuǎn)程地解釋。

  需要說(shuō)明的是,rcp不提示輸入口令,它通過(guò)rsh命令來(lái)執(zhí)行拷貝。 - Turbolinux 提供稿件

  This file is decompiled from a .CHM file

  by an UNREGISTERED version of Easy CHM.

  You can download Easy CHM at :

  指令名稱:cat

  使用權(quán)限:所有使用者

  使用方式:cat [-AbeEnstTuv] [--help] [--version] fileName

  說(shuō)明:把檔案串連接后傳到基本輸出(螢?zāi)换蚣?> fileName 到另一個(gè)檔案)

  參數(shù):

  -n 或 --number 由 1 開(kāi)始對(duì)所有輸出的行數(shù)編號(hào)

  -b 或 --number-nonblank 和 -n 相似,只不過(guò)對(duì)于空白行不編號(hào)

  -s 或 --squeeze-blank 當(dāng)遇到有連續(xù)兩行以上的空白行,就代換為一行的空白行

  -v 或 --show-nonprinting

  范例:

  cat -n textfile1 > textfile2 把 textfile1 的檔案內(nèi)容加上行號(hào)后輸入 textfile2 這個(gè)檔案里

  cat -b textfile1 textfile2 >> textfile3 把 textfile1 和 textfile2 的檔案內(nèi)容加上行號(hào)(空白行不加)之后將內(nèi)容附加到 textfile3 里。

  范例:

  把 textfile1 的檔案內(nèi)容加上行號(hào)后輸入 textfile2 這個(gè)檔案里

  cat -n textfile1 > textfile2

  把 textfile1 和 textfile2 的檔案內(nèi)容加上行號(hào)(空白行不加)之后將內(nèi)容附加到 textfile3 里。

  cat -b textfile1 textfile2 >> textfile3

  cat /dev/null > /etc/test.txt 此為清空/etc/test.txt檔案內(nèi)容

  cat 也可以用來(lái)制作 image file。例如要制作軟碟的 image file,將軟碟放好后打

  cat /dev/fd0 > OUTFILE

  相反的,如果想把 image file 寫(xiě)到軟碟,請(qǐng)打

  cat IMG_FILE > /dev/fd0

  注:

  1. OUTFILE 指輸出的 image 檔名。

  2. IMG_FILE 指 image file。

  3. 若從 image file 寫(xiě)回 device 時(shí),device 容量需與相當(dāng)。

  4. 通常用在制作開(kāi)機(jī)磁片。

  指令名稱 : chmod

  使用權(quán)限 : 所有使用者

  使用方式 : chmod [-cfvR] [--help] [--version] mode file...

  說(shuō)明 : Linux/Unix 的檔案調(diào)用權(quán)限分為三級(jí) : 檔案擁有者、群組、其他。利用 chmod 可以藉以控制檔案如何被他人所調(diào)用。

  參數(shù) :

  mode : 權(quán)限設(shè)定字串,格式如下 : [ugoa...][[+-=][rwxX]...][,...],其中

  u 表示該檔案的擁有者,g 表示與該檔案的擁有者屬于同一個(gè)群體(group)者,o 表示其他以外的人,a 表示這三者皆是。

  + 表示增加權(quán)限、- 表示取消權(quán)限、= 表示唯一設(shè)定權(quán)限。

  r 表示可讀取,w 表示可寫(xiě)入,x 表示可執(zhí)行,X 表示只有當(dāng)該檔案是個(gè)子目錄或者該檔案已經(jīng)被設(shè)定過(guò)為可執(zhí)行。

  -c : 若該檔案權(quán)限確實(shí)已經(jīng)更改,才顯示其更改動(dòng)作

  -f : 若該檔案權(quán)限無(wú)法被更改也不要顯示錯(cuò)誤訊息

  -v : 顯示權(quán)限變更的詳細(xì)資料

  -R : 對(duì)目前目錄下的所有檔案與子目錄進(jìn)行相同的權(quán)限變更(即以遞回的方式逐個(gè)變更)

  --help : 顯示輔助說(shuō)明

  --version : 顯示版本

  范例 :將檔案 file1.txt 設(shè)為所有人皆可讀取 :

  chmod ugo+r file1.txt

  將檔案 file1.txt 設(shè)為所有人皆可讀取 :

  chmod a+r file1.txt

  將檔案 file1.txt 與 file2.txt 設(shè)為該檔案擁有者,與其所屬同一個(gè)群體者可寫(xiě)入,但其他以外的人則不可寫(xiě)入 :

  chmod ug+w,o-w file1.txt file2.txt

  將 ex1.py 設(shè)定為只有該檔案擁有者可以執(zhí)行 :

  chmod u+x ex1.py

  將目前目錄下的所有檔案與子目錄皆設(shè)為任何人可讀取 :

  chmod -R a+r *

  此外chmod也可以用數(shù)字來(lái)表示權(quán)限如 chmod 777 file

  語(yǔ)法為:chmod abc file

  其中a,b,c各為一個(gè)數(shù)字,分別表示User、Group、及Other的權(quán)限。

  r=4,w=2,x=1

  若要rwx屬性則4+2+1=7;

  若要rw-屬性則4+2=6;

  若要r-x屬性則4+1=7。

  范例:

  chmod a=rwx file

  和

  chmod 777 file

  效果相同

  chmod ug=rwx,o=x file

  和

  chmod 771 file

  效果相同

  若用chmod 4755 filename可使此程序具有root的權(quán)限

  指令名稱 : ln

  使用權(quán)限 : 所有使用者

  使用方式 : ln [options] source dist,其中 option 的格式為 :

  [-bdfinsvF] [-S backup-suffix] [-V {numbered,existing,simple}]

  [--help] [--version] [--]

  說(shuō)明 : Linux/Unix 檔案系統(tǒng)中,有所謂的連結(jié)(link),我們可以將其視為檔案的別名,而連結(jié)又可分為兩種 : 硬連結(jié)(hard link)與軟連結(jié)(symbolic link),硬連結(jié)的意思是一個(gè)檔案可以有多個(gè)名稱,而軟連結(jié)的方式則是產(chǎn)生一個(gè)特殊的檔案,該檔案的內(nèi)容是指向另一個(gè)檔案的位置。硬連結(jié)是存在同一個(gè)檔案系統(tǒng)中,而軟連結(jié)卻可以跨越不同的檔案系統(tǒng)。

  ln source dist 是產(chǎn)生一個(gè)連結(jié)(dist)到 source,至于使用硬連結(jié)或軟鏈結(jié)則由參數(shù)決定。

  不論是硬連結(jié)或軟鏈結(jié)都不會(huì)將原本的檔案復(fù)制一份,只會(huì)占用非常少量的磁碟空間。

  參數(shù) :

  -f : 鏈結(jié)時(shí)先將與 dist 同檔名的檔案刪除-d : 允許系統(tǒng)管理者硬鏈結(jié)自己的目錄-i : 在刪除與 dist 同檔名的檔案時(shí)先進(jìn)行詢問(wèn)-n : 在進(jìn)行軟連結(jié)時(shí),將 dist 視為一般的檔案-s : 進(jìn)行軟鏈結(jié)(symbolic link)-v : 在連結(jié)之前顯示其檔名-b : 將在鏈結(jié)時(shí)會(huì)被覆寫(xiě)或刪除的檔案進(jìn)行備份-S SUFFIX : 將備份的檔案都加上

  SUFFIX 的字尾-V METHOD : 指定備份的方式--help : 顯示輔助說(shuō)明--version : 顯示版本

  范例 :

  將檔案 yy 產(chǎn)生一個(gè) symbolic link : zz

  ln -s yy zz

  將檔案 yy 產(chǎn)生一個(gè) hard link : zz

  ln yy xx

  名稱:locate

  使用權(quán)限:所有使用者

  使用方式: locate [-q] [-d ] [--database= ]

  locate [-r ] [--regexp= ]

  locate [-qv] [-o ] [--output= ]

  locate [-e ] [-f ] <[-l ] [-c]

  <[-U ] [-u]>

  locate [-Vh] [--version] [--help]

  說(shuō)明:

  locate 讓使用者可以很快速的搜尋檔案系統(tǒng)內(nèi)是否有指定的檔案。其方法是先建立一個(gè)包括系統(tǒng)內(nèi)所有檔案名稱及路徑的數(shù)據(jù)庫(kù),之后當(dāng)尋找時(shí)就只需查詢這個(gè)數(shù)據(jù)庫(kù),而不必實(shí)際深入檔案系統(tǒng)之中了。

  在一般的 distribution 之中,數(shù)據(jù)庫(kù)的建立都被放在 contab 中自動(dòng)執(zhí)行。一般使用者在使用時(shí)只要用

  # locate your_file_name的型式就可以了。

  參數(shù):

  -u

  -U

  建立數(shù)據(jù)庫(kù),-u 會(huì)由根目錄開(kāi)始,-U 則可以指定開(kāi)始的位置。

  -e

  將 排除在尋找的范圍之外。

  -l

  如果 是 1.則啟動(dòng)安全模式。在安全模式下,使用者不會(huì)看到權(quán)限無(wú)法看到的檔案。這會(huì)始速度減慢,因?yàn)?locate 必須至實(shí)際的檔案系統(tǒng)中取得檔案的權(quán)限資料。

  -f

  將特定的檔案系統(tǒng)排除在外,例如我們沒(méi)有到理要把 proc 檔案系統(tǒng)中的檔案放在數(shù)據(jù)庫(kù)中。

  -q

  安靜模式,不會(huì)顯示任何錯(cuò)誤訊息。

  -n

  至多顯示 個(gè)輸出。

  -r

  使用正規(guī)運(yùn)算式 做尋找的條件。

  -o

  指定數(shù)據(jù)庫(kù)存的名稱。

  -d

  指定數(shù)據(jù)庫(kù)的路徑

  -h

  顯示輔助訊息

  -v

  顯示更多的訊息

  -V

  顯示程序的版本訊息 范例:

  locate chdrv : 尋找所有叫 chdrv 的檔案

  locate -n 100 a.out : 尋找所有叫 a.out 的檔案,但最多只顯示 100 個(gè)

  locate -u : 建立數(shù)據(jù)庫(kù)

  locate命令可以在搜尋數(shù)據(jù)庫(kù)時(shí)快速找到檔案,數(shù)據(jù)庫(kù)由updatedb程序來(lái)更新,updatedb是由cron daemon周期性建立的,locate命令在搜尋數(shù)據(jù)庫(kù)時(shí)比由整個(gè)由硬盤(pán)資料來(lái)搜尋資料來(lái)得快,但較差勁的是locate所找到的檔案若是最近才建立或剛更名的,可能會(huì)找不到,在內(nèi)定值中,updatedb每天會(huì)跑一次,可以由修改crontab來(lái)更新設(shè)定值。(etc/crontab)

  locate指定用在搜尋符合條件的檔案,它會(huì)去儲(chǔ)存檔案與目錄名稱的數(shù)據(jù)庫(kù)內(nèi),尋找合乎范本樣式條件的檔案或目錄錄,可以使用特殊字元(如”*” 或”?”等)來(lái)指定范本樣式,如指定范本為kcpa*ner, locate會(huì)找出所有起始字串為kcpa且結(jié)尾為ner的檔案或目錄,如名稱為kcpartner若目錄錄名稱為kcpa_ner則會(huì)列出該目錄下包括子目錄在內(nèi)的所有檔案。

  locate指令和find找尋檔案的功能類似,但locate是透過(guò)update程序?qū)⒂脖P(pán)中的所有檔案和目錄資料先建立一個(gè)索引數(shù)據(jù)庫(kù),在執(zhí)行 loacte時(shí)直接找該索引,查詢速度會(huì)較快,索引數(shù)據(jù)庫(kù)一般是由操作系統(tǒng)管理,但也可以直接下達(dá)update強(qiáng)迫系統(tǒng)立即修改索引數(shù)據(jù)庫(kù)。

  不過(guò)第一次在執(zhí)行update後再使用locate尋找檔案常會(huì)失敗,此時(shí)就要執(zhí)行slocate ˉu該命令(也可執(zhí)行updatedb指令,其效果相同)來(lái)更新slocate數(shù)據(jù)庫(kù),該命令會(huì)在/usr/sbin下產(chǎn)生slocate執(zhí)行檔,再由 locate到此數(shù)據(jù)庫(kù)尋找所要找的資料。

  linux指令大全(一)(轉(zhuǎn)自linuxeden.com)

  cat cd

  chmod chown

  cp cut

  名稱:cat

  使用權(quán)限:所有使用者

  使用方式:cat [-AbeEnstTuv] [--help] [--version] fileName

  說(shuō)明:把檔案串連接后傳到基本輸出(螢?zāi)换蚣?> fileName 到另一個(gè)檔案)

  參數(shù):

  -n 或 --number 由 1 開(kāi)始對(duì)所有輸出的行數(shù)編號(hào)

  -b 或 --number-nonblank 和 -n 相似,只不過(guò)對(duì)于空白行不編號(hào)

  -s 或 --squeeze-blank 當(dāng)遇到有連續(xù)兩行以上的空白行,就代換為一行的空白行

  -v 或 --show-nonprinting

  范例:

  cat -n textfile1 > textfile2 把 textfile1 的檔案內(nèi)容加上行號(hào)后輸入 textfile2 這個(gè)檔案里

  cat -b textfile1 textfile2 >> textfile3 把 textfile1 和 textfile2 的檔案內(nèi)容加上行號(hào)(空白行不加)之后將內(nèi)容附加到 textfile3

  名稱 : cd

  使用權(quán)限 : 所有使用者

  使用方式 : cd [dirName]

  說(shuō)明 : 變換工作目錄至 dirName。 其中 dirName 表示法可為絕對(duì)路徑或相對(duì)路徑。若目錄名稱省略,則變換至使用者的 home directory (也就是剛 login 時(shí)所在的目錄)。

  另外,"~" 也表示為 home directory 的意思,"." 則是表示目前所在的目錄,".." 則表示目前目錄位置的上一層目錄。

  范例 : 跳到 /usr/bin/ :

  cd /usr/bin

  跳到自己的 home directory :

  cd ~

  跳到目前目錄的上上兩層 :

  cd ../..

  指令名稱 : chmod

  使用權(quán)限 : 所有使用者

  使用方式 : chmod [-cfvR] [--help] [--version] mode file...

  說(shuō)明 : Linux/Unix 的檔案存取權(quán)限分為三級(jí) : 檔案擁有者、群組、其他。利用 chmod 可以藉以控制檔案如何被他人所存取。

  把計(jì) :

  mode : 權(quán)限設(shè)定字串,格式如下 : [ugoa...][[+-=][rwxX]...][,...],其中u 表示該檔案的擁有者,g 表示與該檔案的擁有者屬于同一個(gè)群體(group)者,o 表示其他以外的人,a 表示這三者皆是。

  + 表示增加權(quán)限、- 表示取消權(quán)限、= 表示唯一設(shè)定權(quán)限。

  r 表示可讀取,w 表示可寫(xiě)入,x 表示可執(zhí)行,X 表示只有當(dāng)該檔案是個(gè)子目錄或者該檔案已經(jīng)被設(shè)定過(guò)為可執(zhí)行。

  -c : 若該檔案權(quán)限確實(shí)已經(jīng)更改,才顯示其更改動(dòng)作

  -f : 若該檔案權(quán)限無(wú)法被更改也不要顯示錯(cuò)誤訊息

  -v : 顯示權(quán)限變更的詳細(xì)資料

  -R : 對(duì)目前目錄下的所有檔案與子目錄進(jìn)行相同的權(quán)限變更(即以遞回的方式逐個(gè)變更)

  --help : 顯示輔助說(shuō)明

  --version : 顯示版本

  范例 :將檔案 file1.txt 設(shè)為所有人皆可讀取 :

  chmod ugo+r file1.txt

  將檔案 file1.txt 設(shè)為所有人皆可讀取 :

  chmod a+r file1.txt

  將檔案 file1.txt 與 file2.txt 設(shè)為該檔案擁有者,與其所屬同一個(gè)群體者可寫(xiě)入,但其他以外的人則不可寫(xiě)入 :

  chmod ug+w,o-w file1.txt file2.txt

  將 ex1.py 設(shè)定為只有該檔案擁有者可以執(zhí)行 :

  chmod u+x ex1.py

  將目前目錄下的所有檔案與子目錄皆設(shè)為任何人可讀取 :

  chmod -R a+r *

  此外chmod也可以用數(shù)字來(lái)表示權(quán)限如 chmod 777 file

  語(yǔ)法為:chmod abc file

  其中a,b,c各為一個(gè)數(shù)字,分別表示User、Group、及Other的權(quán)限。

  r=4,w=2,x=1

  若要rwx屬性則4+2+1=7;

  若要rw-屬性則4+2=6;

  若要r-x屬性則4+1=7。

  范例:

  chmod a=rwx file

  和

  chmod 777 file

  效果相同

  chmod ug=rwx,o=x file

  和

  chmod 771 file

  效果相同

  若用chmod 4755 filename可使此程式具有root的權(quán)限

  指令名稱 : chown

  使用權(quán)限 : root

  使用方式 : chmod [-cfhvR] [--help] [--version] user[:group] file...

  說(shuō)明 : Linux/Unix 是多人多工作業(yè)系統(tǒng),所有的檔案皆有擁有者。利用 chown 可以將檔案的擁有者加以改變。一般來(lái)說(shuō),這個(gè)指令只有是由系統(tǒng)管理者(root)所使用,一般使用者沒(méi)有權(quán)限可以改變別人的檔案擁有者,也沒(méi)有權(quán)限可以自己的檔案擁有者改設(shè)為別人。只有系統(tǒng)管理者(root)才有這樣的權(quán)限。

  把計(jì) :

  user : 新的檔案擁有者的使用者 IDgroup : 新的檔案擁有者的使用者群體(group)-c : 若該檔案擁有者確實(shí)已經(jīng)更改,才顯示其更改動(dòng)作-f : 若該檔案擁有者無(wú)法被更改也不要顯示錯(cuò)誤訊息-h : 只對(duì)于連結(jié)(link)進(jìn)行變更,而非該 link 真正指向的檔案-v : 顯示擁有者變更的詳細(xì)資料-R : 對(duì)目前目錄下的所有檔案與子目錄進(jìn)行相同的擁有者變更(即以遞回的方式逐個(gè)變更)--help

  : 顯示輔助說(shuō)明--version : 顯示版本

  范例 :

  將檔案 file1.txt 的擁有者設(shè)為 users 群體的使用者 jessie :

  chown jessie:users file1.txt

  將目前目錄下的所有檔案與子目錄的擁有者皆設(shè)為 users 群體的使用者 lamport :

  chmod -R lamport:users *

  名稱:cp

  使用權(quán)限:所有使用者

  使用方式:

  cp [options] source dest

  cp [options] source... directory

  說(shuō)明:將一個(gè)檔案拷貝至另一檔案,或?qū)?shù)個(gè)檔案拷貝至另一目錄。

  把計(jì)?

  -a 盡可能將檔案狀態(tài)、權(quán)限等資料都照原狀予以復(fù)制。

  -r 若 source 中含有目錄名,則將目錄下之檔案亦皆依序拷貝至目的地。

  -f 若目的地已經(jīng)有相同檔名的檔案存在,則在復(fù)制前先予以刪除再行復(fù)制。

  范例:

  將檔案 aaa 復(fù)制(已存在),并命名為 bbb :

  cp aaa bbb

  將所有的C語(yǔ)言程式拷貝至 Finished 子目錄中 :

  cp *.c Finished

  名稱:cut

  使用權(quán)限:所有使用者

  用法:cut -cnum1-num2 filename

  說(shuō)明:顯示每行從開(kāi)頭算起 num1 到 num2 的文字。

  范例:

  shell>> cat example

  test2

  this is test1

  shell>> cut -c0-6 example ## print 開(kāi)頭算起前 6 個(gè)字元

  test2

  this i

  名稱 : find

  用法 : find

  使用說(shuō)明 :

  將檔案系統(tǒng)內(nèi)符合 expression 的檔案列出來(lái)。你可以指要檔案的名稱、類別、時(shí)間、大小、權(quán)限等不同資訊的組合,只有完全相符的才會(huì)被列出來(lái)。

  find 根據(jù)下列規(guī)則判斷 path 和 expression,在命令列上第一個(gè) - ( ) , ! 之前的部份為 path,之后的是 expression。如果 path 是空字串則使用目前路徑,如果 expression 是空字串則使用 -print 為預(yù)設(shè) expression?

  expression 中可使用的選項(xiàng)有二三十個(gè)之多,在此只介紹最常用的部份。

  -mount, -xdev : 只檢查和指定目錄在同一個(gè)檔案系統(tǒng)下的檔案,避免列出其它檔案系統(tǒng)中的檔案

  -amin n : 在過(guò)去 n 分鐘內(nèi)被讀取過(guò)

  -anewer file : 比檔案 file 更晚被讀取過(guò)的檔案

  -atime n : 在過(guò)去 n 天過(guò)讀取過(guò)的檔案

  -cmin n : 在過(guò)去 n 分鐘內(nèi)被修改過(guò)

  -cnewer file :比檔案 file 更新的檔案

  -ctime n : 在過(guò)去 n 天過(guò)修改過(guò)的檔案

  -empty : 空的檔案-gid n or -group name : gid 是 n 或是 group 名稱是 name

  -ipath p, -path p : 路徑名稱符合 p 的檔案,ipath 會(huì)忽略大小寫(xiě)

  -name name, -iname name : 檔案名稱符合 name 的檔案。iname 會(huì)忽略大小寫(xiě)

  -size n : 檔案大小 是 n 單位,b 代表 512 位元組的區(qū)塊,c 表示字元數(shù),k 表示 kilo bytes,w 是二個(gè)位元組。-type c : 檔案類型是 c 的檔案。

  d: 目錄

  c: 字型裝置檔案

  b: 區(qū)塊裝置檔案

  p: 具名貯列

  f: 一般檔案

  l: 符號(hào)連結(jié)

  s: socket

  -pid n : process id 是 n 的檔案

  你可以使用 ( ) 將運(yùn)算式分隔,并使用下列運(yùn)算。

  exp1 -and exp2

  ! expr

  -not expr

  exp1 -or exp2

  exp1, exp2

  范例:

  將目前目錄及其子目錄下所有延伸檔名是 c 的檔案列出來(lái)。

  # find . -name "*.c"

  將目前目錄其其下子目錄中所有一般檔案列出

  # find . -ftype f

  將目前目錄及其子目錄下所有最近 20 分鐘內(nèi)更新過(guò)的檔案列出

  # find . -ctime -20

  名稱:less

  使用權(quán)限:所有使用者

  使用方式:

  less [Option] filename

  說(shuō)明:

  less 的作用與 more 十分相似,都可以用來(lái)瀏覽文字檔案的內(nèi)容,不同的是 less 允許使用者往回卷動(dòng)

  以瀏覽已經(jīng)看過(guò)的部份,同時(shí)因?yàn)?less 并未在一開(kāi)始就讀入整個(gè)檔案,因此在遇上大型檔案的開(kāi)啟時(shí),會(huì)比一般的文書(shū)編輯器(如 vi)來(lái)的快速。

  范例:

  指令名稱 : ln

  使用權(quán)限 : 所有使用者

  使用方式 : ln [options] source dist,其中 option 的格式為 :

  [-bdfinsvF] [-S backup-suffix] [-V {numbered,existing,simple}]

  [--help] [--version] [--]

  說(shuō)明 : Linux/Unix 檔案系統(tǒng)中,有所謂的連結(jié)(link),我們可以將其視為檔案的別名,而連結(jié)又可分為兩種 : 硬連結(jié)(hard link)與軟連結(jié)(symbolic link),硬連結(jié)的意思是一個(gè)檔案可以有多個(gè)名稱,而軟連結(jié)的方式則是產(chǎn)生一個(gè)特殊的檔案,該檔案的內(nèi)容是指向另一個(gè)檔案的位置。硬連結(jié)是存在同一個(gè)檔案系統(tǒng)中,而軟連結(jié)卻可以跨越不同的檔案系統(tǒng)。

  ln source dist 是產(chǎn)生一個(gè)連結(jié)(dist)到 source,至于使用硬連結(jié)或軟鏈結(jié)則由參數(shù)決定。

  不論是硬連結(jié)或軟鏈結(jié)都不會(huì)將原本的檔案復(fù)制一份,只會(huì)占用非常少量的磁碟空間。

  -f : 鏈結(jié)時(shí)先將與 dist 同檔名的檔案刪除-d : 允許系統(tǒng)管理者硬鏈結(jié)自己的目錄-i : 在刪除與 dist 同檔名的檔案時(shí)先進(jìn)行詢問(wèn)-n : 在進(jìn)行軟連結(jié)時(shí),將 dist 視為一般的檔案-s : 進(jìn)行軟鏈結(jié)(symbolic link)-v : 在連結(jié)之前顯示其檔名-b : 將在鏈結(jié)時(shí)會(huì)被覆寫(xiě)或刪除的檔案進(jìn)行備份-S SUFFIX : 將備份的檔案都加上

  SUFFIX 的字尾-V METHOD : 指定備份的方式--help : 顯示輔助說(shuō)明--version : 顯示版本

  范例 :

  將檔案 yy 產(chǎn)生一個(gè) symbolic link : zz

  ln -s yy zz

  將檔案 yy 產(chǎn)生一個(gè) hard link : zz

  ln yy xx

  名稱:locate

  使用權(quán)限:所有使用者

  使用方式: locate [-q] [-d ] [--database=]

  locate [-r ] [--regexp=]

  locate [-qv] [-o ] [--output=]

  locate [-e ] [-f ] <[-l ] [-c]

  <[-U ] [-u]>

  locate [-Vh] [--version] [--help]

  說(shuō)明:

  locate 讓使用者可以很快速的搜尋檔案系統(tǒng)內(nèi)是否有指定的檔案。其方法是先建立一個(gè)包括系統(tǒng)內(nèi)所有檔案名稱及路徑的資料庫(kù),之后當(dāng)尋找時(shí)就只需查詢這個(gè)資料庫(kù),而不必實(shí)際深入檔案系統(tǒng)之中了。

  在一般的 distribution 之中,資料庫(kù)的建立都被放在 contab 中自動(dòng)執(zhí)行。一般使用者在使用時(shí)只要用

  # locate your_file_name

  的型式就可以了。 參數(shù):

  -u

  -U

  建立資料庫(kù),-u 會(huì)由根目錄開(kāi)始,-U 則可以指定開(kāi)始的位置。

  -e

  將

  排除在尋找的范圍之外。

  -l

  如果 是 1.則啟動(dòng)安全模式。在安全模式下,使用者不會(huì)看到權(quán)限無(wú)法看到的檔案。這會(huì)始速度減慢,因?yàn)?locate 必須至實(shí)際的檔案系統(tǒng)中取得檔案的權(quán)限資料。

  -f

  將特定的檔案系統(tǒng)排除在外,例如我們沒(méi)有到理要把 proc 檔案系統(tǒng)中的檔案放在資料庫(kù)中。

  -q

  安靜模式,不會(huì)顯示任何錯(cuò)誤訊息。

  -n

  至多顯示 個(gè)輸出。

  -r

  使用正規(guī)運(yùn)算式 做尋找的條件。

  -o

  指定資料庫(kù)存的名稱。

  -d

  指定資料庫(kù)的路徑

  -h

  顯示輔助訊息

  -v

  顯示更多的訊息

  -V

  顯示程式的版本訊息 范例:

  locate chdrv : 尋找所有叫 chdrv 的檔案

  locate -n 100 a.out : 尋找所有叫 a.out 的檔案,但最多只顯示 100 個(gè)

  locate -u : 建立資料庫(kù)

  名稱 : ls

  使用權(quán)限 : 所有使用者

  使用方式 : ls [-alrtAFR] [name...]

  說(shuō)明 : 顯示指定工作目錄下之內(nèi)容(列出目前工作目錄所含之檔案及子目錄)。

  -a 顯示所有檔案及目錄 (ls內(nèi)定將檔案名或目錄名稱開(kāi)頭為"."的視為隱藏檔,不會(huì)列出)

  -l 除檔案名稱外,亦將檔案型態(tài)、權(quán)限、擁有者、檔案大小等資訊詳細(xì)列出

  -r 將檔案以相反次序顯示(原定依英文字母次序)

  -t 將檔案依建立時(shí)間之先后次序列出

  -A 同 -a ,但不列出 "." (目前目錄) 及 ".." (父目錄)

  -F 在列出的檔案名稱后加一符號(hào);例如可執(zhí)行檔則加 "*", 目錄則加 "/"

  -R 若目錄下有檔案,則以下之檔案亦皆依序列出

  范例:

  列出目前工作目錄下所有名稱是 s 開(kāi)頭的檔案,愈新的排愈后面 :

  ls -ltr s*

  將 /bin 目錄以下所有目錄及檔案詳細(xì)資料列出 :

  ls -lR /bin

  列出目前工作目錄下所有檔案及目錄;目錄于名稱后加 "/", 可執(zhí)行檔于名稱后加 "*" :

  ls -AF

  名稱:more

  使用權(quán)限:所有使用者

  使用方式:more [-dlfpcsu] [-num] [+/pattern] [+linenum] [fileNames..]

  說(shuō)明:類似 cat ,不過(guò)會(huì)以一頁(yè)一頁(yè)的顯示方便使用者逐頁(yè)閱讀,而最基本的指令就是按空白鍵(space)就往下一頁(yè)顯示,按 b 鍵就會(huì)往回(back)一頁(yè)顯示,而且還有搜尋字串的功能(與 vi 相似),使用中的說(shuō)明文件,請(qǐng)按 h 。

  參數(shù):-num 一次顯示的行數(shù)

  -d 提示使用者,在畫(huà)面下方顯示 [Press space to continue, q to quit.] ,如果使用者按錯(cuò)鍵,則會(huì)顯示 [Press h for instructions.] 而不是 嗶 聲

  -l 取消遇見(jiàn)特殊字元 ^L(送紙字元)時(shí)會(huì)暫停的功能

  -f 計(jì)算行數(shù)時(shí),以實(shí)際上的行數(shù),而非自動(dòng)換行過(guò)后的行數(shù)(有些單行字?jǐn)?shù)太長(zhǎng)的會(huì)被擴(kuò)展為兩行或兩行以上)

  -p 不以卷動(dòng)的方式顯示每一頁(yè),而是先清除螢?zāi)缓笤亠@示內(nèi)容

  -c 跟 -p 相似,不同的是先顯示內(nèi)容再清除其他舊資料

  -s 當(dāng)遇到有連續(xù)兩行以上的空白行,就代換為一行的空白行

  -u 不顯示下引號(hào) (根據(jù)環(huán)境變數(shù) TERM 指定的 terminal 而有所不同)

  +/ 在每個(gè)檔案顯示前搜尋該字串(pattern),然后從該字串之后開(kāi)始顯示

  +num 從第 num 行開(kāi)始顯示

  fileNames 欲顯示內(nèi)容的檔案,可為復(fù)數(shù)個(gè)數(shù)

  范例:

  more -s testfile 逐頁(yè)顯示 testfile 之檔案內(nèi)容,如有連續(xù)兩行以上空白行則以一行空白行顯示。

  more +20 testfile 從第 20 行開(kāi)始顯示 testfile 之檔案內(nèi)容。

  名稱:mv

  使用權(quán)限:所有使用者

  使用方式:

  mv [options] source dest

  mv [options] source... directory

  說(shuō)明:將一個(gè)檔案移至另一檔案,或?qū)?shù)個(gè)檔案移至另一目錄。

  參數(shù):-i 若目的地已有同名檔案,則先詢問(wèn)是否覆蓋舊檔。

  范例:

  將檔案 aaa 更名為 bbb :

  mv aaa bbb

  將所有的C語(yǔ)言程式移至 Finished 子目錄中 :

  mv -i *.c

  名稱:rm

  使用權(quán)限:所有使用者

  使用方式:rm [options] name...

  說(shuō)明:刪除檔案及目錄。

  把計(jì)?

  -i 刪除前逐一詢問(wèn)確認(rèn)。

  -f 即使原檔案屬性設(shè)為唯讀,亦直接刪除,無(wú)需逐一確認(rèn)。

  -r 將目錄及以下之檔案亦逐一刪除。

  范例:

  刪除所有C語(yǔ)言程式檔;刪除前逐一詢問(wèn)確認(rèn) :

  rm -i *.c

  將 Finished 子目錄及子目錄中所有檔案刪除 :

  rm -r Finished

  名稱:rmdir

  使用權(quán)限:于目前目錄有適當(dāng)權(quán)限的所有使用者

  使用方式: rmdir [-p] dirName

  說(shuō)明: 刪除空的目錄。

  參數(shù): -p 是當(dāng)子目錄被刪除后使它也成為空目錄的話,則順便一并刪除。

  范例:

  將工作目錄下,名為 AAA 的子目錄刪除 :

  rmdir AAA

  在工作目錄下的 BBB 目錄中,刪除名為 Test 的子目錄。若 Test 刪除后,BBB 目錄成為空目錄,則 BBB 亦予刪除。

  rmdir -p BBB/Test

  名稱:split

  使用權(quán)限:所有使用者

  使用方式:split [OPTION] [INPUT [PREFIX]]

  說(shuō)明:

  將一個(gè)檔案分割成數(shù)個(gè)。而從 INPUT 分割輸出成固定大小的檔案,其檔名依序?yàn)?PREFIXaa, PREFIXab...;PREFIX 預(yù)設(shè)值為 `x。若沒(méi)有 INPUT 檔或?yàn)?`-,則從標(biāo)準(zhǔn)輸入讀進(jìn)資料。

  匡兜?

  -b, --bytes=SIZE

  SIZE 值為每一輸出檔案的大小,單位為 byte。

  -C, --line-bytes=SIZE

  每一輸出檔中,單行的最大 byte 數(shù)。

  -l, --lines=NUMBER

  NUMBER 值為每一輸出檔的列數(shù)大小。

  -NUMBER

  與 -l NUMBER 相同。

  --verbose

  于每個(gè)輸出檔被開(kāi)啟前,列印出偵錯(cuò)資訊到標(biāo)準(zhǔn)錯(cuò)誤輸出。

  --help

  顯示輔助資訊然后離開(kāi)。

  --version

  列出版本資訊然后離開(kāi)。

  SIZE 可加入單位: b 代表 512, k 代表 1K, m 代表 1 Meg。

  范例:

  PostgresSQL 大型資料庫(kù)備份與回存:

  因 Postgres 允許表格大過(guò)你系統(tǒng)檔案的最大容量,所以要將表格 dump 到單一的檔案可能會(huì)有問(wèn)題,使用 split進(jìn)行檔案分割。

  % pg_dump dbname | split -b 1m - filename.dump.

  重新載入

  % createdb dbname

  % cat filename.dump.* | pgsql dbname

  名稱:touch

  使用權(quán)限:所有使用者

  使用方式:

  touch [-acfm]

  [-r reference-file] [--file=reference-file]

  [-t MMDDhhmm[[CC]YY][.ss]]

  [-d time] [--date=time] [--time={atime,access,use,mtime,modify}]

  [--no-create] [--help] [--version]

  file1 [file2 ...]

  說(shuō)明:

  touch 指令改變檔案的時(shí)間記錄。 ls -l 可以顯示檔案的時(shí)間記錄。

  參數(shù):

  a 改變檔案的讀取時(shí)間記錄。

  m 改變檔案的修改時(shí)間記錄。

  c 假如目的檔案不存在,不會(huì)建立新的檔案。與 --no-create 的效果一樣。

  f 不使用,是為了與其他 unix 系統(tǒng)的相容性而保留。

  r 使用參考檔的時(shí)間記錄,與 --file 的效果一樣。

  d 設(shè)定時(shí)間與日期,可以使用各種不同的格式。

  t 設(shè)定檔案的時(shí)間記錄,格式與 date 指令相同。

  --no-create 不會(huì)建立新檔案。

  --help 列出指令格式。

  --version 列出版本訊息。

  范例:

  最簡(jiǎn)單的使用方式,將檔案的時(shí)候記錄改為現(xiàn)在的時(shí)間。若檔案不存在,系統(tǒng)會(huì)建立一個(gè)新的檔案。

  touch file

  touch file1 file2

  將 file 的時(shí)間記錄改為 5 月 6 日 18 點(diǎn) 3 分,公元兩千年。時(shí)間的格式可以參考 date 指令,至少需輸入 MMDDHHmm ,就是月日時(shí)與分。

  touch -c -t 05061803 file

  touch -c -t 050618032000 file

  將 file 的時(shí)間記錄改變成與 referencefile 一樣。

  touch -r referencefile file

  將 file 的時(shí)間記錄改成 5 月 6 日 18 點(diǎn) 3 分,公元兩千年。時(shí)間可以使用 am, pm 或是 24 小時(shí)的格式,日期可以使用其他格式如 6 May 2000 。

  touch -d "6:03pm" file

  touch -d "05/06/2000" file

  touch -d "6:03pm 05/06/2000" file

  linux指令大全(二)(轉(zhuǎn)自linuxeden.com)

  名稱 : at

  使用權(quán)限 : 所有使用者

  使用方式 : at -V [-q queue] [-f file] [-mldbv] TIME

  說(shuō)明 : at 可以讓使用者指定在 TIME 這個(gè)特定時(shí)刻執(zhí)行某個(gè)程式或指令,TIME 的格式是 HH:MM其中的 HH 為小時(shí),MM 為分鐘,甚至你也可以指定 am, pm, midnight, noon, teatime(就是下午 4 點(diǎn)鍾)等口語(yǔ)詞。

  如果想要指定超過(guò)一天內(nèi)的時(shí)間,則可以用 MMDDYY 或者 MM/DD/YY 的格式,其中 MM 是分鐘,DD 是第幾日,YY 是指年份。另外,使用者甚至也可以使用像是 now + 時(shí)間間隔來(lái)彈性指定時(shí)間,其中的時(shí)間間隔可以是 minutes, hours, days, weeks?

  另外,使用者也可指定 today 或 tomorrow 來(lái)表示今天或明天。當(dāng)指定了時(shí)間并按下 enter 之后,at 會(huì)進(jìn)入交談模式并要求輸入指令或程式,當(dāng)你輸入完后按下 ctrl+D 即可完成所有動(dòng)作,至于執(zhí)行的結(jié)果將會(huì)寄回你的帳號(hào)中。

  把計(jì) :

  -V : 印出版本編號(hào)

  -q : 使用指定的佇列(Queue)來(lái)儲(chǔ)存,at 的資料是存放在所謂的 queue 中,使用者可以同時(shí)使用多個(gè) queue,而 queue 的編號(hào)為 a, b, c... z 以及 A, B, ... Z 共 52 個(gè)

  -m : 即使程式/指令執(zhí)行完成后沒(méi)有輸出結(jié)果, 也要寄封信給使用者

  -f file : 讀入預(yù)先寫(xiě)好的命令檔。使用者不一定要使用交談模式來(lái)輸入,可以先將所有的指定先寫(xiě)入檔案后再一次讀入

  -l : 列出所有的指定 (使用者也可以直接使用 atq 而不用 at -l)

  -d : 刪除指定 (使用者也可以直接使用 atrm 而不用 at -d)

  -v : 列出所有已經(jīng)完成但尚未刪除的指定

  例子 :

  三天后的下午 5 點(diǎn)鍾執(zhí)行 /bin/ls :

  at 5pm + 3 days /bin/ls

  三個(gè)星期后的下午 5 點(diǎn)鍾執(zhí)行 /bin/ls :

  at 5pm + 2 weeks /bin/ls

  明天的 17:20 執(zhí)行 /bin/date :

  at 17:20 tomorrow /bin/date

  1999 年的最后一天的最后一分鐘印出 the end of world !

  at 23:59 12/31/1999 echo the end of world !

  名稱:cal

  使用權(quán)限:所有使用者

  使用方式:cal [-mjy] [month [year]]

  說(shuō)明:

  顯示日歷。若只有一個(gè)參數(shù),則代表年份(1-9999),顯示該年的年歷。年份必須全部寫(xiě)出:``cal 89\ 將不會(huì)是顯示 1989 年的年歷。使用兩個(gè)參數(shù),則表示月份及年份。若沒(méi)有參數(shù)則顯示這個(gè)月的月歷。

  1752 年 9 月第 3 日起改用西洋新歷,因這時(shí)大部份的國(guó)家都采用新歷,有 10 天被去除,所以該月份的月歷有些不同。在此之前為西洋舊歷。

  匡兜?

  -m : 以星期一為每周的第一天方式顯示。

  -j : 以凱撒歷顯示,即以一月一日起的天數(shù)顯示。

  -y : 顯示今年年歷。

  范例:

  cal : 顯示本月的月歷。

  [root@mylinux /root]# date

  Tue Aug 15 08:00:18 CST 2000

  [root@mylinux /root]# cal

  August 2000

  Su Mo Tu We Th Fr Sa

  1 2 3 4 5

  6 7 8 9 10 11 12

  13 14 15 16 17 18 19

  20 21 22 23 24 25 26

  27 28 29 30 31

  [root@mylinux /root]#

  cal 2001 : 顯示公元 2001 年年歷。

  [root@mylinux /root]# cal 2001

  2001

  January February March

  Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa

  1 2 3 4 5 6 1 2 3 1 2 3

  7 8 9 10 11 12 13 4 5 6 7 8 9 10 4 5 6 7 8 9 10

  14 15 16 17 18 19 20 11 12 13 14 15 16 17 11 12 13 14 15 16 17

  21 22 23 24 25 26 27 18 19 20 21 22 23 24 18 19 20 21 22 23 24

  28 29 30 31 25 26 27 28 25 26 27 28 29 30 31

  April May June

  Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa

  1 2 3 4 5 6 7 1 2 3 4 5 1 2

  8 9 10 11 12 13 14 6 7 8 9 10 11 12 3 4 5 6 7 8 9

  15 16 17 18 19 20 21 13 14 15 16 17 18 19 10 11 12 13 14 15 16

  22 23 24 25 26 27 28 20 21 22 23 24 25 26 17 18 19 20 21 22 23

  29 30 27 28 29 30 31 24 25 26 27 28 29 30

  July August September

  Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa

  1 2 3 4 5 6 7 1 2 3 4 1

  8 9 10 11 12 13 14 5 6 7 8 9 10 11 2 3 4 5 6 7 8

  15 16 17 18 19 20 21 12 13 14 15 16 17 18 9 10 11 12 13 14 15

  22 23 24 25 26 27 28 19 20 21 22 23 24 25 16 17 18 19 20 21 22

  29 30 31 26 27 28 29 30 31 23 24 25 26 27 28 29

  30

  October November December

  Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa

  1 2 3 4 5 6 1 2 3 1

  7 8 9 10 11 12 13 4 5 6 7 8 9 10 2 3 4 5 6 7 8

  14 15 16 17 18 19 20 11 12 13 14 15 16 17 9 10 11 12 13 14 15

  21 22 23 24 25 26 27 18 19 20 21 22 23 24 16 17 18 19 20 21 22

  28 29 30 31 25 26 27 28 29 30 23 24 25 26 27 28 29

  30 31

  [root@mylinux /root]#

  cal 5 2001 : 顯示公元 2001 年 5 月月歷。

  [root@mylinux /root]# cal 5 2001

  May 2001

  Su Mo Tu We Th Fr Sa

  1 2 3 4 5

  6 7 8 9 10 11 12

  13 14 15 16 17 18 19

  20 21 22 23 24 25 26

  27 28 29 30 31

  [root@mylinux /root]#

  cal -m : 以星期一為每周的第一天方式,顯示本月的月歷。

  [root@mylinux /root]# cal -m

  August 2000

  Mo Tu We Th Fr Sa Su

  1 2 3 4 5 6

  7 8 9 10 11 12 13

  14 15 16 17 18 19 20

  21 22 23 24 25 26 27

  28 29 30 31

  [root@mylinux /root]#

  cal -jy : 以一月一日起的天數(shù)顯示今年的年歷。

  [root@mylinux /root]# cal -jy

  2000

  January February

  Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat

  1 32 33 34 35 36

  2 3 4 5 6 7 8 37 38 39 40 41 42 43

  9 10 11 12 13 14 15 44 45 46 47 48 49 50

  16 17 18 19 20 21 22 51 52 53 54 55 56 57

  23 24 25 26 27 28 29 58 59 60

  30 31

  March April

  Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat

  61 62 63 64 92

  65 66 67 68 69 70 71 93 94 95 96 97 98 99

  72 73 74 75 76 77 78 100 101 102 103 104 105 106

  79 80 81 82 83 84 85 107 108 109 110 111 112 113

  86 87 88 89 90 91 114 115 116 117 118 119 120

  121

  May June

  Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat

  122 123 124 125 126 127 153 154 155

  128 129 130 131 132 133 134 156 157 158 159 160 161 162

  135 136 137 138 139 140 141 163 164 165 166 167 168 169

  142 143 144 145 146 147 148 170 171 172 173 174 175 176

  149 150 151 152 177 178 179 180 181 182

  July August

  Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat

  183 214 215 216 217 218

  184 185 186 187 188 189 190 219 220 221 222 223 224 225

  191 192 193 194 195 196 197 226 227 228 229 230 231 232

  198 199 200 201 202 203 204 233 234 235 236 237 238 239

  205 206 207 208 209 210 211 240 241 242 243 244

  212 213

  September October

  Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat

  245 246 275 276 277 278 279 280 281

  247 248 249 250 251 252 253 282 283 284 285 286 287 288

  254 255 256 257 258 259 260 289 290 291 292 293 294 295

  261 262 263 264 265 266 267 296 297 298 299 300 301 302

  268 269 270 271 272 273 274 303 304 305

  November December

  Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat

  306 307 308 309 336 337

  310 311 312 313 314 315 316 338 339 340 341 342 343 344

  317 318 319 320 321 322 323 345 346 347 348 349 350 351

  324 325 326 327 328 329 330 352 353 354 355 356 357 358

  331 332 333 334 335 359 360 361 362 363 364 365

  366

  [root@mylinux /root]#

  名稱 : crontab

  使用權(quán)限 : 所有使用者

  使用方式 :

  crontab [ -u user ] filecrontab [ -u user ] { -l | -r | -e }

  說(shuō)明 :

  crontab 是用來(lái)讓使用者在固定時(shí)間或固定間隔執(zhí)行程式之用,換句話說(shuō),也就是類似使用者的時(shí)程表。-u user 是指設(shè)定指定 user 的時(shí)程表,這個(gè)前提是你必須要有其權(quán)限(比如說(shuō)是 root)才能夠指定他人的時(shí)程表。如果不使用 -u user 的話,就是表示設(shè)定自己的時(shí)程表。

  餐數(shù) :

  -e : 執(zhí)行文字編輯器來(lái)設(shè)定時(shí)程表,內(nèi)定的文字編輯器是 VI,如果你想用別的文字編輯器,則請(qǐng)先設(shè)定 VISUAL 環(huán)境變數(shù)來(lái)指定使用那個(gè)文字編輯器(比如說(shuō) setenv VISUAL joe)

  -r : 刪除目前的時(shí)程表

  -l : 列出目前的時(shí)程表

  時(shí)程表的格式如下 :

  f1 f2 f3 f4 f5 program

  其中 f1 是表示分鐘,f2 表示小時(shí),f3 表示一個(gè)月份中的第幾日,f4 表示月份,f5 表示一個(gè)星期中的第幾天。program 表示要執(zhí)行的程式。

  當(dāng) f1 為 * 時(shí)表示每分鐘都要執(zhí)行 program,f2 為 * 時(shí)表示每小時(shí)都要執(zhí)行程式,其余類推

  當(dāng) f1 為 a-b 時(shí)表示從第 a 分鐘到第 b 分鐘這段時(shí)間內(nèi)要執(zhí)行,f2 為 a-b 時(shí)表示從第 a 到第 b 小時(shí)都要執(zhí)行,其余類推

  當(dāng) f1 為 */n 時(shí)表示每 n 分鐘個(gè)時(shí)間間隔執(zhí)行一次,f2 為 */n 表示每 n 小時(shí)個(gè)時(shí)間間隔執(zhí)行一次,其余類推

  當(dāng) f1 為 a, b, c,... 時(shí)表示第 a, b, c,... 分鐘要執(zhí)行,f2 為 a, b, c,... 時(shí)表示第 a, b, c...個(gè)小時(shí)要執(zhí)行,其余類推

  使用者也可以將所有的設(shè)定先存放在檔案 file 中,用 crontab file 的方式來(lái)設(shè)定時(shí)程表。

  例子 :

  每月每天每小時(shí)的第 0 分鐘執(zhí)行一次 /bin/ls :

  0 7 * * * /bin/ls

  在 12 月內(nèi), 每天的早上 6 點(diǎn)到 12 點(diǎn)中,每隔 20 分鐘執(zhí)行一次 /usr/bin/backup :

  0 6-12/3 * 12 * /usr/bin/backup

  周一到周五每天下午 5:00 寄一封信給 alex@domain.name :

  0 17 * * 1-5 mail -s "hi" alex@domain.name < /tmp/maildata

  每月每天的午夜 0 點(diǎn) 20 分, 2 點(diǎn) 20 分, 4 點(diǎn) 20 分....執(zhí)行 echo "haha"

  20 0-23/2 * * * echo "haha"

  注意 :

  當(dāng)程式在你所指定的時(shí)間執(zhí)行后,系統(tǒng)會(huì)寄一封信給你,顯示該程式執(zhí)行的內(nèi)容,若是你不希望收到這樣的信,請(qǐng)?jiān)诿恳恍锌找桓裰蠹由?> /dev/null 2>&1 即可。

  名稱 : date

  使用權(quán)限 : 所有使用者

  使用方式 :

  date [-u] [-d datestr] [-s datestr] [--utc] [--universal] [--date=datestr] [--set=datestr] [--help] [--version] [+FORMAT] [MMDDhhmm[[CC]YY][.ss]]

  說(shuō)明 :

  date 可以用來(lái)顯示或設(shè)定系統(tǒng)的日期與時(shí)間,在顯示方面,使用者可以設(shè)定欲顯示的格式,格式設(shè)定為一個(gè)加號(hào)后接數(shù)個(gè)標(biāo)記,其中可用的標(biāo)記列表如下 :

  時(shí)間方面 :

  % : 印出 %

  %n : 下一行

  %t : 跳格

  %H : 小時(shí)(00..23)

  %I : 小時(shí)(01..12)

  %k : 小時(shí)(0..23)

  %l : 小時(shí)(1..12)

  %M : 分鐘(00..59)

  %p : 顯示本地 AM 或 PM

  %r : 直接顯示時(shí)間 (12 小時(shí)制,格式為 hh:mm:ss [AP]M)

  %s : 從 1970 年 1 月 1 日 00:00:00 UTC 到目前為止的秒數(shù)

  %S : 秒(00..61)

  %T : 直接顯示時(shí)間 (24 小時(shí)制)

  %X : 相當(dāng)于 %H:%M:%S

  %Z : 顯示時(shí)區(qū)

  日期方面 :

  %a : 星期幾 (Sun..Sat)

  %A : 星期幾 (Sunday..Saturday)

  %b : 月份 (Jan..Dec)

  %B : 月份 (January..December)

  %c : 直接顯示日期與時(shí)間

  %d : 日 (01..31)

  %D : 直接顯示日期 (mm/dd/yy)

  %h : 同 %b

  %j : 一年中的第幾天 (001..366)

  %m : 月份 (01..12)

  %U : 一年中的第幾周 (00..53) (以 Sunday 為一周的第一天的情形)

  %w : 一周中的第幾天 (0..6)

  %W : 一年中的第幾周 (00..53) (以 Monday 為一周的第一天的情形)

  %x : 直接顯示日期 (mm/dd/yy)

  %y : 年份的最后兩位數(shù)字 (00.99)

  %Y : 完整年份 (0000..9999)

  若是不以加號(hào)作為開(kāi)頭,則表示要設(shè)定時(shí)間,而時(shí)間格式為 MMDDhhmm[[CC]YY][.ss],其中 MM 為月份,DD 為日,hh 為小時(shí),mm 為分鐘,CC 為年份前兩位數(shù)字,YY 為年份后兩位數(shù)字,ss 為秒數(shù)

  把計(jì) :

  -d datestr : 顯示 datestr 中所設(shè)定的時(shí)間 (非系統(tǒng)時(shí)間)

  --help : 顯示輔助訊息

  -s datestr : 將系統(tǒng)時(shí)間設(shè)為 datestr 中所設(shè)定的時(shí)間

  -u : 顯示目前的格林威治時(shí)間

  --version : 顯示版本編號(hào)

  例子 :

  顯示時(shí)間后跳行,再顯示目前日期 :

  date +%T%n%D

  顯示月份與日數(shù) :

  date +%B %d

  顯示日期與設(shè)定時(shí)間(12:34:56) :

  date --date 12:34:56

  注意 :

  當(dāng)你不希望出現(xiàn)無(wú)意義的 0 時(shí)(比如說(shuō) 1999/03/07),則可以在標(biāo)記中插入 - 符號(hào),比如說(shuō) date +%-H:%-M:%-S 會(huì)把時(shí)分秒中無(wú)意義的 0 給去掉,像是原本的 08:09:04 會(huì)變?yōu)?8:9:4。另外,只有取得權(quán)限者(比如說(shuō) root)才能設(shè)定系統(tǒng)時(shí)間。

  當(dāng)你以 root 身分更改了系統(tǒng)時(shí)間之后,請(qǐng)記得以 clock -w 來(lái)將系統(tǒng)時(shí)間寫(xiě)入 CMOS 中,這樣下次重新開(kāi)機(jī)時(shí)系統(tǒng)時(shí)間才會(huì)持續(xù)抱持最新的正確值。

  名稱 : sleep

  使用權(quán)限 : 所有使用者

  使用方式 : sleep [--help] [--version] number[smhd]

  說(shuō)明 : sleep 可以用來(lái)將目前動(dòng)作延遲一段時(shí)間

  參數(shù)說(shuō)明 :

  --help : 顯示輔助訊息

  --version : 顯示版本編號(hào)

  number : 時(shí)間長(zhǎng)度,后面可接 s、m、h 或 d

  其中 s 為秒,m 為 分鐘,h 為小時(shí),d 為日數(shù)

  例子 :

  顯示目前時(shí)間后延遲 1 分鐘,之后再次顯示時(shí)間 :

  date;sleep 1m;date

  名稱: time

  使用權(quán)限: 所有使用者

  使用方式: time [options] COMMAND [arguments]

  說(shuō)明: time 指令的用途,在于量測(cè)特定指令執(zhí)行時(shí)所需消耗的時(shí)間及系統(tǒng)資源等資訊。例如 CPU 時(shí)間、記憶體、輸入輸出等等。需要特別注意的是,部分資訊在 Linux 上顯示不出來(lái)。這是因?yàn)樵?Linux 上部分資源的分配函式與 time 指令所預(yù)設(shè)的方式并不相同,以致于 time 指令無(wú)法取得這些資料。

  把計(jì)?

  -o or --output=FILE

  設(shè)定結(jié)果輸出檔。這個(gè)選項(xiàng)會(huì)將 time 的輸出寫(xiě)入 所指定的檔案中。如果檔案已經(jīng)存在,系統(tǒng)將覆寫(xiě)其內(nèi)容。

  -a or --append

  配合 -o 使用,會(huì)將結(jié)果寫(xiě)到檔案的末端,而不會(huì)覆蓋掉原來(lái)的內(nèi)容。

  -f FORMAT or --format=FORMAT

  以 FORMAT 字串設(shè)定顯示方式。當(dāng)這個(gè)選項(xiàng)沒(méi)有被設(shè)定的時(shí)候,會(huì)用系統(tǒng)預(yù)設(shè)的格式。不過(guò)你可以用環(huán)境變數(shù) time 來(lái)設(shè)定這個(gè)格式,如此一來(lái)就不必每次登入系統(tǒng)都要設(shè)定一次。

  一般設(shè)定上,你可以用

  \t

  表示跳欄,或者是用

  \n

  表示換行。每一項(xiàng)資料要用 % 做為前導(dǎo)。如果要在字串中使用百分比符號(hào),就用 。(學(xué)過(guò) C 語(yǔ)言的人大概會(huì)覺(jué)得很熟悉)

  time 指令可以顯示的資源有四大項(xiàng),分別是:

  Time resources

  Memory resources

  IO resources

  Command info

  詳細(xì)的內(nèi)容如下:

  Time Resources

  E 執(zhí)行指令所花費(fèi)的時(shí)間,格式是:[hour]:minute:second。請(qǐng)注意這個(gè)數(shù)字并不代表實(shí)際的 CPU 時(shí)間。

  e 執(zhí)行指令所花費(fèi)的時(shí)間,單位是秒。請(qǐng)注意這個(gè)數(shù)字并不代表實(shí)際的 CPU 時(shí)間。

  S 指令執(zhí)行時(shí)在核心模式(kernel mode)所花費(fèi)的時(shí)間,單位是秒。

  U 指令執(zhí)行時(shí)在使用者模式(user mode)所花費(fèi)的時(shí)間,單位是秒。

  P 執(zhí)行指令時(shí) CPU 的占用比例。其實(shí)這個(gè)數(shù)字就是核心模式加上使用者模式的 CPU 時(shí)間除以總時(shí)間。

  Memory Resources

  M 執(zhí)行時(shí)所占用的實(shí)體記憶體的最大值。單位是 KB

  t 執(zhí)行時(shí)所占用的實(shí)體記憶體的平均值,單位是 KB

  K 執(zhí)行程序所占用的記憶體總量(stack+data+text)的平均大小,單位是 KB

  D 執(zhí)行程序的自有資料區(qū)(unshared data area)的平均大小,單位是 KB

  p 執(zhí)行程序的自有堆疊(unshared stack)的平均大小,單位是 KB

  X 執(zhí)行程序間共享內(nèi)容(shared text)的平均值,單位是 KB

  Z 系統(tǒng)記憶體頁(yè)的大小,單位是 byte。對(duì)同一個(gè)系統(tǒng)來(lái)說(shuō)這是個(gè)常數(shù)

  IO Resources

  F 此程序的主要記憶體頁(yè)錯(cuò)誤發(fā)生次數(shù)。所謂的主要記憶體頁(yè)錯(cuò)誤是指某一記憶體頁(yè)已經(jīng)置換到置換檔(swap file)中,而且已經(jīng)分配給其他程序。此時(shí)該頁(yè)的內(nèi)容必須從置換檔里再讀出來(lái)。

  R 此程序的次要記憶體頁(yè)錯(cuò)誤發(fā)生次數(shù)。所謂的次要記憶體頁(yè)錯(cuò)誤是指某一記憶體頁(yè)雖然已經(jīng)置換到置換檔中,但尚未分配給其他程序。此時(shí)該頁(yè)的內(nèi)容并未被破壞,不必從置換檔里讀出來(lái)

  W 此程序被交換到置換檔的次數(shù)

  c 此程序被強(qiáng)迫中斷(像是分配到的 CPU 時(shí)間耗盡)的次數(shù)

  w 此程序自愿中斷(像是在等待某一個(gè) I/O 執(zhí)行完畢,像是磁碟讀取等等)的次數(shù)

  I 此程序所輸入的檔案數(shù)

  O 此程序所輸出的檔案數(shù)

  r 此程序所收到的 Socket Message

  s 此程序所送出的 Socket Message

  k 此程序所收到的信號(hào) ( Signal )數(shù)量

  Command Info

  C 執(zhí)行時(shí)的參數(shù)以及指令名稱

  x 指令的結(jié)束代碼 ( Exit Status )

  -p or --portability

  這個(gè)選項(xiàng)會(huì)自動(dòng)把顯示格式設(shè)定成為:

  real %e

  user %U

  sys %S

  這么做的目的是為了與 POSIX 規(guī)格相容。

  -v or --verbose

  這個(gè)選項(xiàng)會(huì)把所有程式中用到的資源通通列出來(lái),不但如一般英文語(yǔ)句,還有說(shuō)明。對(duì)不想花時(shí)間去熟習(xí)格式設(shè)定或是剛剛開(kāi)始接觸這個(gè)指令的人相當(dāng)有用。

  范例:

  利用下面的指令

  time -v ps -aux

  我們可以獲得執(zhí)行 ps -aux 的結(jié)果和所花費(fèi)的系統(tǒng)資源。如下面所列的資料:

  USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

  root 1 0.0 0.4 1096 472 ? S Apr19 0:04 init

  root 2 0.0 0.0 0 0 ? SW Apr19 0:00 [kflushd]

  root 3 0.0 0.0 0 0 ? SW Apr19 0:00 [kpiod]

  ......

  root 24269 0.0 1.0 2692 996 pts/3 R 12:16 0:00 ps -aux

  Command being timed: "ps -aux"

  User time (seconds): 0.05

  System time (seconds): 0.06

  Percent of CPU this job got: 68%

  Elapsed (wall clock) time (h:mm:ss or m:ss): 0:00.16

  Average shared text size (kbytes): 0

  Average unshared data size (kbytes): 0

  Average stack size (kbytes): 0

  Average total size (kbytes): 0

  Maximum resident set size (kbytes): 0

  Average resident set size (kbytes): 0

  Major (requiring I/O) page faults: 238

  Minor (reclaiming a frame) page faults: 46

  Voluntary context switches: 0

  Involuntary context switches: 0

  Swaps: 0

  File system inputs: 0

  File system outputs: 0

  Socket messages sent: 0

  Socket messages received: 0

  Signals delivered: 0

  Page size (bytes): 4096

  Exit status: 0

  名稱: uptime

  使用權(quán)限: 所有使用者

  使用方式: uptime [-V]

  說(shuō)明: uptime 提供使用者下面的資訊,不需其他參數(shù):

  現(xiàn)在的時(shí)間

  系統(tǒng)開(kāi)機(jī)運(yùn)轉(zhuǎn)到現(xiàn)在經(jīng)過(guò)的時(shí)間

  連線的使用者數(shù)量

  最近一分鐘,五分鐘和十五分鐘的系統(tǒng)負(fù)載

  參數(shù): -V 顯示版本資訊。

  范例: uptime

  其結(jié)果為:

  10:41am up 5 days, 10 min, 1 users, load average: 0.00, 0.00, 1.99

  名稱:chfn

  使用權(quán)限:所有使用者

  用法:shell>> chfn

  說(shuō)明:提供使用者更改個(gè)人資訊,用于 finger and mail username

  范例:

  shell>> chfn

  Changing finger information for user

  Password: [del]

  Name[]:Johnney Huang ### 提供 finger 時(shí)的資料

  Office[]:NCCU

  Office Phone[]: [del]

  Home Phone[]: [del]

  名稱:chsh

  使用權(quán)限:所有使用者

  用法:shell>> chsh

  說(shuō)明:更改使用者 shell 設(shè)定

  范例:

  shell>> chsh

  Changing fihanging shell for user1

  Password: [del]

  New shell [/bin/tcsh]: ### [是目前使用的 shell]

  [del]

  shell>> chsh -l ### 展示 /etc/shells 檔案內(nèi)容

  /bin/bash

  /bin/sh

  /bin/ash

  /bin/bsh

  /bin/tcsh

  /bin/csh

  ” finger [返回]

  名稱: finger

  使用權(quán)限: 所有使用者

  使用方式: finger [options] user[@address]

  說(shuō)明:finger 可以讓使用者查詢一些其他使用者的資料。會(huì)列出來(lái)的資料有:

  Login Name

  User Name

  Home directory

  Shell

  Login status

  mail status

  .plan

  .project

  .forward

  其中 .plan ,.project 和 .forward 就是使用者在他的 Home Directory 里的 .plan , .project 和 .forward 等檔案里的資料。如果沒(méi)有就沒(méi)有。finger 指令并不限定于在同一伺服器上查詢,也可以尋找某一個(gè)遠(yuǎn)端伺服器上的使用者。只要給一個(gè)像是 E-mail address 一般的地址即可。

  把計(jì)?

  -l

  多行顯示。

  -s

  單行顯示。這個(gè)選項(xiàng)只顯示登入名稱,真實(shí)姓名,終端機(jī)名稱,閑置時(shí)間,登入時(shí)間,辦公室號(hào)碼及電話號(hào)碼。如果所查詢的使用者是遠(yuǎn)端伺服器的使用者,這個(gè)選項(xiàng)無(wú)效。

  范例:下列指令可以查詢本機(jī)管理員的資料:

  finger root

  其結(jié)果如下:

  Login: root Name: root

  Directory: /root Shell: /bin/bash

  Never logged in.

  No mail.

  No Plan.

  名稱:last

  使用權(quán)限:所有使用者

  使用方式:shell>> last [options]

  說(shuō)明:顯示系統(tǒng)開(kāi)機(jī)以來(lái)獲是從每月初登入者的訊息

  把計(jì)?

  -R 省略 hostname 的欄位

  -num 展示前 num 個(gè)

  username 展示 username 的登入訊息

  tty 限制登入訊息包含終端機(jī)代號(hào)

  范例:

  shell>> last -R -2

  johnney pts/1 Mon Aug 14 20:42 still logged in

  johnney pts/0 Mon Aug 14 19:59 still logged in

  wtmp begins Tue Aug 1 09:01:10 2000 ### /var/log/wtmp

  shell>> last -2 minery

  minery pts/0 140.119.217.115 Mon Aug 14 18:37 - 18:40 (00:03)

  minery pts/0 140.119.217.115 Mon Aug 14 17:22 - 17:24 (00:02)

  wtmp begins Tue Aug 1 09:01:10 2000

  名稱:login

  這個(gè)命令都不會(huì)就不要干算了!呵呵我也不在這里多費(fèi)筆墨耽誤大家美好青春了^_^

  名稱:passwd

  使用權(quán)限:所有使用者

  使用方式:passwd [-k] [-l] [-u [-f]] [-d] [-S] [username]

  說(shuō)明:用來(lái)更改使用者的密碼

  參數(shù):

  -k

  -l

  -u

  -f

  -d 關(guān)閉使用者的密碼認(rèn)證功能, 使用者在登入時(shí)將可以不用輸入密碼, 只有具備 root 權(quán)限的使用者方可使用.

  -S 顯示指定使用者的密碼認(rèn)證種類, 只有具備 root 權(quán)限的使用者方可使用.

  [username] 指定帳號(hào)名稱.

  名稱 : who

  使用權(quán)線 : 所有使用者都可使用

  使用方式 : who - [husfV] [user]

  說(shuō)明 : 顯示系統(tǒng)中有那些使用者正在上面,顯示的資料包含了使用者 ID,使用的終端機(jī),從那邊連上來(lái)的,上線時(shí)間,呆滯時(shí)間,CPU 使用量,動(dòng)作等等。

  把計(jì) :

  -h : 不要顯示標(biāo)題列

  -u : 不要顯示使用者的動(dòng)作/工作

  -s : 使用簡(jiǎn)短的格式來(lái)顯示

  -f : 不要顯示使用者的上線位置

  -V : 顯示程式版本

  linux指令大全(三)(轉(zhuǎn)自linuxeden.com)

  名稱:/etc/aliases

  使用權(quán)限:系統(tǒng)管理者

  使用方式: 請(qǐng)用 newaliases 更新資料庫(kù)

  說(shuō)明:

  sendmail 會(huì)使用一個(gè)在 /etc/aliases 中的檔案做使用者名稱轉(zhuǎn)換的動(dòng)作。當(dāng) sendmail 收到一個(gè)要送給 xxx 的信時(shí),它會(huì)依據(jù) aliases檔的內(nèi)容送給另一個(gè)使用者。這個(gè)功能可以創(chuàng)造一個(gè)只有在信件系統(tǒng)內(nèi)才有效的使用者。例如 mailing list 就會(huì)用到這個(gè)功能,在 mailinglist 中,我們可能會(huì)創(chuàng)造一個(gè)叫 redlinux@link.ece.uci.edu 的

  mailinglist,但實(shí)際上并沒(méi)有一個(gè)叫 redlinux 的使用者。實(shí)際 aliases 檔的內(nèi)容是將送給這個(gè)使用者的信都收給 mailing list 處理程式負(fù)責(zé)分送的工作。

  /etc/aliases 是一個(gè)文字模式的檔案,sendmail 需要一個(gè)二進(jìn)位格式的 /etc/aliases.db。newaliases 的功能傳是將 /etc/aliases 轉(zhuǎn)換成一個(gè) sendmail 所能了解的資料庫(kù)。范例:

  # newaliases

  下面命令會(huì)做相同的事,

  # sendmail -bi

  相關(guān)命令:

  mail, mailq, newaliases, sendmail

  ” mail [返回]

  名稱:mail

  使用權(quán)限:所有使用者

  使用方式:mail [-iInv] [-s subject] [-c cc-addr] [-b bcc-addr] user1 [user 2 ...]

  說(shuō)明:

  mail 不僅只是一個(gè)指令, mail 還是一個(gè)電子郵件程式,不過(guò)利用 mail 來(lái)讀信的人應(yīng)該很少吧!對(duì)于系統(tǒng)管理者來(lái)說(shuō) mail 就很有用,因?yàn)楣芾碚呖梢杂?mail 寫(xiě)成 script ,定期寄一些備忘錄提醒系統(tǒng)的使用者。

  參數(shù):

  i 忽略 tty 的中斷訊號(hào)。 (interrupt)

  I 強(qiáng)迫設(shè)成互動(dòng)模式。 (Interactive)

  v 列印出訊息,例如送信的地點(diǎn)、狀態(tài)等等。 (verbose)

  n 不讀入 mail.rc 設(shè)定檔。

  s 郵件標(biāo)題。

  c cc 郵件地址。

  b bcc 郵件地址。

  范例:

  將信件送給一個(gè)或以上的電子郵件地址,由于沒(méi)有加入其他的選項(xiàng),使用者必須輸入標(biāo)題與信件的內(nèi)容等。而 user2 沒(méi)有主機(jī)位置,就會(huì)送給郵件伺服器的 user2 使用者。

  mail user1@email.address

  mail user1@email.address user2

  將 mail.txt 的內(nèi)容寄給 user2 同時(shí) cc 給 user1 。如果將這一行指令設(shè)成 cronjob 就可以定時(shí)將備忘錄寄給系統(tǒng)使用者。

  mail -s 標(biāo)題 -c user1 user2 < mail.txt

  指令:mesg

  使用權(quán)限 : 所有使用者

  使用方式 : mesg [y|n]

  說(shuō)明 : 決定是否允許其他人傳訊息到自己的終端機(jī)介面

  把計(jì) ?

  y : 允許訊息傳到終端機(jī)介面上。

  n : 不允許訊息傳到終端機(jī)介面上 。

  如果沒(méi)有設(shè)定,則訊息傳遞與否則由終端機(jī)界面目前狀態(tài)而定。

  例子 :

  改變目前訊息設(shè)定,改成不允許訊息傳到終端機(jī)介面上 :

  mesg n

  與 mesg 相關(guān)的指令有: talk,write,wall。

  名稱:/etc/aliases

  使用權(quán)限:系統(tǒng)管理者

  使用方式: newaliases

  說(shuō)明:

  sendmail 會(huì)使用一個(gè)在 /etc/aliases 中的檔案做使用者名稱轉(zhuǎn)換的動(dòng)作。當(dāng) sendmail 收到一個(gè)要送給 xxx 的信時(shí),它會(huì)依據(jù) aliases檔的內(nèi)容送給另一個(gè)使用者。這個(gè)功能可以創(chuàng)造一個(gè)只有在信件系統(tǒng)內(nèi)才有效的使用者。例如 mailing list 就會(huì)用到這個(gè)功能,在 mailinglist 中,我們可能會(huì)創(chuàng)造一個(gè)叫 redlinux@link.ece.uci.edu 的

  mailinglist,但實(shí)際上并沒(méi)有一個(gè)叫 redlinux 的使用者。實(shí)際 aliases 檔的內(nèi)容是將送給這個(gè)使用者的信都收給 mailing list 處理程式負(fù)責(zé)分送的工作。

  /etc/aliases 是一個(gè)文字模式的檔案,sendmail 需要一個(gè)二進(jìn)位格式的 /etc/aliases.db。newaliases 的功能傳是將 /etc/aliases 轉(zhuǎn)換成一個(gè) sendmail 所能了解的資料庫(kù)。

  參數(shù):沒(méi)有任何參數(shù)。 范例:

  # newaliases

  下面命令會(huì)做相同的事,

  # sendmail -bi

  相關(guān)命令:

  mail, mailq, newaliases, sendmail

  名稱 : talk

  使用權(quán)限 : 所有使用者

  使用方式 :

  talk person [ttyname]

  說(shuō)明 : 與其他使用者對(duì)談

  把計(jì) :

  person : 預(yù)備對(duì)談的使用者帳號(hào),如果該使用者在其他機(jī)器上,則可輸入 person@machine.name

  ttyname : 如果使用者同時(shí)有兩個(gè)以上的 tty 連線,可以自行選擇合適的 tty 傳訊息

  例子.1 :

  與現(xiàn)在機(jī)器上的使用者Rollaend對(duì)談,此時(shí) Rollaend 只有一個(gè)連線 :

  talk Rollaend

  接下來(lái)就是等Rollaend回應(yīng),若Rollaend接受,則Rollaend輸入 `talk jzlee`即可開(kāi)始對(duì)談,結(jié)束請(qǐng)按 ctrl+c

  例子.2 :與linuxfab.cx上的使用者Rollaend對(duì)談,使用pts/2來(lái)對(duì)談 :

  talk Rollaend@linuxfab.cx pts/2

  接下來(lái)就是等Rollaend回應(yīng),若Rollaend接受,則Rollaend輸入 `talk jzlee@jzlee.home`即可開(kāi)始對(duì)談,結(jié)束請(qǐng)按

  ctrl+c

  注意 : 若螢?zāi)坏淖謺?huì)出現(xiàn)不正常的字元,試著按 ctrl+l 更新螢?zāi)划?huà)面。

  名稱 : wall

  使用權(quán)限 : 所有使用者

  使用方式 :

  wall [ message ]

  使用說(shuō)明:

  wall 會(huì)將訊息傳給每一個(gè) mesg 設(shè)定為 yes 的上線使用者。當(dāng)使用終端機(jī)介面做為標(biāo)準(zhǔn)傳入時(shí), 訊息結(jié)束時(shí)需加上 EOF (通常用 Ctrl+D)?

  例子 :

  傳訊息"hi" 給每一個(gè)使用者 :

  wall hi

  名稱 : write

  使用權(quán)限 : 所有使用者

  使用方式 :

  write user [ttyname]

  說(shuō)明 : 傳訊息給其他使用者

  把計(jì) :

  user : 預(yù)備傳訊息的使用者帳號(hào)

  ttyname : 如果使用者同時(shí)有兩個(gè)以上的 tty 連線,可以自行選擇合適的 tty 傳訊息

  例子.1 :

  傳訊息給 Rollaend,此時(shí) Rollaend 只有一個(gè)連線 :

  write Rollaend

  接下來(lái)就是將訊息打上去,結(jié)束請(qǐng)按 ctrl+c

  例子.2 :傳訊息給 Rollaend,Rollaend 的連線有 pts/2,pts/3 :

  write Rollaend pts/2

  接下來(lái)就是將訊息打上去,結(jié)束請(qǐng)按 ctrl+c

  注意 : 若對(duì)方設(shè)定 mesg n,則此時(shí)訊席將無(wú)法傳給對(duì)方

  名稱:kill

  使用權(quán)限:所有使用者

  使用方式:

  kill [ -s signal | -p ] [ -a ] pid ...

  kill -l [ signal ]

  說(shuō)明:kill 送出一個(gè)特定的信號(hào) (signal) 給行程 id 為 pid 的行程根據(jù)該信號(hào)而做特定的動(dòng)作, 若沒(méi)有指定, 預(yù)設(shè)是送出終止 (TERM) 的信號(hào)

  把計(jì)?

  -s (signal) : 其中可用的訊號(hào)有 HUP (1), KILL (9), TERM (15), 分別代表著重跑, 砍掉, 結(jié)束; 詳細(xì)的信號(hào)可以用 kill -l

  -p : 印出 pid , 并不送出信號(hào)

  -l (signal) : 列出所有可用的信號(hào)名稱

  范例:

  將 pid 為 323 的行程砍掉 (kill) :

  kill -9 323

  將 pid 為 456 的行程重跑 (restart) :

  kill -HUP 456

  名稱:nice

  使用權(quán)限:所有使用者

  使用方式:nice [-n adjustment] [-adjustment] [--adjustment=adjustment] [--help] [--version] [command [arg...]]

  說(shuō)明:以更改過(guò)的優(yōu)先序來(lái)執(zhí)行程式, 如果未指定程式, 則會(huì)印出目前的排程優(yōu)先序, 內(nèi)定的 adjustment 為 10, 范圍為 -20 (最高優(yōu)先序) 到 19 (最低優(yōu)先序)

  把計(jì)?

  -n adjustment, -adjustment, --adjustment=adjustment 皆為將該原有優(yōu)先序的增加 adjustment

  --help 顯示求助訊息

  --version 顯示版本資訊

  范例:

  將 ls 的優(yōu)先序加 1 并執(zhí)行 :

  nice -n 1 ls

  將 ls 的優(yōu)先序加 10 并執(zhí)行 :

  nice ls將 ls 的優(yōu)先序加 10 并執(zhí)行

  注意 : 優(yōu)先序 (priority) 為作業(yè)系統(tǒng)用來(lái)決定 CPU 分配的參數(shù),Linux 使用『回合制(round-robin)』的演算法來(lái)做 CPU 排程,優(yōu)先序越高,所可能獲得的 CPU時(shí)間就越多。

  名稱:ps

  使用權(quán)限:所有使用者

  使用方式:ps [options] [--help]

  說(shuō)明:顯示瞬間行程 (process) 的動(dòng)態(tài)

  參數(shù):

  ps 的參數(shù)非常多, 在此僅列出幾個(gè)常用的參數(shù)并大略介紹含義

  -A 列出所有的行程

  -w 顯示加寬可以顯示較多的資訊

  -au 顯示較詳細(xì)的資訊

  -aux 顯示所有包含其他使用者的行程

  au(x) 輸出格式 :

  USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

  USER: 行程擁有者

  PID: pid

  %CPU: 占用的 CPU 使用率

  %MEM: 占用的記憶體使用率

  VSZ: 占用的虛擬記憶體大小

  RSS: 占用的記憶體大小

  TTY: 終端的次要裝置號(hào)碼 (minor device number of tty)

  STAT: 該行程的狀態(tài):

  D: 不可中斷的靜止 (通悸□□縝b進(jìn)行 I/O 動(dòng)作)

  R: 正在執(zhí)行中

  S: 靜止?fàn)顟B(tài)

  T: 暫停執(zhí)行

  Z: 不存在但暫時(shí)無(wú)法消除

  W: 沒(méi)有足夠的記憶體分頁(yè)可分配

  <: 高優(yōu)先序的行程

  N: 低優(yōu)先序的行程

  L: 有記憶體分頁(yè)分配并鎖在記憶體內(nèi) (即時(shí)系統(tǒng)或捱A I/O)

  START: 行程開(kāi)始時(shí)間

  TIME: 執(zhí)行的時(shí)間

  COMMAND:所執(zhí)行的指令

  范例:

  ps

  PID TTY TIME CMD

  2791 ttyp0 00:00:00 tcsh

  3092 ttyp0 00:00:00 ps

  % ps -A

  PID TTY TIME CMD

  1 ? 00:00:03 init

  2 ? 00:00:00 kflushd

  3 ? 00:00:00 kpiod

  4 ? 00:00:00 kswapd

  5 ? 00:00:00 mdrecoveryd

  .......

  % ps -aux

  USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

  root 1 0.0 0.7 1096 472 ? S Sep10 0:03 init [3]

  root 2 0.0 0.0 0 0 ? SW Sep10 0:00 [kflushd]

  root 3 0.0 0.0 0 0 ? SW Sep10 0:00 [kpiod]

  root 4 0.0 0.0 0 0 ? SW Sep10 0:00 [kswapd]

  ........

  名稱:pstree

  使用權(quán)限:所有使用者

  使用方式:

  pstree [-a] [-c] [-h|-Hpid] [-l] [-n] [-p] [-u] [-G|-U] [pid|user]

  pstree -V

  說(shuō)明:將所有行程以樹(shù)狀圖顯示, 樹(shù)狀圖將會(huì)以 pid (如果有指定) 或是以 init 這個(gè)基本行程為根 (root) ,如果有指定使用者 id , 則樹(shù)狀圖會(huì)只顯示該使用者所擁有的行程

  參數(shù):

  -a 顯示該行程的完整指令及參數(shù), 如果是被記憶體置換出去的行程則會(huì)加上括號(hào)

  -c 如果有重覆的行程名, 則分開(kāi)列出 (預(yù)設(shè)值是會(huì)在前面加上 *

  范例:

  pstree

  init-+-amd

  |-apmd

  |-atd

  |-httpd---10*[httpd]

  %pstree -p

  init(1)-+-amd(447)

  |-apmd(105)

  |-atd(339)

  %pstree -c

  init-+-amd

  |-apmd

  |-atd

  |-httpd-+-httpd

  | |-httpd

  | |-httpd

  | |-httpd

  ....

  名稱:renice

  使用權(quán)限:所有使用者

  使用方式:renice priority [[-p] pid ...] [[-g] pgrp ...] [[-u] user ...]

  說(shuō)明:重新指定一個(gè)或多個(gè)行程(Process)的優(yōu)先序(一個(gè)或多個(gè)將根據(jù)所下的參數(shù)而定)

  把計(jì)?

  -p pid 重新指定行程的 id 為 pid 的行程的優(yōu)先序

  -g pgrp 重新指定行程群組(process group)的 id 為 pgrp 的行程 (一個(gè)或多個(gè)) 的優(yōu)先序

  -u user 重新指定行程擁有者為 user 的行程的優(yōu)先序

  范例:

  將行程 id 為 987 及 32 的行程與行程擁有者為 daemon 及 root 的優(yōu)先序號(hào)碼加 1 :

  renice +1 987 -u daemon root -p 32

  注意 : 每一個(gè)行程(Process)都有一個(gè)唯一的 (unique) id?

  名稱:top

  使用權(quán)限:所有使用者

  使用方式:top [-] [d delay] [q] [c] [S] [s] [i] [n] [b]

  說(shuō)明:即時(shí)顯示 process 的動(dòng)態(tài)

  把計(jì)?

  d : 改變顯示的更新速度,或是在交談式指令列( interactive command)按 s

  q : 沒(méi)有任何延遲的顯示速度,如果使用者是有 superuser 的權(quán)限,則 top 將會(huì)以最高的優(yōu)先序執(zhí)行

  c : 切換顯示模式,共有兩種模式,一是只顯示執(zhí)行檔的名稱,另一種是顯示完整的路徑與名稱S : 累積模式,會(huì)將己完成或消失的子行程 ( dead child process ) 的 CPU time 累積起來(lái)

  s : 安全模式,將交談式指令取消, 避免潛在的危機(jī)

  i : 不顯示任何閑置 (idle) 或無(wú)用 (zombie) 的行程

  n : 更新的次數(shù),完成后將會(huì)退出 top

  b : 批次檔模式,搭配 "n" 參數(shù)一起使用,可以用來(lái)將 top 的結(jié)果輸出到檔案內(nèi)

  范例:

  顯示更新十次后退出 ;

  top -n 10

  使用者將不能利用交談式指令來(lái)對(duì)行程下命令 :

  top -s

  將更新顯示二次的結(jié)果輸入到名稱為 top.log 的檔案里 :

  top -n 2 -b < top.log

  名稱:skill

  使用權(quán)限:所有使用者

  使用方式: skill [signal to send] [options] 選擇程序的規(guī)則

  說(shuō)明:

  送個(gè)訊號(hào)給正在執(zhí)行的程序,預(yù)設(shè)的訊息為 TERM (中斷) , 較常使用的訊息為 HUP , INT , KILL , STOP , CONT ,和 0

  訊息有三種寫(xiě)法:分別為 -9 , -SIGKILL , -KILL , 可以使用 -l 或 -L 已列出可使用的訊息。

  一般參數(shù):

  -f 快速模式/尚未完成

  -i 互動(dòng)模式/ 每個(gè)動(dòng)作將要被確認(rèn)

  -v 詳細(xì)輸出/ 列出所選擇程序的資訊

  -w 智能警告訊息/ 尚未完成

  -n 沒(méi)有動(dòng)作/ 顯示程序代號(hào)

  參數(shù):選擇程序的規(guī)則可以是, 終端機(jī)代號(hào),使用者名稱,程序代號(hào),命令名稱。

  -t 終端機(jī)代號(hào) ( tty 或 pty )

  -u 使用者名稱

  -p 程序代號(hào) ( pid )

  -c 命令名稱 可使用的訊號(hào):

  以下列出已知的訊號(hào)名稱,訊號(hào)代號(hào),功能。

  名稱 (代號(hào)) 功能/ 描述

  ALRM 14 離開(kāi)

  HUP 1 離開(kāi)

  INT 2 離開(kāi)

  KILL 9 離開(kāi)/ 強(qiáng)迫關(guān)閉

  PIPE 13 離開(kāi)

  POLL 離開(kāi)

  PROF 離開(kāi)

  TERM 15 離開(kāi)

  USR1 離開(kāi)

  USR2 離開(kāi)

  VTALRM 離開(kāi)

  STKFLT 離開(kāi)/ 只適用于i386, m68k, arm 和 ppc 硬體

  UNUSED 離開(kāi)/ 只適用于i386, m68k, arm 和 ppc 硬體

  TSTP 停止 /產(chǎn)生與內(nèi)容相關(guān)的行為

  TTIN 停止 /產(chǎn)生與內(nèi)容相關(guān)的行為

  TTOU 停止 /產(chǎn)生與內(nèi)容相關(guān)的行為

  STOP 停止 /強(qiáng)迫關(guān)閉

  CONT 從新啟動(dòng) /如果在停止?fàn)顟B(tài)則從新啟動(dòng),否則忽略

  PWR 忽略 /在某些系統(tǒng)中會(huì)離開(kāi)

  WINCH 忽略

  CHLD 忽略

  ABRT 6 核心

  FPE 8 核心

  ILL 4 核心

  QUIT 3 核心

  SEGV 11 核心

  TRAP 5 核心

  SYS 核心 /或許尚未實(shí)作

  EMT 核心 /或許尚未實(shí)作

  BUS 核心 /核心失敗

  XCPU 核心 /核心失敗

  XFSZ 核心 /核心失敗

  范例:

  停止所有在 PTY 裝置上的程序

  skill -KILL -v pts/*

  停止三個(gè)使用者 user1 , user2 , user3

  skill -STOP user1 user2 user3

  其他相關(guān)的命令: kill

  名稱:expr

  使用權(quán)限:所有使用者

  ### 字串長(zhǎng)度

  shell>> expr length "this is a test"

  14

  ### 數(shù)字商數(shù)

  shell>> expr 14 % 9

  5

  ### 從位置處抓取字串

  shell>> expr substr "this is a test" 3 5

  is is

  ### 數(shù)字串 only the first character

  shell>> expr index "testforthegame" e

  2

  ### 字串真實(shí)重現(xiàn)

  shell>> expr quote thisisatestformela

  thisisatestformela

  名稱: tr

  ### 1.比方說(shuō)要把目錄下所有的大寫(xiě)檔名換為小寫(xiě)檔名?

  似乎有很多方式,"tr"是其中一種:

  #!/bin/sh

  dir="/tmp/testdir";

  files=`find $dir -type f`;

  for i in $files

  do

  dir_name=`dirname $i`;

  ori_filename=`basename $i`

  new_filename=`echo $ori_filename | tr [:upper:] [:lower:]` > /dev/null;

  #echo $new_filename;

  mv $dir_name/$ori_filename $dir_name/$new_filename

  done

  ### 2.自己試驗(yàn)中...lowercase to uppercase

  tr abcdef...[del] ABCDE...[del]

  tr a-z A-Z

  tr [:lower:] [:upper:]

  shell>> echo "this is a test" | tr a-z A-Z > www

  shell>> cat www

  THIS IS A TEST

  ### 3.去掉不想要的字串

  shell>> tr -d this ### 去掉有關(guān) t.e.s.t

  this

  man

  man

  test

  e

  ### 4.取代字串

  shell>> tr -s "this" "TEST"

  this

  TEST

  th

  TE

  指令:clear

  用途:清除螢?zāi)挥谩?/p>

  使用方法:在 console 上輸入 clear。

  名稱: reset, tset

  使用方法: tset [-IQqrs] [-] [-e ch] [-i ch] [-k ch] [-m mapping] [terminal]

  使用說(shuō)明:

  reset 其實(shí)和 tset 是一同個(gè)命令,它的用途是設(shè)定終端機(jī)的狀態(tài)。一般而言,這個(gè)命令會(huì)自動(dòng)的從環(huán)境變數(shù)、命令列或是其它的組態(tài)檔決定目前終端機(jī)的型態(tài)。如果指定型態(tài)是 ? 的話,這個(gè)程式會(huì)要求使用者輸入終端機(jī)的型別。

  由于這個(gè)程式會(huì)將終端機(jī)設(shè)回原始的狀態(tài),除了在 login 時(shí)使用外,當(dāng)系統(tǒng)終端機(jī)因?yàn)槌淌讲徽?zhí)行而進(jìn)入一些奇怪的狀態(tài)時(shí),你也可以用它來(lái)重設(shè)終端機(jī)o 例如不小心把二進(jìn)位檔用 cat 指令進(jìn)到終端機(jī),常會(huì)有終端機(jī)不再回應(yīng)鍵盤(pán)輸入,或是回應(yīng)一些奇怪字元的問(wèn)題。此時(shí)就可以用 reset 將終端機(jī)回復(fù)至原始狀態(tài)。選項(xiàng)說(shuō)明:

  -p

  將終端機(jī)類別顯示在螢?zāi)簧?,但不做設(shè)定的動(dòng)作。這個(gè)命令可以用來(lái)取得目前終端機(jī)的類別。

  -e ch

  將 erase 字元設(shè)成 ch

  -i ch

  將中斷字元設(shè)成 ch

  -k ch

  將刪除一行的字元設(shè)成 ch

  -I

  不要做設(shè)定的動(dòng)作,如果沒(méi)有使用選項(xiàng) -Q 的話,erase、中斷及刪除字元的目前值依然會(huì)送到螢?zāi)簧稀?/p>

  -Q

  不要顯示 erase、中斷及刪除字元的值到螢?zāi)簧稀?/p>

  -r

  將終端機(jī)類別印在螢?zāi)簧稀?/p>

  -s

  將設(shè)定 TERM 用的命令用字串的型式送到終端機(jī)中,通常在 .login 或 .profile 中用

  范例:

  讓使用者輸入一個(gè)終端機(jī)型別并將終端機(jī)設(shè)到該型別的預(yù)設(shè)狀態(tài)。

  # reset ?

  將 erase 字元設(shè)定 control-h

  # reset -e ^B

  將設(shè)定用的字串顯示在螢?zāi)簧?/p>

  # reset -s

Erase is control-B (^ .

  Kill is control-U (^U).

  Interrupt is control-C (^C).

  TERM=xterm;

  名稱:compress

  使用權(quán)限:所有使用者

  使用方式:compress [-dfvcV] [-b maxbits]

  下載地址

  說(shuō)明:

  compress 是一個(gè)相當(dāng)古老的 unix 檔案壓縮指令,壓縮后的檔案會(huì)加上一個(gè) .Z 延伸檔名以區(qū)別未壓縮的檔案,壓縮后的檔案可以以 uncompress 解壓。若要將數(shù)個(gè)檔案壓成一個(gè)壓縮檔,必須先將檔案 tar 起來(lái)再壓縮。由于 gzip 可以產(chǎn)生更理想的壓縮比例,一般人多已改用 gzip 為檔案壓縮工具。

  參數(shù):

  c 輸出結(jié)果至標(biāo)準(zhǔn)輸出設(shè)備(一般指熒幕)

  f 強(qiáng)迫寫(xiě)入檔案,若目的檔已經(jīng)存在,則會(huì)被覆蓋 (force)

  v 將程式執(zhí)行的訊息印在熒幕上 (verbose)

  b 設(shè)定共同字串?dāng)?shù)的上限,以位元計(jì)算,可以設(shè)定的值為 9 至 16 bits 。由于值越大,能使用的共同字串就 越多,壓縮比例就越大,所以一般使用預(yù)設(shè)值 16 bits (bits)

  d 將壓縮檔解壓縮

  V 列出版本訊息

  范例:

  將 source.dat 壓縮成 source.dat.Z ,若 source.dat.Z 已經(jīng)存在,內(nèi)容則會(huì)被壓縮檔覆蓋。

  compress -f source.dat

  將 source.dat 壓縮成 source.dat.Z ,并列印出壓縮比例。

  -v 與 -f 可以一起使用

  compress -vf source.dat

  將壓縮后的資料輸出后再導(dǎo)入 target.dat.Z 可以改變壓縮檔名。

  compress -c source.dat > target.dat.Z

  -b 的值越大,壓縮比例就越大,范圍是 9-16 ,預(yù)設(shè)值是 16 。

  compress -b 12 source.dat

  將 source.dat.Z 解壓成 source.dat ,若檔案已經(jīng)存在,使用者按 y 以確定覆蓋檔案,若使用 -df 程式則會(huì)自動(dòng)覆蓋檔案。由于系統(tǒng)會(huì)自動(dòng)加入 .Z 為延伸檔名,所以 source.dat 會(huì)自動(dòng)當(dāng)作 source.dat.Z 處理。

  compress -d source.dat

  compress -d source.dat.Z

  名稱: lpd

  使用權(quán)限: 所有使用者

  使用方式:lpd [-l] [#port]

  lpd 是一個(gè)常駐的印表機(jī)管理程式,它會(huì)根據(jù) /etc/printcap 的內(nèi)容來(lái)管理本地或遠(yuǎn)端的印表機(jī)。/etc/printcap 中定義的每一個(gè)印表機(jī)必須在 /var/lpd 中有一個(gè)相對(duì)應(yīng)的目錄,目錄中以 cf 開(kāi)頭的檔案表示一個(gè)等待送到適當(dāng)裝置的印表工作。這個(gè)檔案通常是由 lpr 所產(chǎn)生。

  lpr 和 lpd 組成了一個(gè)可以離線工作的系統(tǒng),當(dāng)你使用 lpr 時(shí),印表機(jī)不需要能立即可用,甚至不用存在。lpd 會(huì)自動(dòng)監(jiān)視印表機(jī)的狀況,當(dāng)印表機(jī)上線后,便立即將檔案送交處理。這個(gè)得所有的應(yīng)用程式不必等待印表機(jī)完成前一工作。

  參數(shù):

  -l: 將一些除錯(cuò)訊息顯示在標(biāo)準(zhǔn)輸出上。

  #port: 一般而言,lpd 會(huì)使用 getservbyname 取得適當(dāng)?shù)?TCP/IP port,你可以使用這個(gè)參數(shù)強(qiáng)迫 lpd 使用指定的 port。

  范例:

  這個(gè)程式通常是由 /etc/rc.d 中的程式在系統(tǒng)啟始階段執(zhí)行。

  名稱 lpq

  -- 顯示列表機(jī)貯列中未完成的工作 用法

  lpq [l] [P] [user]

  說(shuō)明

  lpq 會(huì)顯示由 lpd 所管理的列表機(jī)貯列中未完成的項(xiàng)目。

  范例

  范例 1. 顯示所有在 lp 列表機(jī)貯列中的工作

  # lpq -PlpRank Owner Job Files Total Size1st root 238 (standard input) 1428646 bytes

  相關(guān)函數(shù)

  lpr,lpc,lpd

  名稱: lpr

  使用權(quán)限: 所有使用者

  使用方式:lpr [ -P printer ]

  將檔案或是由標(biāo)準(zhǔn)輸入送進(jìn)來(lái)的資料送到印表機(jī)貯列之中,印表機(jī)管理程式 lpd 會(huì)在稍后將這個(gè)檔案送給適當(dāng)?shù)某淌交蜓b置處理。lpr 可以用來(lái)將料資送給本地或是遠(yuǎn)端的主機(jī)來(lái)處理。

  參數(shù):

  -p Printer: 將資料送至指定的印表機(jī) Printer,預(yù)設(shè)值為 lp。

  范例:

  將 www.c 和 kkk.c 送到印表機(jī) lp。

  lpr -Plp www.c kkk.c

  名稱: lprm

  -- 將一個(gè)工作由印表機(jī)貯列中移除 用法

  /usr/bin/lprm [P]

  下載地址

  說(shuō)明

  尚未完成的印表機(jī)工作會(huì)被放在印表機(jī)貯列之中,這個(gè)命令可用來(lái)將常未送到印表機(jī)的工作取消。由于每一個(gè)印表機(jī)都有一個(gè)獨(dú)立的貯列,你可以用 -P 這個(gè)命令設(shè)定想要作用的印列機(jī)。如果沒(méi)有設(shè)定的話,會(huì)使用系統(tǒng)預(yù)設(shè)的印表機(jī)。

  這個(gè)命令會(huì)檢查使用者是否有足夠的權(quán)限刪除指定的檔案,一般而言,只有檔案的擁有者或是系統(tǒng)管理員才有這個(gè)權(quán)限。

  范例

  將印表機(jī) hpprinter 中的第 1123 號(hào)工作移除

  lprm -Phpprinter 1123

  將第 1011 號(hào)工作由預(yù)設(shè)印表機(jī)中移除

  lprm 1011

  名稱: fdformat

  使用權(quán)限: 所有使用者

  使用方式:fdformat [-n] device

  使用說(shuō)明 :

  對(duì)指定的軟碟機(jī)裝置進(jìn)行低階格式化。使用這個(gè)指令對(duì)軟碟格式化的時(shí)候,最好指定像是下面的裝置:

  /dev/fd0d360 磁碟機(jī) A: ,磁片為 360KB 磁碟

  /dev/fd0h1440 磁碟機(jī) A: ,磁片為 1.4MB 磁碟

  /dev/fd1h1200 磁碟機(jī) B: ,磁片為 1.2MB 磁碟

  如果使用像是 /dev/fd0 之類的裝置,如果里面的磁碟不是標(biāo)準(zhǔn)容量,格式化可能會(huì)失敗。在這種情況之下,使用者可以用 setfdprm 指令先行指定必要參數(shù)。

  參數(shù):

  -n 關(guān)閉確認(rèn)功能。這個(gè)選項(xiàng)會(huì)關(guān)閉格式化之后的確認(rèn)步驟。

  范例:

  fdformat -n /dev/fd0h1440

  將磁碟機(jī) A 的磁片格式化成 1.4MB 的磁片。并且省略確認(rèn)的步驟。

  名稱: mformat

  使用權(quán)限: 所有使用者

  使用方式:

  mformat [-t cylinders] [-h heads] [-s sectors] [-l volume_label] [-F] [-I fsVer-sion] [-S sizecode] [-2 sectors_on_track_0] [-M software_sector_size] [-a] [-X] [-C] [-H hidden_sectors] [-r root_sectors] [-B boot_sector] [-0 rate_on_track_0] [-A rate_on_other_tracks]

  [-1] [-k] drive:

  在已經(jīng)做過(guò)低階格式化的磁片上建立 DOS 檔案系統(tǒng)。如果在編譯 mtools 的時(shí)候把 USE_2M 的參數(shù)打開(kāi),部分與 2M 格式相關(guān)的參數(shù)就會(huì)發(fā)生作用。否則這些參數(shù)(像是 S,2,1,M)不會(huì)發(fā)生作用。

  參數(shù):

  -t 磁柱(synlider)數(shù)

  -h 磁頭(head)數(shù)

  -s 每一磁軌的磁區(qū)數(shù)

  -l 標(biāo)簽

  -F 將磁碟格式化為 FAT32 格式,不過(guò)這個(gè)參數(shù)還在實(shí)驗(yàn)中。

  -I 設(shè)定 FAT32 中的版本號(hào)。這當(dāng)然也還在實(shí)驗(yàn)中。

  -S 磁區(qū)大小代碼,計(jì)算方式為 sector = 2^(大小代碼+7)

  -c 磁叢(cluster)的磁區(qū)數(shù)。如果所給定的數(shù)字會(huì)導(dǎo)致磁叢數(shù)超過(guò) FAT 表的限制,mformat 會(huì)自動(dòng)放大磁區(qū)數(shù)。

  -s

  -M 軟體磁區(qū)大小。這個(gè)數(shù)字就是系統(tǒng)回報(bào)的磁區(qū)大小。通常是和實(shí)際的大小相同。

  -a 如果加上這個(gè)參數(shù),mformat 會(huì)產(chǎn)生一組 Atari 系統(tǒng)的序號(hào)給這塊軟碟。

  -X 將軟碟格式化成 XDF 格式。使用前必須先用 xdfcopy 指令對(duì)軟碟作低階格式化的動(dòng)作。

  -C 產(chǎn)生一個(gè)可以安裝 MS-DOS 檔案系統(tǒng)的磁碟影像檔(disk image)。當(dāng)然對(duì)一個(gè)實(shí)體磁碟機(jī)下這個(gè)參數(shù)是沒(méi)有意義的。

  -H 隱藏磁區(qū)的數(shù)目。這通常適用在格式化硬碟的分割區(qū)時(shí),因?yàn)橥ǔR粋€(gè)分割區(qū)的前面還有分割表。這個(gè)參數(shù)未經(jīng)測(cè)試,能不用就不用。

  -n 磁碟序號(hào)

  -r 根目錄的大小,單位是磁區(qū)數(shù)。這個(gè)參數(shù)只對(duì) FAT12 和 FAT16 有效。

  -B 使用所指定的檔案或是設(shè)備的開(kāi)機(jī)磁區(qū)做為這片磁片或分割區(qū)的開(kāi)機(jī)磁區(qū)。當(dāng)然當(dāng)中的硬體參數(shù)會(huì)隨之更動(dòng)。

  -k 盡量保持原有的開(kāi)機(jī)磁區(qū)。

  -0 第 0 軌的資料傳輸率

  -A 第 0 軌以外的資料傳輸率

  -2 使用 2m 格式

  -1 不使用 2m 格式

  范例:

  mformat a:

  這樣會(huì)用預(yù)設(shè)值把 a: (就是 /dev/fd0)里的磁碟片格式化。

  名稱: mkdosfs

  使用權(quán)限: 所有使用者

  使用方式: mkdosfs [ -c | -l filename ]

  [ -f number_of_FATs ]

  [ -F FAT_size ]

  [ -i volume_id ]

  [ -m message_file ]

  [ -n volume_name ]

  [ -r root_dir_entry ]

  [ -s sector_per_cluster ]

  [ -v ]

  device

  [ block_count ]

  說(shuō)明: 建立 DOS 檔案系統(tǒng)。 device 指你想要建立 DOS 檔案系統(tǒng)的裝置代號(hào)。像是 /dev/hda1 等等。 block_count 則是你希望配置的區(qū)塊數(shù)。如果 block_count 沒(méi)有指定則系統(tǒng)會(huì)自動(dòng)替你計(jì)算符合該裝置大小的區(qū)塊數(shù)。

  參數(shù):

  -c 建立檔案系統(tǒng)之前先檢查是否有壞軌。

  -l 從得定的檔案中讀取壞軌記錄。

  -f 指定檔案配置表(FAT , File Allocation Table)的數(shù)量。預(yù)設(shè)值為 2 。目前 Linux 的 FAT 檔案系統(tǒng)不支援超過(guò) 2 個(gè) FAT 表。通常這個(gè)不需要改。

  -F 指定 FAT 表的大小,通常是 12 或是 16 個(gè)位元組。12 位元組通常用于磁碟片,16 位元組用于一般硬碟的分割區(qū),也就是所謂的 FAT16 格式。這個(gè)值通常系統(tǒng)會(huì)自己選定適當(dāng)?shù)闹?。在磁碟片上?FAT16 通常不會(huì)發(fā)生作用,反之在硬碟上用 FAT12 亦然。

  -i 指定 Volume ID。一般是一個(gè) 4 個(gè)位元組的數(shù)字,像是 2e203a47 。如果不給系統(tǒng)會(huì)自己產(chǎn)生。

  -m 當(dāng)使用者試圖用這片磁片或是分割區(qū)開(kāi)機(jī),而上面沒(méi)有作業(yè)系統(tǒng)時(shí),系統(tǒng)會(huì)給使用者一段警告訊息。這個(gè)參數(shù)就是用來(lái)變更這個(gè)訊息的。你可以先用檔案編輯好,然后用這個(gè)參數(shù)指定,或是用

  -m -

  這樣系統(tǒng)會(huì)要求你直接輸入這段文字。要特別注意的是,檔案里的字串長(zhǎng)度不要超過(guò) 418 個(gè)字,包括展開(kāi)的跳欄符號(hào)(TAB)和換行符號(hào)(換行符號(hào)在 DOS 底下算兩個(gè)字元!)

  -n 指定 Volume Name,就是磁碟標(biāo)簽。如同在 DOS 底下的 format 指令一樣,給不給都可以。沒(méi)有預(yù)設(shè)值。

  -r 指定根目錄底下的最大檔案數(shù)。這里所謂的檔案數(shù)包括目錄。預(yù)設(shè)值是在軟碟上是 112 或是 224 ,在硬碟上是 512。沒(méi)事不要改這個(gè)數(shù)字。

  -s 每一個(gè)磁叢(cluster)的磁區(qū)數(shù)。必須是 2 的次方數(shù)。不過(guò)除非你知道你在作什么,這個(gè)值不要亂給。

  -v 提供額外的訊息

  范例:

  mkdosfs -n Tester /dev/fd0 將 A 槽里的磁碟片格式化為 DOS 格式,并將標(biāo)簽設(shè)為 Tester

  從零開(kāi)始:Linux基礎(chǔ)教程之命令的使用

  對(duì)于 Linux 新手,或者那些想要重新審視或改進(jìn)自己對(duì)基本 Linux 概念(比如:復(fù)制和移動(dòng)文件、創(chuàng)建符號(hào)和硬鏈接、設(shè)置文件系統(tǒng)對(duì)象所有權(quán)和權(quán)限以及同管道和重定向一起使用 Linux 的標(biāo)準(zhǔn)文本處理命令)的理解的人來(lái)說(shuō),本系列連載文章之一是理想的教材。沿著這個(gè)方向,我們將一起分享很多心得、技巧和竅門(mén),使該教程甚至對(duì)于那些具有豐富經(jīng)驗(yàn)的 Linux 老手來(lái)說(shuō)都是“有血有肉”,并且是實(shí)用的。

  對(duì)于初學(xué)者而言,本系列文章的許多內(nèi)容都很新穎,而更有經(jīng)驗(yàn)的 Linux 用戶可能會(huì)發(fā)現(xiàn)本教程是使他們基本的 Linux 技能“爐火純青”的有效途徑。

  介紹 bash

  shell

  如果您使用過(guò) Linux 系統(tǒng),那么您知道當(dāng)?shù)卿洉r(shí),將會(huì)看到像這樣的提示符:

  $

  您所看到的特殊的提示符可能看起來(lái)很不一樣。它可能包含系統(tǒng)的主機(jī)名、當(dāng)前的工作目錄名,或者兩者都有。但是不管這個(gè)特殊的提示符看起來(lái)像什么,有一件事是肯定的。打印出這個(gè)提示符的程序叫“shell”,極有可能您的特殊的 shell 是一個(gè)叫 bash 的程序。

  您在運(yùn)行 bash 嗎?

  您可以通過(guò)輸入下面的命令來(lái)檢查您是否正在運(yùn)行 bash:

  $ echo $SHELL

  /bin/bash

  如果上面的命令行報(bào)錯(cuò)或者不會(huì)類似地響應(yīng)我們的示例,那么您可能正在運(yùn)行一個(gè)不同于 bash 的 shell。

  關(guān)于 bash

  Bash 是“Bourne-again shell”的首字母縮寫(xiě),它是大多數(shù) Linux 系統(tǒng)缺省的 shell。shell 的任務(wù)是執(zhí)行您的命令,使您能夠與 Linux 系統(tǒng)進(jìn)行交互。當(dāng)您輸完命令,您可以通知 shell 執(zhí)行 exit 或 logout 命令,在此您將返回到登錄提示符。順便提一下,您還可以通過(guò)在 bash 提示符下按 control-D 來(lái)注銷。

  使用“cd”

  您可能已經(jīng)發(fā)現(xiàn),目不轉(zhuǎn)睛地盯著bash提示符可不是世界上最讓人感到有勁的事。那么,讓我們來(lái)開(kāi)始用 bash 來(lái)瀏覽我們的文件系統(tǒng)。在提示符下,輸入下面的命令(不包括 $):

  $ cd /

  我們只告訴 bash 您想在 /(也稱為根目錄)中工作;系統(tǒng)上的所有目錄形成一棵樹(shù),/ 被認(rèn)為是這棵樹(shù)的頂部,或者是根。cd設(shè)置當(dāng)前您正在工作的目錄,也稱為“當(dāng)前工作目錄”。

  路徑

  要看 bash 的當(dāng)前工作目錄,您可以輸入:

  $ pwd

  /

  在上面的示例中,cd 的 / 參數(shù)叫做路徑。它告訴 cd 我們要轉(zhuǎn)到什么地方。特別是,/ 參數(shù)是一個(gè)絕對(duì)路徑,意味著它指定了相對(duì)于文件系統(tǒng)樹(shù)的根的位置。絕對(duì)路徑這里有幾個(gè)其它的絕對(duì)路徑:

  /dev

  /usr

  /usr/bin

  /usr/local/bin

  您可以看到,所有絕對(duì)路徑有一個(gè)共同點(diǎn)就是,它們都以/開(kāi)頭。通過(guò)路徑/usr/local/bin,我們告訴 cd 進(jìn)入 / 目錄,接著進(jìn)入這個(gè)目錄之下的usr目錄,然后再進(jìn)入 local 和 bin。絕對(duì)路徑總是通過(guò)是否以 / 開(kāi)頭來(lái)判斷。

  相對(duì)路徑

  另一種路徑叫相對(duì)路徑。在 Bash 中,cd 以及其它命令總是解釋那些相對(duì)于當(dāng)前目錄的路徑。相對(duì)路徑絕不會(huì)以 / 開(kāi)頭。這樣,如果我們?cè)?/usr 中:

  $ cd /usr

  那么,我們可以使用相對(duì)路徑來(lái)轉(zhuǎn)到 /usr/local/bin 目錄:

  $ cd local/bin

  $ pwd

  /usr/local/bin

  使用“..”

  相對(duì)路徑還可以包含一個(gè)或多個(gè) .. 目錄。.. 目錄是指向父目錄的專門(mén)目錄。那么,繼續(xù)前面的示例:

  $ pwd

  /usr/local/bin

  $ cd ..

  $ pwd

  /usr/local

  您可以看到,現(xiàn)在我們的當(dāng)前目錄是 /usr/local。我們能夠“后退”到相對(duì)于我們所在的當(dāng)前目錄的一個(gè)目錄。此外,我們還可以將 \"..\" 添加到一個(gè)現(xiàn)有的相對(duì)路徑中,使我們可以進(jìn)入與我們已在目錄并排的目錄,例如:

  $ pwd

  /usr/local

  $ cd ../share

  $ pwd

  /usr/share

  相對(duì)路徑示例

  相對(duì)路徑可以變得相當(dāng)復(fù)雜。這里有幾個(gè)示例,所有的都沒(méi)有顯示出結(jié)果的目標(biāo)路徑。請(qǐng)?jiān)囍茢嘁幌?,輸入這些命令后,您最終將會(huì)轉(zhuǎn)到什么地方:

  $ cd /bin

  $ cd ../usr/share/zoneinfo

  $ cd /usr/X11R6/bin

  $ cd ../lib/X11

  $ cd /usr/bin

  $ cd ../bin/../bin

  現(xiàn)在,試驗(yàn)一次,看看您的推斷是否正確。

  理解“.”

  在我們結(jié)束 cd 的介紹之前,我們還需要討論一些更多的內(nèi)容。首先,還有另一個(gè)叫 . 的專門(mén)的目錄。它表示“當(dāng)前目錄”。然而該目錄不為 cd 命令使用,它通常用來(lái)執(zhí)行一些當(dāng)前目錄中的程序,如下所示:

  $ ./myprog

  在上面的示例中,駐留在當(dāng)前工作目錄中的 myprog 可執(zhí)行文件將被執(zhí)行。

  cd 和主目錄

  如果我們想要轉(zhuǎn)到主目錄,我們可以輸入:

  $ cd

  沒(méi)有參數(shù),cd 將轉(zhuǎn)到主目錄,對(duì)于超級(jí)用戶來(lái)說(shuō)是 /root,對(duì)于一般用戶來(lái)說(shuō)通常是/home/username。但是,如果我們想要指定一個(gè)主目錄中的文件,將會(huì)怎樣呢?可能我們想要將一個(gè)文件參數(shù)傳給 myprog 命令。如果該文件在主目錄中,我們可以輸入:

  $ ./myprog /home/drobbins/myfile.txt

  但是,使用像這樣的絕對(duì)路徑并不總是很方便。幸好,我們可以使用 ~(代字符)字符來(lái)完成同樣的事:

  $ ./myprog ~/myfile.txt

  其他用戶的主目錄Bash 將把單獨(dú)的 ~ 擴(kuò)展為指向主目錄,然而您還可以用它來(lái)指向其他用戶的主目錄。例如,如果我們想要引用 fred 的主目錄中的名為 fredsfile.txt 的文件,可以輸入:

  $ ./myprog ~fred/fredsfile.txt

  使用 Linux 命令

  介紹 ls

  現(xiàn)在,我們將快速地看一看 ls 命令。很可能,您已經(jīng)很熟悉 ls,并且知道只輸入 ls 本身將列出當(dāng)前工作目錄的內(nèi)容: $">[b]通過(guò)指定 -a 選項(xiàng),您可以看到目錄中的所有文件,包括隱藏文件 — 那些以 . 開(kāi)頭的文件。您可以在下面的示例中看到,ls -a 將顯示 . 和 .. 專門(mén)的目錄鏈接:$">[b]遞歸和索引節(jié)點(diǎn)清單。

  您可以使用 -d 來(lái)查看目錄本身,而您還可以用 -R 來(lái)完成相反的工作 — 不僅只查看一個(gè)目錄內(nèi)部,而且要遞歸地查看該目錄內(nèi)所有的目錄內(nèi)部!我們將不會(huì)有對(duì)應(yīng)該選項(xiàng)的任何示例輸出(因?yàn)樗话阏己艽蟮钠?,但是為了感覺(jué)一下它是怎樣工作的,您可以試幾個(gè) ls -R 和 ls -Rl 命令。最后,ls 的 -i 選項(xiàng)可以用來(lái)在清單中顯示文件系統(tǒng)對(duì)象的索引節(jié)點(diǎn)號(hào):

  $ ls -i /usr

  1409 X11R6 314258 i686-linux

  43090 libexec 13394 sbin

  1417 bin 1513 i686-pc-linux-gnu

  5120 local 13408 share

  8316 distfiles 1517 include

  776 man 23779 src

  43 doc 1386 info 93892 portage

  36737 ssl

  70744 gentoo-x86 1585 lib 5132

  portage.old 784 tmp

  理解索引節(jié)點(diǎn),第 1 部分

  文件系統(tǒng)的每個(gè)對(duì)象都分配到一個(gè)獨(dú)一無(wú)二的索引,叫做索引節(jié)點(diǎn)號(hào)。這可能看起來(lái)微不足道,但是理解索引節(jié)點(diǎn)對(duì)于理解許多文件系統(tǒng)操作來(lái)說(shuō)很重要。例如,請(qǐng)考慮出現(xiàn)在每個(gè)目錄中的 . 和 .. 鏈接。為了完全理解 .. 目錄實(shí)際上是什么,我們將先來(lái)看一看 /usr/local 的索引節(jié)點(diǎn)號(hào):

  $ ls -id /usr/local

  5120 /usr/local

  /usr/local

  目錄有一個(gè) 5120 索引節(jié)點(diǎn)號(hào)?,F(xiàn)在,我們來(lái)看一 看 /usr/local/bin/.. 的索引節(jié)點(diǎn)號(hào):

  $ ls -id /usr/local/bin/..

  5120 /usr/local/bin/..

  您可以看到,/usr/local/bin/..具有和/usr/local相同的索引節(jié)點(diǎn)號(hào)!這就是我們抓住的問(wèn)題的實(shí)質(zhì)。過(guò)去,我們認(rèn)為 /usr/local 是這個(gè)目錄本身。

  現(xiàn)在,我們發(fā)現(xiàn)索引節(jié)點(diǎn) 5120實(shí)際上是這個(gè)目錄,并且我們發(fā)現(xiàn)了指向該索引節(jié)點(diǎn)的兩個(gè)目錄條目(叫做“鏈接”)。/usr/local 和 /usr/local/bin/..都鏈接到索引節(jié)點(diǎn) 5120。雖然索引節(jié)點(diǎn) 5120 只在磁盤(pán)中的一地方存在,但是多個(gè)目錄條目都鏈接到它上面。事實(shí)上,通過(guò)使用 ls -dl 命令,我們可以看到索引節(jié)點(diǎn) 5120 被引用的總次數(shù)

  $ ls -dl /usr/local

  drwxr-xr-x 8 root root 240 Dec 22 20:

  57 /usr/local

  如果我們看一看從左起的第二欄,我們可以看到目錄 /usr/local(索引節(jié)點(diǎn) 5120)被引用了 8 次。在我的系統(tǒng)中,引用該索引節(jié)點(diǎn)的不同路徑有這些:

  /usr/local

  /usr/local/.

  /usr/local/bin/..

  /usr/local/games/..

  /usr/local/lib/..

  /usr/local/sbin/..

  /usr/local/share/..

  /usr/local/src/..

  mkdir

  我們來(lái)快速地看一看 mkdir 命令,它可以用來(lái)創(chuàng)建新目錄。下面的示例創(chuàng)建了三個(gè)新目錄:tic、tac 和 toe,都在 /tmp 下:

  $ cd /tmp

  $ mkdir tic tac toe

  缺省情況下,mkdir 不會(huì)為您創(chuàng)建父目錄;鄰接的上一元素的完整路徑必須存在。因此,如果您想要?jiǎng)?chuàng)建目錄 won/der/ful,您將需要發(fā)出三個(gè)單獨(dú)的 mkdir 命令:

  $ mkdir won/der/ful

  mkdir: cannot create directory

  `won/der/ful': No such file or directory

  $ mkdir won

  $ mkdir won/der

  $ mkdir won/der/ful

  mkdir -p

  然而,mkdir有一個(gè)很方便的-p選項(xiàng),該選項(xiàng)告訴mkdir創(chuàng)建所有缺少的父目錄,如下所示:

  $ mkdir -p easy/as/pie

  總之,非常簡(jiǎn)單。要學(xué)習(xí)更多關(guān)于 mkdir 命令的知識(shí),請(qǐng)輸入 man mkdir 來(lái)閱讀手冊(cè)頁(yè)。除 cd(它內(nèi)置在 bash 中)之外,這幾乎適用于這里所涉及的所有命令(比如 man ls)。

  touch

  現(xiàn)在,我們將要快速地看一看 cp 和 mv 命令,這些命令用來(lái)復(fù)制、重命名以及移動(dòng)文件和目錄。為了開(kāi)始該概述,我們將首先用 touch 命令在 /tmp 中創(chuàng)建一個(gè)文件:

  $ cd /tmp

  $ touch copyme

  如果文件存在,touch 命令將更新文件的“mtime”(請(qǐng)回想 ls -l 輸出中的第六欄)。如果文件不存在,那么將創(chuàng)建一個(gè)新的空文件?,F(xiàn)在您應(yīng)該有一個(gè)大小為零的 /tmp/copyme 文件。

  echo 和重定向

  既然文件存在,我們來(lái)把一些數(shù)據(jù)添加到文件中。我們可以使用echo命令來(lái)完成,它帶有自己參數(shù),并且把這些參數(shù)打印到標(biāo)準(zhǔn)輸出。首先,單獨(dú)的 echo 命令是這樣的:

  $ echo \"firstfile\"

  firstfile

  帶有輸出重定向的同樣的 echo 命令為:

  $ echo \"firstfile\" > copyme

  大于符號(hào)告訴 shell 將 echo 的輸出寫(xiě)到名為 copyme 的文件中。如果該文件不存在,將創(chuàng)建這個(gè)文件;如果該文件存在,將覆蓋這個(gè)文件。通過(guò)輸入 ls -l,我們可以看到 copyme 文件為 10 個(gè)字節(jié)長(zhǎng),因?yàn)樗?firstfile 這個(gè)詞和換行符:

  $ ls -l copyme

  -rw-r--r-- 1 root root 10 Dec 28 14:13 copyme

  cat 和 cp

  為了在終端顯示文件的內(nèi)容,要使用 cat 命令:

  $ cat copyme

  firstfile

  現(xiàn)在,我們可以使用 cp 命令的基本調(diào)用來(lái)由原始的 copyme 文件創(chuàng)建 copiedme 文件:

  $ cp copyme copiedme

  通過(guò)觀察,我們發(fā)現(xiàn)它們確實(shí)是相互獨(dú)立的文件;它們的索引節(jié)點(diǎn)號(hào)不同:

  $ ls -i copyme copiedme

  648284 copiedme 650704 copyme

  mv

  現(xiàn)在,我們來(lái)用“mv”命令將“copiedme”重命名為“movedme”。其索引節(jié)點(diǎn)號(hào)將仍然是同一個(gè);但是,指向該索引節(jié)點(diǎn)的文件名將改變。

  $ mv copiedme movedme

  $ ls -i movedme

  648284 movedme

  只要目標(biāo)文件和源文件駐留在同一文件系統(tǒng)上,被移動(dòng)的文件的索引節(jié)點(diǎn)號(hào)就將仍然不變。在本教程系列的第 3 部分,我們將進(jìn)一步看一下文件系統(tǒng)。

  創(chuàng)建鏈接和刪除文件

  硬鏈接

  當(dāng)談及目錄條目和索引節(jié)點(diǎn)之間關(guān)系時(shí),我們提到了鏈接這個(gè)術(shù)語(yǔ)。Linux 實(shí)際有兩種鏈接。到此為止我們所討論的這種鏈接叫硬鏈接。一個(gè)給定的索引節(jié)點(diǎn)可以有任意數(shù)目的硬鏈接,該索引節(jié)點(diǎn)一直存在于文件系統(tǒng),直到所有的硬鏈接消失。可以使用 ln 命令來(lái)創(chuàng)建新的硬鏈接

  $ cd /tmp

  $ touch firstlink

  $ ln firstlink secondlink

  $ ls -i firstlink secondlink

  15782 firstlink 15782 secondlink

  您可以看到,硬鏈接工作于索引節(jié)點(diǎn)級(jí)別,指向特殊的文件。在 Linux 系統(tǒng)上,硬鏈接有幾個(gè)局限性。第一,您只能給文件建立硬鏈接,而不能給目錄建立硬鏈接。的確如此;即便 . 和 .. 是系統(tǒng)給目錄創(chuàng)建的硬鏈接,也不允許您(“root”用戶也不行)創(chuàng)建任何您自己的硬鏈接。

  硬鏈接的第二個(gè)局限性是它們不能跨文件系統(tǒng)。這意味著,如果您的 / 和 /usr 存在于不同的文件系統(tǒng),您不能創(chuàng)建從 /usr/bin/bash 到 /bin/bash 的鏈接。

  符號(hào)鏈接

  實(shí)際上,符號(hào)鏈接(symbolic link,或“symlinks”)比硬鏈接更常用到。符號(hào)鏈接是一種專門(mén)的文件類型,在這種文件類型中,鏈接通過(guò)名稱引用另一個(gè)文件,而不是直接引用索引節(jié)點(diǎn)。符號(hào)鏈接不阻止文件被刪除;如果目標(biāo)文件消失,那么符號(hào)鏈接僅僅是不可用,或“被破壞”。

  通過(guò)將 -s 選項(xiàng)傳給 ln,可以創(chuàng)建符號(hào)鏈接。

  $ ln -s secondlink thirdlink

  $ ls -l firstlink secondlink thirdlink

  -rw-rw-r-- 2 agriffis agriffis 0 Dec 31 19:

  08 firstlink

  -rw-rw-r-- 2 agriffis agriffis 0 Dec 31 19:

  08 secondlink

  lrwxrwxrwx 1 agriffis agriffis 10 Dec 31 19:

  39 thirdlink -> secondlink

  在 ls -l 輸出中,可以用三種方式區(qū)分符號(hào)鏈接和一般文件。第一,請(qǐng)注意第一欄包含一個(gè) l 字符的輸出表明是符號(hào)鏈接。第二,符號(hào)鏈接的大小是目標(biāo)文件(本例是 secondlink)的字符數(shù)。第三,輸出的最后一欄顯示目標(biāo)文件名。

  符號(hào)鏈接通常比硬鏈接更靈活。您可以給任何類型的文件系統(tǒng)對(duì)象(包括目錄)創(chuàng)建符號(hào)鏈接。又因?yàn)榉?hào)鏈接的實(shí)現(xiàn)是基于路徑的(而不是索引節(jié)點(diǎn)),所以創(chuàng)建指向另一個(gè)文件系統(tǒng)上的對(duì)象的符號(hào)鏈接是完全可行的。但是,這一事實(shí)也使符號(hào)鏈接理解起來(lái)很復(fù)雜。請(qǐng)考慮我們想要在/tmp中創(chuàng)建一個(gè)指向 /usr/local/bin的鏈接的情況。我們應(yīng)該輸入:

  $ ln -s /usr/local/bin bin1

  $ ls -l bin1

  lrwxrwxrwx 1 root root 14 Jan 1 15:

  42 bin1 -> /usr/local/bin

  或者還可以輸入:

  $ ln -s ../usr/local/bin bin2

  $ ls -l bin2

  lrwxrwxrwx 1 root root 16 Jan 1 15:

  43 bin2 -> ../usr/local/bin

  您可以看到,兩個(gè)符號(hào)鏈接都指向同一目錄。但是,如果我們的第二個(gè)符號(hào)鏈接在任何時(shí)刻被移動(dòng)到另一個(gè)目錄,由于相對(duì)路徑的緣故,它將遭到“破壞”。

  $ ls -l bin2

  lrwxrwxrwx 1 root root 16 Jan 1 15:

  43 bin2 -> ../usr/local/bin

  $ mkdir mynewdir

  $ mv bin2 mynewdir

  $ cd mynewdir

  $ cd bin2

  bash: cd: bin2: No such file or directory

  因?yàn)?tmp/usr/local/bin這個(gè)目錄不存在,我們不能再把目錄轉(zhuǎn)到bin2;換句話說(shuō),bin2 現(xiàn)在被破壞了。

  由于這個(gè)原因,有時(shí)避免用相對(duì)路徑信息來(lái)創(chuàng)建符號(hào)鏈接是個(gè)好主意。但是,在許多情況下,相對(duì)的符號(hào)鏈接很管用。請(qǐng)考慮一個(gè)示例,在這個(gè)示例中您想要給 /usr/bin 中的一個(gè)程序創(chuàng)建一個(gè)別名:

  # ls -l /usr/bin/keychain

  -rwxr-xr-x 1 root root 10150 Dec 12 20:09 /usr/bin/keychain

  作為 root 用戶,您可能想要給“keychain”創(chuàng)建一個(gè)別名,比如“kc”。在這個(gè)示例中,我們有 root 訪問(wèn)權(quán),由 bash 提示符改變?yōu)?ldquo;#”可以證明。我們之所以需要 root 訪問(wèn)權(quán)是因?yàn)橐话阌脩舨荒茉?/usr/bin 中創(chuàng)建文件。作為 root 用戶,我們可以像下面這樣給 keychain 創(chuàng)建一個(gè)別名:

  # cd /usr/bin

  # ln -s /usr/bin/keychain kc

  當(dāng)這個(gè)解決方法起作用時(shí),如果我們想要把兩個(gè)文件都移到 /usr/local/bin 時(shí),它將會(huì)出現(xiàn)問(wèn)題。

  # mv /usr/bin/keychain

  /usr/bin/kc /usr/local/bin

  因?yàn)樵诜?hào)鏈接中,我們使用了絕對(duì)路徑,而我們的kc符號(hào)鏈接仍然指向/usr/bin/keychain,它已不存在了——另一個(gè)被破壞的符號(hào)鏈接。符號(hào)鏈接中的相對(duì)路徑和絕對(duì)路徑都各具優(yōu)點(diǎn),您應(yīng)該使用適合于您的特殊應(yīng)用的路徑類型。一般情況下,相對(duì)路徑或絕對(duì)路徑都能工作得很好。在這種情況下,下面的示例將起作用:

  # cd /usr/bin

  # ln -s keychain kc

  # ls -l kc

  lrwxrwxrwx 1 root root 8 Jan 5 12:

  40 kc -> keychain

  rm

  既然我們知道怎樣使用 cp、mv 和 ln,現(xiàn)在我們?cè)搶W(xué)習(xí)怎樣把對(duì)象從文件系統(tǒng)中刪除了。通常,這用 rm 命令來(lái)完成。要?jiǎng)h除文件,只需在命令行中指定它們:

  $ cd /tmp

  $ touch file1 file2

  $ ls -l file1 file2

  -rw-r--r-- 1 root root 0 Jan 1 16:41 file1

  -rw-r--r-- 1 root root 0 Jan 1 16:41 file2

  $ rm file1 file2

  $ ls -l file1 file2

  ls: file1: No such file or directory

  ls: file2: No such file or directory

  rmdir

  要?jiǎng)h除目錄,您有兩種選擇。您可以刪除目錄中所有的對(duì)象,然后使用 rmdir 來(lái)刪除目錄本身:

  $ mkdir mydir

  $ touch mydir/file1

  $ rm mydir/file1

  $ rmdir mydir

  rm 和目錄

  或者,您可以使用 rm 命令的 recursive force選項(xiàng)來(lái)告訴rm刪除您指定的目錄以及目錄中包含的所有對(duì)象:

  $ rm -rf mydir

  一般情況下,rm -rf 是刪除目錄樹(shù)的首選方法。在使用 rm -rf 時(shí)要十分小心,因?yàn)樗墓δ芸梢员缓芎玫乩?,也可能?huì)因使用不當(dāng)造成惡果。

  介紹通配符

  在您日常的 Linux 使用中,有很多時(shí)候您可能需要一次對(duì)多個(gè)文件系統(tǒng)對(duì)象執(zhí)行單一操作(比如 rm)。在這些情況下,在命令行中輸入許多文件通常讓人感到厭煩,為了解決這個(gè)問(wèn)題,您可以利用 Linux 內(nèi)置的通配符支持。這種支持也叫做“globbing”(由于歷史原因),允許您通過(guò)使用通配符模式一次指定多個(gè)文件。

  Bash 和其它 Linux 命令將通過(guò)在磁盤(pán)上查找并找到任何與之匹配的文件來(lái)解釋這種模式。因此,如果在當(dāng)前工作目錄中,您有從 file1 到 file8 的文件,那么您可以輸入下面的命令來(lái)刪除這些文件:

  $ rm file[1-8]

  或者,如果您只想要?jiǎng)h除文件名以 file 開(kāi)頭的所有文件,您可以輸入:

  $ rm file*

  理解不匹配

  或者,如果您想要列出 /etc 中以 g 開(kāi)頭的所有文件系統(tǒng)對(duì)象,您可以輸入:

  $ ls -d /etc/g*

  /etc/gconf /etc/ggi /etc/gimp /etc/gnome

  /etc/gnome-vfs-mime-magic /etc/gpm

  /etc/group /etc/group-

  現(xiàn)在,如果您指定了沒(méi)有任何文件系統(tǒng)對(duì)象與之匹配的模式,會(huì)怎么樣呢?在下面的示例中,我們?cè)噲D列出 /usr/bin 中以 asdf 開(kāi)頭并且以 jkl 結(jié)尾的所有文件:

  $ ls -d /usr/bin/asdf*jkl

  ls: /usr/bin/asdf*jkl:

  No such file or directory

  這里是對(duì)所發(fā)生情況的說(shuō)明。通常,當(dāng)我們指定一種模式時(shí),該模式與底層系統(tǒng)上的一個(gè)或多個(gè)文件匹配,bash 以空格隔開(kāi)的所有匹配對(duì)象的列表來(lái)替換該模式。

  但是,當(dāng)模式不能找到匹配對(duì)象時(shí),bash 將不理會(huì)參數(shù)、通配符等等,保留原樣。因此,當(dāng)“ls”不能找到文件 /usr/bin/asdf*jkl 時(shí),它會(huì)報(bào)錯(cuò)。此處的有效的規(guī)則是:glob 模式只在與文件系統(tǒng)中的對(duì)象匹配時(shí)才可以進(jìn)行擴(kuò)展。

  Linux必學(xué)的重要命令

  tar

  1. 作用

  tar命令是Unix/Linux系統(tǒng)中備份文件的可靠方法,幾乎可以工作于任何環(huán)境中,它的使用權(quán)限是所有用戶。

  2. 格式

  tar [主選項(xiàng)+輔選項(xiàng)] 文件或目錄

  3.主要參數(shù)

  使用該命令時(shí),主選項(xiàng)是必須要有的,它告訴tar要做什么事情,輔選項(xiàng)是輔助使用的,可以選用。

  主選項(xiàng):

  -c 創(chuàng)建新的檔案文件。如果用戶想備份一個(gè)目錄或是一些文件,就要選擇這個(gè)選項(xiàng)。

  -r 把要存檔的文件追加到檔案文件的未尾。例如用戶已經(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)址是[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í)行不同的功能。文件或目錄名稱可以混合使用大小寫(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中即可:

  

學(xué)習(xí)啦 > 學(xué)習(xí)電腦 > 操作系統(tǒng) > Linux教程 > Linux常用系統(tǒng)及網(wǎng)絡(luò)命令大全

Linux常用系統(tǒng)及網(wǎng)絡(luò)命令大全

時(shí)間: 春健736 分享

Linux常用系統(tǒng)及網(wǎng)絡(luò)命令大全

  你打開(kāi)瀏覽器,自由地游弋于浩如煙海的互聯(lián)網(wǎng)世界之時(shí),是否也沉迷于下載各種實(shí)用軟件?其中也許有很大一部分就是網(wǎng)絡(luò)工具吧!那你知道Linux常用系統(tǒng)及網(wǎng)絡(luò)命令嗎?下面大家跟著學(xué)習(xí)啦小編一起來(lái)學(xué)習(xí)一下吧。

  Linux常用系統(tǒng)及網(wǎng)絡(luò)命令

  計(jì)算機(jī)網(wǎng)絡(luò)的主要優(yōu)點(diǎn)是能夠?qū)崿F(xiàn)資源和信息的共享,并且用戶可以遠(yuǎn)程訪問(wèn)信息。Linux提供了一組強(qiáng)有力的網(wǎng)絡(luò)命令來(lái)為用戶服務(wù),這些工具能夠幫助用戶登錄到遠(yuǎn)程計(jì)算機(jī)上、傳輸文件和執(zhí)行遠(yuǎn)程命令等。

  本章介紹下列幾個(gè)常用的有關(guān)網(wǎng)絡(luò)操作的命令:

  ftp 傳輸文件

  telnet 登錄到遠(yuǎn)程計(jì)算機(jī)上

  r - 使用各種遠(yuǎn)程命令

  netstat 查看網(wǎng)絡(luò)的狀況

  nslookup 查詢域名和IP地址的對(duì)應(yīng)

  finger 查詢某個(gè)使用者的信息

  ping 查詢某個(gè)機(jī)器是否在工作

  使用ftp命令進(jìn)行遠(yuǎn)程文件傳輸

  ftp命令是標(biāo)準(zhǔn)的文件傳輸協(xié)議的用戶接口。ftp是在TCP/IP網(wǎng)絡(luò)上的計(jì)算機(jī)之間傳輸文件的簡(jiǎn)單有效的方法。它允許用戶傳輸ASCII文件和二進(jìn)制文件。

  在ftp會(huì)話過(guò)程中,用戶可以通過(guò)使用ftp客戶程序連接到另一臺(tái)計(jì)算機(jī)上。從此,用戶可以在目錄中上下移動(dòng)、列出目錄內(nèi)容、把文件從遠(yuǎn)程機(jī)拷貝到本地機(jī)上、把文件從本地機(jī)傳輸?shù)竭h(yuǎn)程系統(tǒng)中。

  需要注意的是,如果用戶沒(méi)有那個(gè)文件的存取權(quán)限,就不能從遠(yuǎn)程系統(tǒng)中獲得文件或向遠(yuǎn)程系統(tǒng)傳輸文件。 為了使用ftp來(lái)傳輸文件,用戶必須知道遠(yuǎn)程計(jì)算機(jī)上的合法用戶名和口令。這個(gè)用戶名/口令的組合用來(lái)確認(rèn)ftp

  會(huì)話,并用來(lái)確定用戶對(duì)要傳輸?shù)奈募梢赃M(jìn)行什么樣的訪問(wèn)。另外,用戶顯然需要知道對(duì)其進(jìn)行ftp 會(huì)話的計(jì)算機(jī)的名字或IP地址。

  Ftp命令的功能是在本地機(jī)和遠(yuǎn)程機(jī)之間傳送文件。該命令的一般格式如下:

  $ ftp 主機(jī)名/IP

  其中“主機(jī)名/IP”是所要連接的遠(yuǎn)程機(jī)的主機(jī)名或IP地址。在命令行中,主機(jī)名屬于選項(xiàng),如果指定主機(jī)名,ftp將試圖與遠(yuǎn)程機(jī)的ftp服務(wù)程序進(jìn)行連接;如果沒(méi)有指定主機(jī)名,ftp將給出提示符,等待用戶輸入命令:

  $ ftp ftp > 此時(shí)在ftp>提示符后面輸入open命令加主機(jī)名或IP地址,將試圖連接指定的主機(jī)。 不管使用哪一種方法,如果連接成功,需要在遠(yuǎn)程機(jī)上登錄。用戶如果在遠(yuǎn)程機(jī)上有帳號(hào),就可以通過(guò)ftp使用這一帳號(hào)并需要提供口令。

  在遠(yuǎn)程機(jī)上的用戶帳號(hào)的讀寫(xiě)權(quán)限決定該用戶在遠(yuǎn)程機(jī)上能下載什么文件和將上載文件放到哪個(gè)目錄中。如果沒(méi)有遠(yuǎn)程機(jī)的專用登錄帳號(hào),許多ftp站點(diǎn)設(shè)有可以使用的特殊帳號(hào)。這個(gè)帳號(hào)的登錄名為anonymous(也稱為匿名ftp),當(dāng)使用這一帳號(hào)時(shí),要求輸入email地址作為口令。

  如果遠(yuǎn)程系統(tǒng)提供匿名ftp服務(wù),用戶使用這項(xiàng)服務(wù)可以登錄到特殊的,供公開(kāi)使用的目錄。

  一般專門(mén)提供兩個(gè)目錄:pub目錄和incoming目錄。pub目錄包含該站點(diǎn)供公眾使用的所有文件,incoming目錄存放上載到該站點(diǎn)的文件。

  一旦用戶使用ftp在遠(yuǎn)程站點(diǎn)上登錄成功,將得到“ftp>”提示符?,F(xiàn)在可以自由使用ftp提供的命令,可以用 help命令取得可供使用的命令清單,也可以在

  help命令后面指定具體的命令名稱,獲得這條命令的說(shuō)明。

  最常用的命令有:

  ls 列出遠(yuǎn)程機(jī)的當(dāng)前目錄

  cd 在遠(yuǎn)程機(jī)上改變工作目錄

  lcd 在本地機(jī)上改變工作目錄

  ascii 設(shè)置文件傳輸方式為ASCII模式

  binary 設(shè)置文件傳輸方式為二進(jìn)制模式

  close終止當(dāng)前的ftp會(huì)話

  hash 每次傳輸完數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù)后就顯示一個(gè)#號(hào)

  get(mget) 從遠(yuǎn)程機(jī)傳送指定文件到本地機(jī)

  put(mput) 從本地機(jī)傳送指定文件到遠(yuǎn)程機(jī)

  open 連接遠(yuǎn)程ftp站點(diǎn)

  quit斷開(kāi)與遠(yuǎn)程機(jī)的連接并退出ftp

  ? 顯示本地幫助信息

  ! 轉(zhuǎn)到Shell中

  下面簡(jiǎn)單將ftp常用命令作一簡(jiǎn)介。

  啟動(dòng)ftp會(huì)話 open命令用于打開(kāi)一個(gè)與遠(yuǎn)程主機(jī)的會(huì)話。該命令的一般格式是: open 主機(jī)名/IP 如果在ftp 會(huì)話期間要與一個(gè)以上的站點(diǎn)連接,通常只用不帶參數(shù)的ftp命令。如果在會(huì)話期間只想與一臺(tái)計(jì)算機(jī)連接,那么在命令行上指定遠(yuǎn)程主機(jī)名或IP地址作為 ftp命令的參數(shù)。

  終止ftp會(huì)話 close、disconnect、quit和bye命令用于終止與遠(yuǎn)程機(jī)的會(huì)話。close和disronnect命令關(guān)閉與遠(yuǎn)程機(jī)的連接,但是使用戶留在本地計(jì)算機(jī)的ftp程序中。quit和bye命令都關(guān)閉用戶與遠(yuǎn)程機(jī)的連接,然后退出用戶機(jī)上的ftp

  程序。 改變目錄 “cd [目錄](méi)”命令用于在ftp會(huì)話期間改變遠(yuǎn)程機(jī)上的目錄,lcd命令改變本地目錄,使用戶能指定查找或放置本地文件的位置。

  遠(yuǎn)程目錄列表 ls命令列出遠(yuǎn)程目錄的內(nèi)容,就像使用一個(gè)交互shell中的ls命令一樣。ls命令的一般格式是: ls [目錄](méi) [本地文件]

  如果指定了目錄作為參數(shù),那么ls就列出該目錄的內(nèi)容。如果給出一個(gè)本地文件的名字,那么這個(gè)目錄列表被放入本地機(jī)上您指定的這個(gè)文件中。 從遠(yuǎn)程系統(tǒng)獲取文件

  get和mget命令用于從遠(yuǎn)程機(jī)上獲取文件。get命令的一般格式為: get 文件名 您還可以給出本地文件名,這個(gè)文件名是這個(gè)要獲取的文件在您的本地機(jī)上創(chuàng)建時(shí)的文件名。如果您不給出一個(gè)本地文件名,那么就使用遠(yuǎn)程文件原來(lái)的名字。

  mget命令一次獲取多個(gè)遠(yuǎn)程文件。mget命令的一般格式為: mget 文件名列表 使用用空格分隔的或帶通配符的文件名列表來(lái)指定要獲取的文件,對(duì)其中的每個(gè)文件都要求用戶確認(rèn)是否傳送。

  向遠(yuǎn)程系統(tǒng)發(fā)送文件 put和mput命令用于向遠(yuǎn)程機(jī)發(fā)送文件。Put命令的一般格式為: put 文件名 mput命令一次發(fā)送多個(gè)本地文件,mput命令的一般格式為:

  mput 文件名列表 使用用空格分隔的或帶通配符的文件名列表來(lái)指定要發(fā)送的文件。對(duì)其中的每個(gè)文件都要求用戶確認(rèn)是否發(fā)送。 改變文件傳輸模式

  默認(rèn)情況下,ftp按ASCII模式傳輸文件,用戶也可以指定其他模式。ascii和brinary命令的功能是設(shè)置傳輸?shù)哪J?。用ASCII模式傳輸文件對(duì)純文本是非常好的,但為避免對(duì)二進(jìn)制文件的破壞,用戶可以以二進(jìn)制模式傳輸文件。

  檢查傳輸狀態(tài) 傳輸大型文件時(shí),可能會(huì)發(fā)現(xiàn)讓ftp提供關(guān)于傳輸情況的反饋信息是非常有用的。hash命令使ftp在每次傳輸完數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù)后,就在屏幕上打印一個(gè)#字符。本命令在發(fā)送和接收文件時(shí)都可以使用。

  ftp中的本地命令 當(dāng)您使用ftp時(shí),字符“!”用于向本地機(jī)上的命令shell傳送一個(gè)命令。如果用戶處在ftp會(huì)話中,需要shell做某些事,就很有用。例如用戶要建立一個(gè)目錄來(lái)保存接收到的文件。如果輸入!mkdir

  new_dir,那么Linux就在用戶當(dāng)前的本地目錄中創(chuàng)建一個(gè)名為new_dir 的目錄。

  從遠(yuǎn)程機(jī)grunthos下載二進(jìn)制數(shù)據(jù)文件的典型對(duì)話過(guò)程如下:

  $ ftp grunthos Connected to grunthos 220 grunthos ftp server Name (grunthos:pc):

  anonymous 33l Guest login ok, send your complete e-mail address as password.

  Password: 230 Guest 1ogin ok, access restrictions apply. Remote system

  type is UNIX. ftp > cd pub 250 CWD command successful. ftp > ls

  200 PORT command successful. l50 opening ASCII mode data connection for

  /bin/1s. total ll4 rog1 rog2 226 Transfer comp1ete . ftp > binary 200

  type set to I. ftp > hash Hash mark printing on (1024 bytes/hash mark).

  ftp > get rog1 200 PORT command successfu1. 150 opening BINARY mode

  data connection for rogl (l4684 bytes). # # # # # # # # # # # # # 226

  Transfer complete. 14684 bytes received in 0.0473 secs (3e + 02 Kbytes/sec)

  ftp > quit 22l Goodbye.

  使用telnet命令訪問(wèn)遠(yuǎn)程計(jì)算機(jī)

  用戶使用telnet命令進(jìn)行遠(yuǎn)程登錄。該命令允許用戶使用telnet協(xié)議在遠(yuǎn)程計(jì)算機(jī)之間進(jìn)行通信,用戶可以通過(guò)網(wǎng)絡(luò)在遠(yuǎn)程計(jì)算機(jī)上登錄,就像登錄到本地機(jī)上執(zhí)行命令一樣。

  為了通過(guò)telnet登錄到遠(yuǎn)程計(jì)算機(jī)上,必須知道遠(yuǎn)程機(jī)上的合法用戶名和口令。雖然有些系統(tǒng)確實(shí)為遠(yuǎn)程用戶提供登錄功能,但出于對(duì)安全的考慮,要限制來(lái)賓的操作權(quán)限,因此,這種情況下能使用的功能是很少的。當(dāng)允許遠(yuǎn)程用戶登錄時(shí),系統(tǒng)通常把這些用戶放在一個(gè)受限制的shell中,以防系統(tǒng)被懷有惡意的或不小心的用戶破壞。

  用戶還可以使用telnet從遠(yuǎn)程站點(diǎn)登錄到自己的計(jì)算機(jī)上,檢查電子郵件、編輯文件和運(yùn)行程序,就像在本地登錄一樣。

  但是,用戶只能使用基于終端的環(huán)境而不是X Wndows環(huán)境,telnet只為普通終端提供終端仿真,而不支持 X Wndow等圖形環(huán)境。 telnet命令的一般形式為:

  telnet 主機(jī)名/IP 其中“主機(jī)名/IP”是要連接的遠(yuǎn)程機(jī)的主機(jī)名或IP地址。如果這一命令執(zhí)行成功,將從遠(yuǎn)程機(jī)上得到login:提示符。

  使用telnet命令登錄的過(guò)程如下: $ telnet 主機(jī)名/IP 啟動(dòng)telnet會(huì)話。 一旦telnet成功地連接到遠(yuǎn)程系統(tǒng)上,就顯示登錄信息并提示用戶輸人用戶名和口令。如果用戶名和口令輸入正確,就能成功登錄并在遠(yuǎn)程系統(tǒng)上工作。

  在telnet提示符后面可以輸入很多命令,用來(lái)控制telnet會(huì)話過(guò)程,在telnet聯(lián)機(jī)幫助手冊(cè)中對(duì)這些命令有詳細(xì)的說(shuō)明。

  下面是一臺(tái)Linux計(jì)算機(jī)上的telnet會(huì)話舉例:

  $ telnet server. somewhere. com Trying 127.0.0.1… Connected to serve.

  somewhere. com. Escape character is \'?]\'. “TurboLinux release 4. 0 (Colgate)

  kernel 2.0.18 on an I486   login: bubba password: Last login:Mon Nov

  l5 20:50:43 for localhost Linux 2. 0.6. (Posix). server: ~$ server: ~$

  logout Connection closed by foreign host $

  用戶結(jié)束了遠(yuǎn)程會(huì)話后,一定要確保使用logout命令退出遠(yuǎn)程系統(tǒng)。然后telnet報(bào)告遠(yuǎn)程會(huì)話被關(guān)閉,并返回到用戶的本地機(jī)的Shell提示符下。

  r-系列命令 除ftp和telnet以外,還可以使用r-系列命令訪問(wèn)遠(yuǎn)程計(jì)算機(jī)和在網(wǎng)絡(luò)上交換文件。使用r-系列命令需要特別注意,因?yàn)槿绻脩舨恍⌒模蜁?huì)造成嚴(yán)重的安全漏洞。用戶發(fā)出一個(gè)r-系列命令后,遠(yuǎn)程系統(tǒng)檢查名為 /etc/hosts.equiv的文件,以查看用戶的主機(jī)是否列在這個(gè)文件中。如果它沒(méi)有找到用戶的主機(jī),就檢查遠(yuǎn)程機(jī)上同名用戶的主目錄中名為.

  rhosts的文件,看是否包括該用戶的主機(jī)。如果該用戶的主機(jī)包括在這兩個(gè)文件中的任何一個(gè)之中,該用戶執(zhí)行r-系列命令就不用提供口令。

  雖然用戶每次訪問(wèn)遠(yuǎn)程機(jī)時(shí)不用鍵入口令可能是非常方便的,但是它也可能會(huì)帶來(lái)嚴(yán)重的安全問(wèn)題。我們建議用戶在建立/etc/hosts.equiv和.rhosts文件之前,仔細(xì)考慮r-命令隱含的安全問(wèn)題。

  rlogin命令

  功能:rlogin 是“remote login”(遠(yuǎn)程登錄)的縮寫(xiě)。該命令與telnet命令很相似,允許用戶啟動(dòng)遠(yuǎn)程系統(tǒng)上的交互命令會(huì)話。

  格式: rlogin [ -8EKLdx ] [ -e char ] [-k

  realm ] [ - l username ] host

  參數(shù):

  -8 此選項(xiàng)始終允許8位輸入數(shù)據(jù)通道。該選項(xiàng)允許發(fā)送格式化的ANSI字符和其他的特殊代碼。如果不用這個(gè)選項(xiàng),除非遠(yuǎn)端的終止和啟動(dòng)字符不是或,否則就去掉奇偶校驗(yàn)位。

  -E 停止把任何字符當(dāng)作轉(zhuǎn)義字符。當(dāng)和-8選項(xiàng)一起使用時(shí),它提供一個(gè)完全的透明連接。

  -K 關(guān)閉所有的Kerberos確認(rèn)。只有與使用Kerberos 確認(rèn)協(xié)議的主機(jī)連接時(shí)才使用這個(gè)選項(xiàng)。

  -L 允許rlogin會(huì)話在litout模式中運(yùn)行。要了解更多信息,請(qǐng)查閱tty聯(lián)機(jī)幫助。

  -d 打開(kāi)與遠(yuǎn)程主機(jī)進(jìn)行通信的TCP sockets的socket調(diào)試。要了解更多信息,請(qǐng)查閱setsockopt的聯(lián)機(jī)幫助。

  -e 為rlogin會(huì)話設(shè)置轉(zhuǎn)義字符,默認(rèn)的轉(zhuǎn)義字符是“~”,用戶可以指定一個(gè)文字字符或一個(gè)\nnn形式的八進(jìn)制數(shù)。

  -k 請(qǐng)求rlogin獲得在指定區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos許可,而不是獲得由krb_realmofhost(3)確定的遠(yuǎn)程主機(jī)區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos

  許可。

  -x 為所有通過(guò)rlogin會(huì)話傳送的數(shù)據(jù)打開(kāi)DES加密。這會(huì)影響響應(yīng)時(shí)間和CPU利用率,但是可以提高安全性。

  rsh命令

  功能:rsh是“remote shell”(遠(yuǎn)程 shell)的縮寫(xiě)。 該命令在指定的遠(yuǎn)程主機(jī)上啟動(dòng)一個(gè)shell并執(zhí)行用戶在rsh命令行中指定的命令。如果用戶沒(méi)有給出要執(zhí)行的命令,rsh就用rlogin命令使用戶登錄到遠(yuǎn)程機(jī)上。

  格式:rsh [-Kdnx] [-k realm] [-l username]

  host [command]

  command可以是從shell提示符下鍵人的任何Linux命令。

  參數(shù):

  -K 關(guān)閉所有的Kerbero確認(rèn)。該選項(xiàng)只在與使用Kerbero確認(rèn)的主機(jī)連接時(shí)才使用。

  -d 打開(kāi)與遠(yuǎn)程主機(jī)進(jìn)行通信的TCP sockets的socket調(diào)試。要了解更多的信息,請(qǐng)查閱setsockopt的聯(lián)機(jī)幫助。

  -k 請(qǐng)求rsh獲得在指定區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos許可,而不是獲得由krb_relmofhost(3)確定的遠(yuǎn)程主機(jī)區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos許可。

  -l 缺省情況下,遠(yuǎn)程用戶名與本地用戶名相同。本選項(xiàng)允許指定遠(yuǎn)程用戶名,如果指定了遠(yuǎn)程用戶名,則使用Kerberos 確認(rèn),與在rlogin命令中一樣。

  -n 重定向來(lái)自特殊設(shè)備/dev/null的輸入。

  -x 為傳送的所有數(shù)據(jù)打開(kāi)DES加密。這會(huì)影響響應(yīng)時(shí)間和CPU利用率,但是可以提高安全性。    Linux把標(biāo)準(zhǔn)輸入放入rsh命令中,并把它拷貝到要遠(yuǎn)程執(zhí)行的命令的標(biāo)準(zhǔn)輸入中。它把遠(yuǎn)程命令的標(biāo)準(zhǔn)輸出拷貝到rsh的標(biāo)準(zhǔn)輸出中。它還把遠(yuǎn)程標(biāo)準(zhǔn)錯(cuò)誤拷貝到本地標(biāo)準(zhǔn)錯(cuò)誤文件中。任何退出、中止和中斷信號(hào)都被送到遠(yuǎn)程命令中。當(dāng)遠(yuǎn)程命令終止了,rsh也就終止了。

  rcp命令

  功能:rcp代表“remote file copy”(遠(yuǎn)程文件拷貝)。該命令用于在計(jì)算機(jī)之間拷貝文件。

  rcp命令有兩種格式。第一種格式用于文件到文件的拷貝;第二種格式用于把文件或目錄拷貝到另一個(gè)目錄中。

  格式:

  rcp [-px] [-k realm] file1 file2 rcp [-px] [-r] [-k realm] file

  directory 每個(gè)文件或目錄參數(shù)既可以是遠(yuǎn)程文件名也可以是本地文件名。遠(yuǎn)程文件名具有如下形式:rname@rhost:path,其中rname是遠(yuǎn)程用戶名,rhost是遠(yuǎn)程計(jì)算機(jī)名,path是這個(gè)文件的路徑。

  參數(shù):

  -r 遞歸地把源目錄中的所有內(nèi)容拷貝到目的目錄中。要使用這個(gè)選項(xiàng),目的必須是一個(gè)目錄。

  -p 試圖保留源文件的修改時(shí)間和模式,忽略u(píng)mask。

  -k 請(qǐng)求rcp獲得在指定區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos 許可,而不是獲得由krb_relmofhost(3)確定的遠(yuǎn)程主機(jī)區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos許可。

  -x 為傳送的所有數(shù)據(jù)打開(kāi)DES加密。這會(huì)影響響應(yīng)時(shí)間和CPU利用率,但是可以提高安全性。如果在文件名中指定的路徑不是完整的路徑名,那么這個(gè)路徑被解釋為相對(duì)遠(yuǎn)程機(jī)上同名用戶的主目錄。如果沒(méi)有給出遠(yuǎn)程用戶名,就使用當(dāng)前用戶名。如果遠(yuǎn)程機(jī)上的路徑包含特殊shell字符,需要用反斜線(\)、雙引號(hào)(”)或單引號(hào)(’)括起來(lái),使所有的shell元字符都能被遠(yuǎn)程地解釋。

  需要說(shuō)明的是,rcp不提示輸入口令,它通過(guò)rsh命令來(lái)執(zhí)行拷貝。 - Turbolinux 提供稿件

  This file is decompiled from a .CHM file

  by an UNREGISTERED version of Easy CHM.

  You can download Easy CHM at :

  Linux必學(xué)60個(gè)命令文件處理

  作者: artiomgy 中級(jí)會(huì)員(61.54.106.238)

  日期: 2005-10-07 13:15:19

  Linux系統(tǒng)信息存放在文件里,文件與普通的公務(wù)文件類似。每個(gè)文件都有自己的名字、內(nèi)容、存放地址及其它一些管理信息,如文件的用戶、文件的大小等。文件可以是一封信、一個(gè)通訊錄,或者是程序的源語(yǔ)句、程序的數(shù)據(jù),甚至可以包括可執(zhí)行的程序和其它非正文內(nèi)容。 Linux文件系統(tǒng)具有良好的結(jié)構(gòu),系統(tǒng)提供了很多文件處理程序。這里主要介紹常用的文件處理命令。

  file

  1.作用

  file通過(guò)探測(cè)文件內(nèi)容判斷文件類型,使用權(quán)限是所有用戶。

  2.格式

  file [options] 文件名

  3.[options]主?問(wèn)?

  -v:在標(biāo)準(zhǔn)輸出后顯示版本信息,并且退出。

  -z:探測(cè)壓縮過(guò)的文件類型。

  -L:允許符合連接。

  -f name:從文件namefile中讀取要分析的文件名列表。

  4.簡(jiǎn)單說(shuō)明

  使用file命令可以知道某個(gè)文件究竟是二進(jìn)制(ELF格式)的可執(zhí)行文件, 還是Shell Script文件,或者是其它的什么格式。file能識(shí)別的文件類型有目錄、Shell腳本、英文文本、二進(jìn)制可執(zhí)行文件、C語(yǔ)言源文件、文本文件、DOS的可執(zhí)行文件。

  5.應(yīng)用實(shí)例

  如果我們看到一個(gè)沒(méi)有后綴的文件grap,可以使用下面命令:

  $ file grap

  grap: English text

  此時(shí)系統(tǒng)顯示這是一個(gè)英文文本文件。需要說(shuō)明的是,file命令不能探測(cè)包括圖形、音頻、視頻等多媒體文件類型。

  mkdir

  1.作用

  mkdir命令的作用是建立名稱為dirname的子目錄,與MS DOS下的md命令類似,它的使用權(quán)限是所有用戶。

  2.格式

  mkdir [options] 目錄名

  3.[options]主要參數(shù)

  -m, --mode=模式:設(shè)定權(quán)限<模式>,與chmod類似。

  -p, --parents:需要時(shí)創(chuàng)建上層目錄;如果目錄早已存在,則不當(dāng)作錯(cuò)誤。

  -v, --verbose:每次創(chuàng)建新目錄都顯示信息。

  --version:顯示版本信息后離開(kāi)。

  4.應(yīng)用實(shí)例

  在進(jìn)行目錄創(chuàng)建時(shí)可以設(shè)置目錄的權(quán)限,此時(shí)使用的參數(shù)是“-m”。假設(shè)要?jiǎng)?chuàng)建的目錄名是“tsk”,讓所有用戶都有rwx(即讀、寫(xiě)、執(zhí)行的權(quán)限),那么可以使用以下命令:

  $ mkdir -m 777 tsk

  grep

  1.作用

  grep命令可以指定文件中搜索特定的內(nèi)容,并將含有這些內(nèi)容的行標(biāo)準(zhǔn)輸出。grep全稱是Global Regular Expression Print,表示全局正則表達(dá)式版本,它的使用權(quán)限是所有用戶。

  2.格式

  grep [options]

  3.主要參數(shù)

  [options]主要參數(shù):

  -c:只輸出匹配行的計(jì)數(shù)。

  -I:不區(qū)分大小寫(xiě)(只適用于單字符)。

  -h:查詢多文件時(shí)不顯示文件名。

  -l:查詢多文件時(shí)只輸出包含匹配字符的文件名。

  -n:顯示匹配行及行號(hào)。

  -s:不顯示不存在或無(wú)匹配文本的錯(cuò)誤信息。

  -v:顯示不包含匹配文本的所有行。

  pattern正則表達(dá)式主要參數(shù):

  \:忽略正則表達(dá)式中特殊字符的原有含義。

  ^:匹配正則表達(dá)式的開(kāi)始行。

  $: 匹配正則表達(dá)式的結(jié)束行。

  \<:從匹配正則表達(dá)式的行開(kāi)始。

  \>:到匹配正則表達(dá)式的行結(jié)束。

  [ ]:?jiǎn)蝹€(gè)字符,如[A]即A符合要求 。

  [ - ]:范圍,如[A-Z],即A、B、C一直到Z都符合要求 。

  。:所有的單個(gè)字符。

  * :有字符,長(zhǎng)度可以為0。

  正則表達(dá)式是Linux/Unix系統(tǒng)中非常重要的概念。正則表達(dá)式(也稱為“regex”或“regexp”)是一個(gè)可以描述一類字符串的模式(Pattern)。如果一個(gè)字符串可以用某個(gè)正則表達(dá)式來(lái)描述,我們就說(shuō)這個(gè)字符和該正則表達(dá)式匹配(Match)。這和DOS中用戶可以使用通配符 “*”代表任意字符類似。在Linux系統(tǒng)上,正則表達(dá)式通常被用來(lái)查找文本的模式,以及對(duì)文本執(zhí)行“搜索-替換”操作和其它功能。

  4.應(yīng)用實(shí)例

  查詢DNS服務(wù)是日常工作之一,這意味著要維護(hù)覆蓋不同網(wǎng)絡(luò)的大量IP地址。有時(shí)IP地址會(huì)超過(guò)2000個(gè)。如果要查看nnn.nnn網(wǎng)絡(luò)地址,但是卻忘了第二部分中的其余部分,只知到有兩個(gè)句點(diǎn),例如nnn nn..。要抽取其中所有nnn.nnn IP地址,使用[0-9 ]\{3 \}\.[0-0\。含義是任意數(shù)字出現(xiàn)3次,后跟句點(diǎn),接著是任意數(shù)字出現(xiàn)3次,后跟句點(diǎn)。

  $grep ´[0-9 ]\{3 \}\.[0-0\´ ipfile

  補(bǔ)充說(shuō)明,grep家族還包括fgrep和egrep。fgrep是fix grep,允許查找字符串而不是一個(gè)模式;egrep是擴(kuò)展grep,支持基本及擴(kuò)展的正則表達(dá)式,但不支持\q模式范圍的應(yīng)用及與之相對(duì)應(yīng)的一些更加規(guī)范的模式。

  dd

  1.作用

  dd命令用來(lái)復(fù)制文件,并根據(jù)參數(shù)將數(shù)據(jù)轉(zhuǎn)換和格式化。

  2.格式

  dd [options]

  3.[opitions]主要參數(shù)

  bs=字節(jié):強(qiáng)迫 ibs=<字節(jié)>及obs=<字節(jié)>。

  cbs=字節(jié):每次轉(zhuǎn)換指定的<字節(jié)>。

  conv=關(guān)鍵字:根據(jù)以逗號(hào)分隔的關(guān)鍵字表示的方式來(lái)轉(zhuǎn)換文件。

  count=塊數(shù)目:只復(fù)制指定<塊數(shù)目>的輸入數(shù)據(jù)。

  ibs=字節(jié):每次讀取指定的<字節(jié)>。

  if=文件:讀取<文件>內(nèi)容,而非標(biāo)準(zhǔn)輸入的數(shù)據(jù)。

  obs=字節(jié):每次寫(xiě)入指定的<字節(jié)>。

  of=文件:將數(shù)據(jù)寫(xiě)入<文件>,而不在標(biāo)準(zhǔn)輸出顯示。

  seek=塊數(shù)目:先略過(guò)以obs為單位的指定<塊數(shù)目>的輸出數(shù)據(jù)。

  skip=塊數(shù)目:先略過(guò)以ibs為單位的指定<塊數(shù)目>的輸入數(shù)據(jù)。

  4.應(yīng)用實(shí)例

  dd命令常常用來(lái)制作Linux啟動(dòng)盤(pán)。先找一個(gè)可引導(dǎo)內(nèi)核,令它的根設(shè)備指向正確的根分區(qū),然后使用dd命令將其寫(xiě)入軟盤(pán):

  $ rdev vmlinuz /dev/hda

  $dd if=vmlinuz of=/dev/fd0

  上面代碼說(shuō)明,使用rdev命令將可引導(dǎo)內(nèi)核vmlinuz中的根設(shè)備指向/dev/hda,請(qǐng)把“hda”換成自己的根分區(qū),接下來(lái)用dd命令將該內(nèi)核寫(xiě)入軟盤(pán)。

  find

  1.作用

  find命令的作用是在目錄中搜索文件,它的使用權(quán)限是所有用戶。

  2.格式

  find [path][options][expression]

  path指定目錄路徑,系統(tǒng)從這里開(kāi)始沿著目錄樹(shù)向下查找文件。它是一個(gè)路徑列表,相互用空格分離,如果不寫(xiě)path,那么默認(rèn)為當(dāng)前目錄。

  3.主要參數(shù)

  [options]參數(shù):

  -depth:使用深度級(jí)別的查找過(guò)程方式,在某層指定目錄中優(yōu)先查找文件內(nèi)容。

  -maxdepth levels:表示至多查找到開(kāi)始目錄的第level層子目錄。level是一個(gè)非負(fù)數(shù),如果level是0的話表示僅在當(dāng)前目錄中查找。

  -mindepth levels:表示至少查找到開(kāi)始目錄的第level層子目錄。

  -mount:不在其它文件系統(tǒng)(如Msdos、Vfat等)的目錄和文件中查找。

  -version:打印版本。

  [expression]是匹配表達(dá)式,是find命令接受的表達(dá)式,find命令的所有操作都是針對(duì)表達(dá)式的。它的參數(shù)非常多,這里只介紹一些常用的參數(shù)。

  —name:支持統(tǒng)配符*和?。

  -atime n:搜索在過(guò)去n天讀取過(guò)的文件。

  -ctime n:搜索在過(guò)去n天修改過(guò)的文件。

  -group grpoupname:搜索所有組為grpoupname的文件。

  -user 用戶名:搜索所有文件屬主為用戶名(ID或名稱)的文件。

  -size n:搜索文件大小是n個(gè)block的文件。

  -print:輸出搜索結(jié)果,并且打印。

  已編輯 1 次, 最后一次由 chase 于 05-10-21 12:01。

  管理: 刪除•移動(dòng)話題•關(guān)閉話題 •隱藏信息及回復(fù) •編輯

  選項(xiàng): 回復(fù)本帖•引用本帖•跟蹤•舉報(bào)

  Linux 的常用網(wǎng)絡(luò)命令

  作者: chase 總版主(219.239.136.141)

  日期: 2005-10-21 12:02:17

  Linux 的常用網(wǎng)絡(luò)命令

  作者: artiomgy 中級(jí)會(huì)員(61.54.106.238)

  日期: 2005-10-05 09:14:01

  計(jì)算機(jī)網(wǎng)絡(luò)的主要優(yōu)點(diǎn)是能夠?qū)崿F(xiàn)資源和信息的共享,并且用戶可以遠(yuǎn)程訪問(wèn)信息。Linux提供了一組強(qiáng)有力的網(wǎng)絡(luò)命令來(lái)為用戶服務(wù),這些工具能夠幫助用戶登錄到遠(yuǎn)程計(jì)算機(jī)上、傳輸文件和執(zhí)行遠(yuǎn)程命令等。

  本章介紹下列幾個(gè)常用的有關(guān)網(wǎng)絡(luò)操作的命令:

  ftp 傳輸文件

  telnet 登錄到遠(yuǎn)程計(jì)算機(jī)上

  r - 使用各種遠(yuǎn)程命令

  netstat 查看網(wǎng)絡(luò)的狀況

  nslookup 查詢域名和IP地址的對(duì)應(yīng)

  finger 查詢某個(gè)使用者的信息

  ping 查詢某個(gè)機(jī)器是否在工作

  使用ftp命令進(jìn)行遠(yuǎn)程文件傳輸

  ftp命令是標(biāo)準(zhǔn)的文件傳輸協(xié)議的用戶接口。ftp是在TCP/IP網(wǎng)絡(luò)上的計(jì)算機(jī)之間傳輸文件的簡(jiǎn)單有效的方法。它允許用戶傳輸ASCII文件和二進(jìn)制文件。

  在ftp會(huì)話過(guò)程中,用戶可以通過(guò)使用ftp客戶程序連接到另一臺(tái)計(jì)算機(jī)上。從此,用戶可以在目錄中上下移動(dòng)、列出目錄內(nèi)容、把文件從遠(yuǎn)程機(jī)拷貝到本地機(jī)上、把文件從本地機(jī)傳輸?shù)竭h(yuǎn)程系統(tǒng)中。

  需要注意的是,如果用戶沒(méi)有那個(gè)文件的存取權(quán)限,就不能從遠(yuǎn)程系統(tǒng)中獲得文件或向遠(yuǎn)程系統(tǒng)傳輸文件。 為了使用ftp來(lái)傳輸文件,用戶必須知道遠(yuǎn)程計(jì)算機(jī)上的合法用戶名和口令。這個(gè)用戶名/口令的組合用來(lái)確認(rèn)ftp

  會(huì)話,并用來(lái)確定用戶對(duì)要傳輸?shù)奈募梢赃M(jìn)行什么樣的訪問(wèn)。另外,用戶顯然需要知道對(duì)其進(jìn)行ftp 會(huì)話的計(jì)算機(jī)的名字或IP地址。

  Ftp命令的功能是在本地機(jī)和遠(yuǎn)程機(jī)之間傳送文件。該命令的一般格式如下:

  $ ftp 主機(jī)名/IP

  其中“主機(jī)名/IP”是所要連接的遠(yuǎn)程機(jī)的主機(jī)名或IP地址。在命令行中,主機(jī)名屬于選項(xiàng),如果指定主機(jī)名,ftp將試圖與遠(yuǎn)程機(jī)的ftp服務(wù)程序進(jìn)行連接;如果沒(méi)有指定主機(jī)名,ftp將給出提示符,等待用戶輸入命令:

  $ ftp ftp > 此時(shí)在ftp>提示符后面輸入open命令加主機(jī)名或IP地址,將試圖連接指定的主機(jī)。 不管使用哪一種方法,如果連接成功,需要在遠(yuǎn)程機(jī)上登錄。用戶如果在遠(yuǎn)程機(jī)上有帳號(hào),就可以通過(guò)ftp使用這一帳號(hào)并需要提供口令。

  在遠(yuǎn)程機(jī)上的用戶帳號(hào)的讀寫(xiě)權(quán)限決定該用戶在遠(yuǎn)程機(jī)上能下載什么文件和將上載文件放到哪個(gè)目錄中。如果沒(méi)有遠(yuǎn)程機(jī)的專用登錄帳號(hào),許多ftp站點(diǎn)設(shè)有可以使用的特殊帳號(hào)。這個(gè)帳號(hào)的登錄名為anonymous(也稱為匿名ftp),當(dāng)使用這一帳號(hào)時(shí),要求輸入email地址作為口令。

  如果遠(yuǎn)程系統(tǒng)提供匿名ftp服務(wù),用戶使用這項(xiàng)服務(wù)可以登錄到特殊的,供公開(kāi)使用的目錄。

  一般專門(mén)提供兩個(gè)目錄:pub目錄和incoming目錄。pub目錄包含該站點(diǎn)供公眾使用的所有文件,incoming目錄存放上載到該站點(diǎn)的文件。

  一旦用戶使用ftp在遠(yuǎn)程站點(diǎn)上登錄成功,將得到“ftp>”提示符?,F(xiàn)在可以自由使用ftp提供的命令,可以用 help命令取得可供使用的命令清單,也可以在

  help命令后面指定具體的命令名稱,獲得這條命令的說(shuō)明。

  最常用的命令有:

  ls 列出遠(yuǎn)程機(jī)的當(dāng)前目錄

  cd 在遠(yuǎn)程機(jī)上改變工作目錄

  lcd 在本地機(jī)上改變工作目錄

  ascii 設(shè)置文件傳輸方式為ASCII模式

  binary 設(shè)置文件傳輸方式為二進(jìn)制模式

  close終止當(dāng)前的ftp會(huì)話

  hash 每次傳輸完數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù)后就顯示一個(gè)#號(hào)

  get(mget) 從遠(yuǎn)程機(jī)傳送指定文件到本地機(jī)

  put(mput) 從本地機(jī)傳送指定文件到遠(yuǎn)程機(jī)

  open 連接遠(yuǎn)程ftp站點(diǎn)

  quit斷開(kāi)與遠(yuǎn)程機(jī)的連接并退出ftp

  ? 顯示本地幫助信息

  ! 轉(zhuǎn)到Shell中

  下面簡(jiǎn)單將ftp常用命令作一簡(jiǎn)介。

  啟動(dòng)ftp會(huì)話 open命令用于打開(kāi)一個(gè)與遠(yuǎn)程主機(jī)的會(huì)話。該命令的一般格式是: open 主機(jī)名/IP 如果在ftp 會(huì)話期間要與一個(gè)以上的站點(diǎn)連接,通常只用不帶參數(shù)的ftp命令。如果在會(huì)話期間只想與一臺(tái)計(jì)算機(jī)連接,那么在命令行上指定遠(yuǎn)程主機(jī)名或IP地址作為 ftp命令的參數(shù)。

  終止ftp會(huì)話 close、disconnect、quit和bye命令用于終止與遠(yuǎn)程機(jī)的會(huì)話。close和disronnect命令關(guān)閉與遠(yuǎn)程機(jī)的連接,但是使用戶留在本地計(jì)算機(jī)的ftp程序中。quit和bye命令都關(guān)閉用戶與遠(yuǎn)程機(jī)的連接,然后退出用戶機(jī)上的ftp

  程序。 改變目錄 “cd [目錄](méi)”命令用于在ftp會(huì)話期間改變遠(yuǎn)程機(jī)上的目錄,lcd命令改變本地目錄,使用戶能指定查找或放置本地文件的位置。

  遠(yuǎn)程目錄列表 ls命令列出遠(yuǎn)程目錄的內(nèi)容,就像使用一個(gè)交互shell中的ls命令一樣。ls命令的一般格式是: ls [目錄](méi) [本地文件]

  如果指定了目錄作為參數(shù),那么ls就列出該目錄的內(nèi)容。如果給出一個(gè)本地文件的名字,那么這個(gè)目錄列表被放入本地機(jī)上您指定的這個(gè)文件中。 從遠(yuǎn)程系統(tǒng)獲取文件

  get和mget命令用于從遠(yuǎn)程機(jī)上獲取文件。get命令的一般格式為: get 文件名 您還可以給出本地文件名,這個(gè)文件名是這個(gè)要獲取的文件在您的本地機(jī)上創(chuàng)建時(shí)的文件名。如果您不給出一個(gè)本地文件名,那么就使用遠(yuǎn)程文件原來(lái)的名字。

  mget命令一次獲取多個(gè)遠(yuǎn)程文件。mget命令的一般格式為: mget 文件名列表 使用用空格分隔的或帶通配符的文件名列表來(lái)指定要獲取的文件,對(duì)其中的每個(gè)文件都要求用戶確認(rèn)是否傳送。

  向遠(yuǎn)程系統(tǒng)發(fā)送文件 put和mput命令用于向遠(yuǎn)程機(jī)發(fā)送文件。Put命令的一般格式為: put 文件名 mput命令一次發(fā)送多個(gè)本地文件,mput命令的一般格式為:

  mput 文件名列表 使用用空格分隔的或帶通配符的文件名列表來(lái)指定要發(fā)送的文件。對(duì)其中的每個(gè)文件都要求用戶確認(rèn)是否發(fā)送。 改變文件傳輸模式

  默認(rèn)情況下,ftp按ASCII模式傳輸文件,用戶也可以指定其他模式。ascii和brinary命令的功能是設(shè)置傳輸?shù)哪J健S肁SCII模式傳輸文件對(duì)純文本是非常好的,但為避免對(duì)二進(jìn)制文件的破壞,用戶可以以二進(jìn)制模式傳輸文件。

  檢查傳輸狀態(tài) 傳輸大型文件時(shí),可能會(huì)發(fā)現(xiàn)讓ftp提供關(guān)于傳輸情況的反饋信息是非常有用的。hash命令使ftp在每次傳輸完數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù)后,就在屏幕上打印一個(gè)#字符。本命令在發(fā)送和接收文件時(shí)都可以使用。

  ftp中的本地命令 當(dāng)您使用ftp時(shí),字符“!”用于向本地機(jī)上的命令shell傳送一個(gè)命令。如果用戶處在ftp會(huì)話中,需要shell做某些事,就很有用。例如用戶要建立一個(gè)目錄來(lái)保存接收到的文件。如果輸入!mkdir

  new_dir,那么Linux就在用戶當(dāng)前的本地目錄中創(chuàng)建一個(gè)名為new_dir 的目錄。

  從遠(yuǎn)程機(jī)grunthos下載二進(jìn)制數(shù)據(jù)文件的典型對(duì)話過(guò)程如下:

  $ ftp grunthos Connected to grunthos 220 grunthos ftp server Name (grunthos:pc):

  anonymous 33l Guest login ok, send your complete e-mail address as password.

  Password: 230 Guest 1ogin ok, access restrictions apply. Remote system

  type is UNIX. ftp > cd pub 250 CWD command successful. ftp > ls

  200 PORT command successful. l50 opening ASCII mode data connection for

  /bin/1s. total ll4 rog1 rog2 226 Transfer comp1ete . ftp > binary 200

  type set to I. ftp > hash Hash mark printing on (1024 bytes/hash mark).

  ftp > get rog1 200 PORT command successfu1. 150 opening BINARY mode

  data connection for rogl (l4684 bytes). # # # # # # # # # # # # # 226

  Transfer complete. 14684 bytes received in 0.0473 secs (3e + 02 Kbytes/sec)

  ftp > quit 22l Goodbye.

  使用telnet命令訪問(wèn)遠(yuǎn)程計(jì)算機(jī)

  用戶使用telnet命令進(jìn)行遠(yuǎn)程登錄。該命令允許用戶使用telnet協(xié)議在遠(yuǎn)程計(jì)算機(jī)之間進(jìn)行通信,用戶可以通過(guò)網(wǎng)絡(luò)在遠(yuǎn)程計(jì)算機(jī)上登錄,就像登錄到本地機(jī)上執(zhí)行命令一樣。

  為了通過(guò)telnet登錄到遠(yuǎn)程計(jì)算機(jī)上,必須知道遠(yuǎn)程機(jī)上的合法用戶名和口令。雖然有些系統(tǒng)確實(shí)為遠(yuǎn)程用戶提供登錄功能,但出于對(duì)安全的考慮,要限制來(lái)賓的操作權(quán)限,因此,這種情況下能使用的功能是很少的。當(dāng)允許遠(yuǎn)程用戶登錄時(shí),系統(tǒng)通常把這些用戶放在一個(gè)受限制的shell中,以防系統(tǒng)被懷有惡意的或不小心的用戶破壞。

  用戶還可以使用telnet從遠(yuǎn)程站點(diǎn)登錄到自己的計(jì)算機(jī)上,檢查電子郵件、編輯文件和運(yùn)行程序,就像在本地登錄一樣。

  但是,用戶只能使用基于終端的環(huán)境而不是X Wndows環(huán)境,telnet只為普通終端提供終端仿真,而不支持 X Wndow等圖形環(huán)境。 telnet命令的一般形式為:

  telnet 主機(jī)名/IP 其中“主機(jī)名/IP”是要連接的遠(yuǎn)程機(jī)的主機(jī)名或IP地址。如果這一命令執(zhí)行成功,將從遠(yuǎn)程機(jī)上得到login:提示符。

  使用telnet命令登錄的過(guò)程如下: $ telnet 主機(jī)名/IP 啟動(dòng)telnet會(huì)話。 一旦telnet成功地連接到遠(yuǎn)程系統(tǒng)上,就顯示登錄信息并提示用戶輸人用戶名和口令。如果用戶名和口令輸入正確,就能成功登錄并在遠(yuǎn)程系統(tǒng)上工作。

  在telnet提示符后面可以輸入很多命令,用來(lái)控制telnet會(huì)話過(guò)程,在telnet聯(lián)機(jī)幫助手冊(cè)中對(duì)這些命令有詳細(xì)的說(shuō)明。

  下面是一臺(tái)Linux計(jì)算機(jī)上的telnet會(huì)話舉例:

  $ telnet server. somewhere. com Trying 127.0.0.1… Connected to serve.

  somewhere. com. Escape character is \'?]\'. “TurboLinux release 4. 0 (Colgate)

  kernel 2.0.18 on an I486   login: bubba password: Last login:Mon Nov

  l5 20:50:43 for localhost Linux 2. 0.6. (Posix). server: ~$ server: ~$

  logout Connection closed by foreign host $

  用戶結(jié)束了遠(yuǎn)程會(huì)話后,一定要確保使用logout命令退出遠(yuǎn)程系統(tǒng)。然后telnet報(bào)告遠(yuǎn)程會(huì)話被關(guān)閉,并返回到用戶的本地機(jī)的Shell提示符下。

  r-系列命令 除ftp和telnet以外,還可以使用r-系列命令訪問(wèn)遠(yuǎn)程計(jì)算機(jī)和在網(wǎng)絡(luò)上交換文件。使用r-系列命令需要特別注意,因?yàn)槿绻脩舨恍⌒?,就?huì)造成嚴(yán)重的安全漏洞。用戶發(fā)出一個(gè)r-系列命令后,遠(yuǎn)程系統(tǒng)檢查名為 /etc/hosts.equiv的文件,以查看用戶的主機(jī)是否列在這個(gè)文件中。如果它沒(méi)有找到用戶的主機(jī),就檢查遠(yuǎn)程機(jī)上同名用戶的主目錄中名為.

  rhosts的文件,看是否包括該用戶的主機(jī)。如果該用戶的主機(jī)包括在這兩個(gè)文件中的任何一個(gè)之中,該用戶執(zhí)行r-系列命令就不用提供口令。

  雖然用戶每次訪問(wèn)遠(yuǎn)程機(jī)時(shí)不用鍵入口令可能是非常方便的,但是它也可能會(huì)帶來(lái)嚴(yán)重的安全問(wèn)題。我們建議用戶在建立/etc/hosts.equiv和.rhosts文件之前,仔細(xì)考慮r-命令隱含的安全問(wèn)題。

  rlogin命令

  功能:rlogin 是“remote login”(遠(yuǎn)程登錄)的縮寫(xiě)。該命令與telnet命令很相似,允許用戶啟動(dòng)遠(yuǎn)程系統(tǒng)上的交互命令會(huì)話。

  格式: rlogin [ -8EKLdx ] [ -e char ] [-k

  realm ] [ - l username ] host

  參數(shù):

  -8 此選項(xiàng)始終允許8位輸入數(shù)據(jù)通道。該選項(xiàng)允許發(fā)送格式化的ANSI字符和其他的特殊代碼。如果不用這個(gè)選項(xiàng),除非遠(yuǎn)端的終止和啟動(dòng)字符不是或,否則就去掉奇偶校驗(yàn)位。

  -E 停止把任何字符當(dāng)作轉(zhuǎn)義字符。當(dāng)和-8選項(xiàng)一起使用時(shí),它提供一個(gè)完全的透明連接。

  -K 關(guān)閉所有的Kerberos確認(rèn)。只有與使用Kerberos 確認(rèn)協(xié)議的主機(jī)連接時(shí)才使用這個(gè)選項(xiàng)。

  -L 允許rlogin會(huì)話在litout模式中運(yùn)行。要了解更多信息,請(qǐng)查閱tty聯(lián)機(jī)幫助。

  -d 打開(kāi)與遠(yuǎn)程主機(jī)進(jìn)行通信的TCP sockets的socket調(diào)試。要了解更多信息,請(qǐng)查閱setsockopt的聯(lián)機(jī)幫助。

  -e 為rlogin會(huì)話設(shè)置轉(zhuǎn)義字符,默認(rèn)的轉(zhuǎn)義字符是“~”,用戶可以指定一個(gè)文字字符或一個(gè)\nnn形式的八進(jìn)制數(shù)。

  -k 請(qǐng)求rlogin獲得在指定區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos許可,而不是獲得由krb_realmofhost(3)確定的遠(yuǎn)程主機(jī)區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos

  許可。

  -x 為所有通過(guò)rlogin會(huì)話傳送的數(shù)據(jù)打開(kāi)DES加密。這會(huì)影響響應(yīng)時(shí)間和CPU利用率,但是可以提高安全性。

  rsh命令

  功能:rsh是“remote shell”(遠(yuǎn)程 shell)的縮寫(xiě)。 該命令在指定的遠(yuǎn)程主機(jī)上啟動(dòng)一個(gè)shell并執(zhí)行用戶在rsh命令行中指定的命令。如果用戶沒(méi)有給出要執(zhí)行的命令,rsh就用rlogin命令使用戶登錄到遠(yuǎn)程機(jī)上。

  格式:rsh [-Kdnx] [-k realm] [-l username]

  host [command]

  command可以是從shell提示符下鍵人的任何Linux命令。

  參數(shù):

  -K 關(guān)閉所有的Kerbero確認(rèn)。該選項(xiàng)只在與使用Kerbero確認(rèn)的主機(jī)連接時(shí)才使用。

  -d 打開(kāi)與遠(yuǎn)程主機(jī)進(jìn)行通信的TCP sockets的socket調(diào)試。要了解更多的信息,請(qǐng)查閱setsockopt的聯(lián)機(jī)幫助。

  -k 請(qǐng)求rsh獲得在指定區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos許可,而不是獲得由krb_relmofhost(3)確定的遠(yuǎn)程主機(jī)區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos許可。

  -l 缺省情況下,遠(yuǎn)程用戶名與本地用戶名相同。本選項(xiàng)允許指定遠(yuǎn)程用戶名,如果指定了遠(yuǎn)程用戶名,則使用Kerberos 確認(rèn),與在rlogin命令中一樣。

  -n 重定向來(lái)自特殊設(shè)備/dev/null的輸入。

  -x 為傳送的所有數(shù)據(jù)打開(kāi)DES加密。這會(huì)影響響應(yīng)時(shí)間和CPU利用率,但是可以提高安全性。    Linux把標(biāo)準(zhǔn)輸入放入rsh命令中,并把它拷貝到要遠(yuǎn)程執(zhí)行的命令的標(biāo)準(zhǔn)輸入中。它把遠(yuǎn)程命令的標(biāo)準(zhǔn)輸出拷貝到rsh的標(biāo)準(zhǔn)輸出中。它還把遠(yuǎn)程標(biāo)準(zhǔn)錯(cuò)誤拷貝到本地標(biāo)準(zhǔn)錯(cuò)誤文件中。任何退出、中止和中斷信號(hào)都被送到遠(yuǎn)程命令中。當(dāng)遠(yuǎn)程命令終止了,rsh也就終止了。

  rcp命令

  功能:rcp代表“remote file copy”(遠(yuǎn)程文件拷貝)。該命令用于在計(jì)算機(jī)之間拷貝文件。

  rcp命令有兩種格式。第一種格式用于文件到文件的拷貝;第二種格式用于把文件或目錄拷貝到另一個(gè)目錄中。

  格式:

  rcp [-px] [-k realm] file1 file2 rcp [-px] [-r] [-k realm] file

  directory 每個(gè)文件或目錄參數(shù)既可以是遠(yuǎn)程文件名也可以是本地文件名。遠(yuǎn)程文件名具有如下形式:rname@rhost:path,其中rname是遠(yuǎn)程用戶名,rhost是遠(yuǎn)程計(jì)算機(jī)名,path是這個(gè)文件的路徑。

  參數(shù):

  -r 遞歸地把源目錄中的所有內(nèi)容拷貝到目的目錄中。要使用這個(gè)選項(xiàng),目的必須是一個(gè)目錄。

  -p 試圖保留源文件的修改時(shí)間和模式,忽略u(píng)mask。

  -k 請(qǐng)求rcp獲得在指定區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos 許可,而不是獲得由krb_relmofhost(3)確定的遠(yuǎn)程主機(jī)區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos許可。

  -x 為傳送的所有數(shù)據(jù)打開(kāi)DES加密。這會(huì)影響響應(yīng)時(shí)間和CPU利用率,但是可以提高安全性。如果在文件名中指定的路徑不是完整的路徑名,那么這個(gè)路徑被解釋為相對(duì)遠(yuǎn)程機(jī)上同名用戶的主目錄。如果沒(méi)有給出遠(yuǎn)程用戶名,就使用當(dāng)前用戶名。如果遠(yuǎn)程機(jī)上的路徑包含特殊shell字符,需要用反斜線(\)、雙引號(hào)(”)或單引號(hào)(’)括起來(lái),使所有的shell元字符都能被遠(yuǎn)程地解釋。

  需要說(shuō)明的是,rcp不提示輸入口令,它通過(guò)rsh命令來(lái)執(zhí)行拷貝。 - Turbolinux 提供稿件

  This file is decompiled from a .CHM file

  by an UNREGISTERED version of Easy CHM.

  You can download Easy CHM at :

  指令名稱:cat

  使用權(quán)限:所有使用者

  使用方式:cat [-AbeEnstTuv] [--help] [--version] fileName

  說(shuō)明:把檔案串連接后傳到基本輸出(螢?zāi)换蚣?> fileName 到另一個(gè)檔案)

  參數(shù):

  -n 或 --number 由 1 開(kāi)始對(duì)所有輸出的行數(shù)編號(hào)

  -b 或 --number-nonblank 和 -n 相似,只不過(guò)對(duì)于空白行不編號(hào)

  -s 或 --squeeze-blank 當(dāng)遇到有連續(xù)兩行以上的空白行,就代換為一行的空白行

  -v 或 --show-nonprinting

  范例:

  cat -n textfile1 > textfile2 把 textfile1 的檔案內(nèi)容加上行號(hào)后輸入 textfile2 這個(gè)檔案里

  cat -b textfile1 textfile2 >> textfile3 把 textfile1 和 textfile2 的檔案內(nèi)容加上行號(hào)(空白行不加)之后將內(nèi)容附加到 textfile3 里。

  范例:

  把 textfile1 的檔案內(nèi)容加上行號(hào)后輸入 textfile2 這個(gè)檔案里

  cat -n textfile1 > textfile2

  把 textfile1 和 textfile2 的檔案內(nèi)容加上行號(hào)(空白行不加)之后將內(nèi)容附加到 textfile3 里。

  cat -b textfile1 textfile2 >> textfile3

  cat /dev/null > /etc/test.txt 此為清空/etc/test.txt檔案內(nèi)容

  cat 也可以用來(lái)制作 image file。例如要制作軟碟的 image file,將軟碟放好后打

  cat /dev/fd0 > OUTFILE

  相反的,如果想把 image file 寫(xiě)到軟碟,請(qǐng)打

  cat IMG_FILE > /dev/fd0

  注:

  1. OUTFILE 指輸出的 image 檔名。

  2. IMG_FILE 指 image file。

  3. 若從 image file 寫(xiě)回 device 時(shí),device 容量需與相當(dāng)。

  4. 通常用在制作開(kāi)機(jī)磁片。

  指令名稱 : chmod

  使用權(quán)限 : 所有使用者

  使用方式 : chmod [-cfvR] [--help] [--version] mode file...

  說(shuō)明 : Linux/Unix 的檔案調(diào)用權(quán)限分為三級(jí) : 檔案擁有者、群組、其他。利用 chmod 可以藉以控制檔案如何被他人所調(diào)用。

  參數(shù) :

  mode : 權(quán)限設(shè)定字串,格式如下 : [ugoa...][[+-=][rwxX]...][,...],其中

  u 表示該檔案的擁有者,g 表示與該檔案的擁有者屬于同一個(gè)群體(group)者,o 表示其他以外的人,a 表示這三者皆是。

  + 表示增加權(quán)限、- 表示取消權(quán)限、= 表示唯一設(shè)定權(quán)限。

  r 表示可讀取,w 表示可寫(xiě)入,x 表示可執(zhí)行,X 表示只有當(dāng)該檔案是個(gè)子目錄或者該檔案已經(jīng)被設(shè)定過(guò)為可執(zhí)行。

  -c : 若該檔案權(quán)限確實(shí)已經(jīng)更改,才顯示其更改動(dòng)作

  -f : 若該檔案權(quán)限無(wú)法被更改也不要顯示錯(cuò)誤訊息

  -v : 顯示權(quán)限變更的詳細(xì)資料

  -R : 對(duì)目前目錄下的所有檔案與子目錄進(jìn)行相同的權(quán)限變更(即以遞回的方式逐個(gè)變更)

  --help : 顯示輔助說(shuō)明

  --version : 顯示版本

  范例 :將檔案 file1.txt 設(shè)為所有人皆可讀取 :

  chmod ugo+r file1.txt

  將檔案 file1.txt 設(shè)為所有人皆可讀取 :

  chmod a+r file1.txt

  將檔案 file1.txt 與 file2.txt 設(shè)為該檔案擁有者,與其所屬同一個(gè)群體者可寫(xiě)入,但其他以外的人則不可寫(xiě)入 :

  chmod ug+w,o-w file1.txt file2.txt

  將 ex1.py 設(shè)定為只有該檔案擁有者可以執(zhí)行 :

  chmod u+x ex1.py

  將目前目錄下的所有檔案與子目錄皆設(shè)為任何人可讀取 :

  chmod -R a+r *

  此外chmod也可以用數(shù)字來(lái)表示權(quán)限如 chmod 777 file

  語(yǔ)法為:chmod abc file

  其中a,b,c各為一個(gè)數(shù)字,分別表示User、Group、及Other的權(quán)限。

  r=4,w=2,x=1

  若要rwx屬性則4+2+1=7;

  若要rw-屬性則4+2=6;

  若要r-x屬性則4+1=7。

  范例:

  chmod a=rwx file

  和

  chmod 777 file

  效果相同

  chmod ug=rwx,o=x file

  和

  chmod 771 file

  效果相同

  若用chmod 4755 filename可使此程序具有root的權(quán)限

  指令名稱 : ln

  使用權(quán)限 : 所有使用者

  使用方式 : ln [options] source dist,其中 option 的格式為 :

  [-bdfinsvF] [-S backup-suffix] [-V {numbered,existing,simple}]

  [--help] [--version] [--]

  說(shuō)明 : Linux/Unix 檔案系統(tǒng)中,有所謂的連結(jié)(link),我們可以將其視為檔案的別名,而連結(jié)又可分為兩種 : 硬連結(jié)(hard link)與軟連結(jié)(symbolic link),硬連結(jié)的意思是一個(gè)檔案可以有多個(gè)名稱,而軟連結(jié)的方式則是產(chǎn)生一個(gè)特殊的檔案,該檔案的內(nèi)容是指向另一個(gè)檔案的位置。硬連結(jié)是存在同一個(gè)檔案系統(tǒng)中,而軟連結(jié)卻可以跨越不同的檔案系統(tǒng)。

  ln source dist 是產(chǎn)生一個(gè)連結(jié)(dist)到 source,至于使用硬連結(jié)或軟鏈結(jié)則由參數(shù)決定。

  不論是硬連結(jié)或軟鏈結(jié)都不會(huì)將原本的檔案復(fù)制一份,只會(huì)占用非常少量的磁碟空間。

  參數(shù) :

  -f : 鏈結(jié)時(shí)先將與 dist 同檔名的檔案刪除-d : 允許系統(tǒng)管理者硬鏈結(jié)自己的目錄-i : 在刪除與 dist 同檔名的檔案時(shí)先進(jìn)行詢問(wèn)-n : 在進(jìn)行軟連結(jié)時(shí),將 dist 視為一般的檔案-s : 進(jìn)行軟鏈結(jié)(symbolic link)-v : 在連結(jié)之前顯示其檔名-b : 將在鏈結(jié)時(shí)會(huì)被覆寫(xiě)或刪除的檔案進(jìn)行備份-S SUFFIX : 將備份的檔案都加上

  SUFFIX 的字尾-V METHOD : 指定備份的方式--help : 顯示輔助說(shuō)明--version : 顯示版本

  范例 :

  將檔案 yy 產(chǎn)生一個(gè) symbolic link : zz

  ln -s yy zz

  將檔案 yy 產(chǎn)生一個(gè) hard link : zz

  ln yy xx

  名稱:locate

  使用權(quán)限:所有使用者

  使用方式: locate [-q] [-d ] [--database= ]

  locate [-r ] [--regexp= ]

  locate [-qv] [-o ] [--output= ]

  locate [-e ] [-f ] <[-l ] [-c]

  <[-U ] [-u]>

  locate [-Vh] [--version] [--help]

  說(shuō)明:

  locate 讓使用者可以很快速的搜尋檔案系統(tǒng)內(nèi)是否有指定的檔案。其方法是先建立一個(gè)包括系統(tǒng)內(nèi)所有檔案名稱及路徑的數(shù)據(jù)庫(kù),之后當(dāng)尋找時(shí)就只需查詢這個(gè)數(shù)據(jù)庫(kù),而不必實(shí)際深入檔案系統(tǒng)之中了。

  在一般的 distribution 之中,數(shù)據(jù)庫(kù)的建立都被放在 contab 中自動(dòng)執(zhí)行。一般使用者在使用時(shí)只要用

  # locate your_file_name的型式就可以了。

  參數(shù):

  -u

  -U

  建立數(shù)據(jù)庫(kù),-u 會(huì)由根目錄開(kāi)始,-U 則可以指定開(kāi)始的位置。

  -e

  將 排除在尋找的范圍之外。

  -l

  如果 是 1.則啟動(dòng)安全模式。在安全模式下,使用者不會(huì)看到權(quán)限無(wú)法看到的檔案。這會(huì)始速度減慢,因?yàn)?locate 必須至實(shí)際的檔案系統(tǒng)中取得檔案的權(quán)限資料。

  -f

  將特定的檔案系統(tǒng)排除在外,例如我們沒(méi)有到理要把 proc 檔案系統(tǒng)中的檔案放在數(shù)據(jù)庫(kù)中。

  -q

  安靜模式,不會(huì)顯示任何錯(cuò)誤訊息。

  -n

  至多顯示 個(gè)輸出。

  -r

  使用正規(guī)運(yùn)算式 做尋找的條件。

  -o

  指定數(shù)據(jù)庫(kù)存的名稱。

  -d

  指定數(shù)據(jù)庫(kù)的路徑

  -h

  顯示輔助訊息

  -v

  顯示更多的訊息

  -V

  顯示程序的版本訊息 范例:

  locate chdrv : 尋找所有叫 chdrv 的檔案

  locate -n 100 a.out : 尋找所有叫 a.out 的檔案,但最多只顯示 100 個(gè)

  locate -u : 建立數(shù)據(jù)庫(kù)

  locate命令可以在搜尋數(shù)據(jù)庫(kù)時(shí)快速找到檔案,數(shù)據(jù)庫(kù)由updatedb程序來(lái)更新,updatedb是由cron daemon周期性建立的,locate命令在搜尋數(shù)據(jù)庫(kù)時(shí)比由整個(gè)由硬盤(pán)資料來(lái)搜尋資料來(lái)得快,但較差勁的是locate所找到的檔案若是最近才建立或剛更名的,可能會(huì)找不到,在內(nèi)定值中,updatedb每天會(huì)跑一次,可以由修改crontab來(lái)更新設(shè)定值。(etc/crontab)

  locate指定用在搜尋符合條件的檔案,它會(huì)去儲(chǔ)存檔案與目錄名稱的數(shù)據(jù)庫(kù)內(nèi),尋找合乎范本樣式條件的檔案或目錄錄,可以使用特殊字元(如”*” 或”?”等)來(lái)指定范本樣式,如指定范本為kcpa*ner, locate會(huì)找出所有起始字串為kcpa且結(jié)尾為ner的檔案或目錄,如名稱為kcpartner若目錄錄名稱為kcpa_ner則會(huì)列出該目錄下包括子目錄在內(nèi)的所有檔案。

  locate指令和find找尋檔案的功能類似,但locate是透過(guò)update程序?qū)⒂脖P(pán)中的所有檔案和目錄資料先建立一個(gè)索引數(shù)據(jù)庫(kù),在執(zhí)行 loacte時(shí)直接找該索引,查詢速度會(huì)較快,索引數(shù)據(jù)庫(kù)一般是由操作系統(tǒng)管理,但也可以直接下達(dá)update強(qiáng)迫系統(tǒng)立即修改索引數(shù)據(jù)庫(kù)。

  不過(guò)第一次在執(zhí)行update後再使用locate尋找檔案常會(huì)失敗,此時(shí)就要執(zhí)行slocate ˉu該命令(也可執(zhí)行updatedb指令,其效果相同)來(lái)更新slocate數(shù)據(jù)庫(kù),該命令會(huì)在/usr/sbin下產(chǎn)生slocate執(zhí)行檔,再由 locate到此數(shù)據(jù)庫(kù)尋找所要找的資料。

  linux指令大全(一)(轉(zhuǎn)自linuxeden.com)

  cat cd

  chmod chown

  cp cut

  名稱:cat

  使用權(quán)限:所有使用者

  使用方式:cat [-AbeEnstTuv] [--help] [--version] fileName

  說(shuō)明:把檔案串連接后傳到基本輸出(螢?zāi)换蚣?> fileName 到另一個(gè)檔案)

  參數(shù):

  -n 或 --number 由 1 開(kāi)始對(duì)所有輸出的行數(shù)編號(hào)

  -b 或 --number-nonblank 和 -n 相似,只不過(guò)對(duì)于空白行不編號(hào)

  -s 或 --squeeze-blank 當(dāng)遇到有連續(xù)兩行以上的空白行,就代換為一行的空白行

  -v 或 --show-nonprinting

  范例:

  cat -n textfile1 > textfile2 把 textfile1 的檔案內(nèi)容加上行號(hào)后輸入 textfile2 這個(gè)檔案里

  cat -b textfile1 textfile2 >> textfile3 把 textfile1 和 textfile2 的檔案內(nèi)容加上行號(hào)(空白行不加)之后將內(nèi)容附加到 textfile3

  名稱 : cd

  使用權(quán)限 : 所有使用者

  使用方式 : cd [dirName]

  說(shuō)明 : 變換工作目錄至 dirName。 其中 dirName 表示法可為絕對(duì)路徑或相對(duì)路徑。若目錄名稱省略,則變換至使用者的 home directory (也就是剛 login 時(shí)所在的目錄)。

  另外,"~" 也表示為 home directory 的意思,"." 則是表示目前所在的目錄,".." 則表示目前目錄位置的上一層目錄。

  范例 : 跳到 /usr/bin/ :

  cd /usr/bin

  跳到自己的 home directory :

  cd ~

  跳到目前目錄的上上兩層 :

  cd ../..

  指令名稱 : chmod

  使用權(quán)限 : 所有使用者

  使用方式 : chmod [-cfvR] [--help] [--version] mode file...

  說(shuō)明 : Linux/Unix 的檔案存取權(quán)限分為三級(jí) : 檔案擁有者、群組、其他。利用 chmod 可以藉以控制檔案如何被他人所存取。

  把計(jì) :

  mode : 權(quán)限設(shè)定字串,格式如下 : [ugoa...][[+-=][rwxX]...][,...],其中u 表示該檔案的擁有者,g 表示與該檔案的擁有者屬于同一個(gè)群體(group)者,o 表示其他以外的人,a 表示這三者皆是。

  + 表示增加權(quán)限、- 表示取消權(quán)限、= 表示唯一設(shè)定權(quán)限。

  r 表示可讀取,w 表示可寫(xiě)入,x 表示可執(zhí)行,X 表示只有當(dāng)該檔案是個(gè)子目錄或者該檔案已經(jīng)被設(shè)定過(guò)為可執(zhí)行。

  -c : 若該檔案權(quán)限確實(shí)已經(jīng)更改,才顯示其更改動(dòng)作

  -f : 若該檔案權(quán)限無(wú)法被更改也不要顯示錯(cuò)誤訊息

  -v : 顯示權(quán)限變更的詳細(xì)資料

  -R : 對(duì)目前目錄下的所有檔案與子目錄進(jìn)行相同的權(quán)限變更(即以遞回的方式逐個(gè)變更)

  --help : 顯示輔助說(shuō)明

  --version : 顯示版本

  范例 :將檔案 file1.txt 設(shè)為所有人皆可讀取 :

  chmod ugo+r file1.txt

  將檔案 file1.txt 設(shè)為所有人皆可讀取 :

  chmod a+r file1.txt

  將檔案 file1.txt 與 file2.txt 設(shè)為該檔案擁有者,與其所屬同一個(gè)群體者可寫(xiě)入,但其他以外的人則不可寫(xiě)入 :

  chmod ug+w,o-w file1.txt file2.txt

  將 ex1.py 設(shè)定為只有該檔案擁有者可以執(zhí)行 :

  chmod u+x ex1.py

  將目前目錄下的所有檔案與子目錄皆設(shè)為任何人可讀取 :

  chmod -R a+r *

  此外chmod也可以用數(shù)字來(lái)表示權(quán)限如 chmod 777 file

  語(yǔ)法為:chmod abc file

  其中a,b,c各為一個(gè)數(shù)字,分別表示User、Group、及Other的權(quán)限。

  r=4,w=2,x=1

  若要rwx屬性則4+2+1=7;

  若要rw-屬性則4+2=6;

  若要r-x屬性則4+1=7。

  范例:

  chmod a=rwx file

  和

  chmod 777 file

  效果相同

  chmod ug=rwx,o=x file

  和

  chmod 771 file

  效果相同

  若用chmod 4755 filename可使此程式具有root的權(quán)限

  指令名稱 : chown

  使用權(quán)限 : root

  使用方式 : chmod [-cfhvR] [--help] [--version] user[:group] file...

  說(shuō)明 : Linux/Unix 是多人多工作業(yè)系統(tǒng),所有的檔案皆有擁有者。利用 chown 可以將檔案的擁有者加以改變。一般來(lái)說(shuō),這個(gè)指令只有是由系統(tǒng)管理者(root)所使用,一般使用者沒(méi)有權(quán)限可以改變別人的檔案擁有者,也沒(méi)有權(quán)限可以自己的檔案擁有者改設(shè)為別人。只有系統(tǒng)管理者(root)才有這樣的權(quán)限。

  把計(jì) :

  user : 新的檔案擁有者的使用者 IDgroup : 新的檔案擁有者的使用者群體(group)-c : 若該檔案擁有者確實(shí)已經(jīng)更改,才顯示其更改動(dòng)作-f : 若該檔案擁有者無(wú)法被更改也不要顯示錯(cuò)誤訊息-h : 只對(duì)于連結(jié)(link)進(jìn)行變更,而非該 link 真正指向的檔案-v : 顯示擁有者變更的詳細(xì)資料-R : 對(duì)目前目錄下的所有檔案與子目錄進(jìn)行相同的擁有者變更(即以遞回的方式逐個(gè)變更)--help

  : 顯示輔助說(shuō)明--version : 顯示版本

  范例 :

  將檔案 file1.txt 的擁有者設(shè)為 users 群體的使用者 jessie :

  chown jessie:users file1.txt

  將目前目錄下的所有檔案與子目錄的擁有者皆設(shè)為 users 群體的使用者 lamport :

  chmod -R lamport:users *

  名稱:cp

  使用權(quán)限:所有使用者

  使用方式:

  cp [options] source dest

  cp [options] source... directory

  說(shuō)明:將一個(gè)檔案拷貝至另一檔案,或?qū)?shù)個(gè)檔案拷貝至另一目錄。

  把計(jì)?

  -a 盡可能將檔案狀態(tài)、權(quán)限等資料都照原狀予以復(fù)制。

  -r 若 source 中含有目錄名,則將目錄下之檔案亦皆依序拷貝至目的地。

  -f 若目的地已經(jīng)有相同檔名的檔案存在,則在復(fù)制前先予以刪除再行復(fù)制。

  范例:

  將檔案 aaa 復(fù)制(已存在),并命名為 bbb :

  cp aaa bbb

  將所有的C語(yǔ)言程式拷貝至 Finished 子目錄中 :

  cp *.c Finished

  名稱:cut

  使用權(quán)限:所有使用者

  用法:cut -cnum1-num2 filename

  說(shuō)明:顯示每行從開(kāi)頭算起 num1 到 num2 的文字。

  范例:

  shell>> cat example

  test2

  this is test1

  shell>> cut -c0-6 example ## print 開(kāi)頭算起前 6 個(gè)字元

  test2

  this i

  名稱 : find

  用法 : find

  使用說(shuō)明 :

  將檔案系統(tǒng)內(nèi)符合 expression 的檔案列出來(lái)。你可以指要檔案的名稱、類別、時(shí)間、大小、權(quán)限等不同資訊的組合,只有完全相符的才會(huì)被列出來(lái)。

  find 根據(jù)下列規(guī)則判斷 path 和 expression,在命令列上第一個(gè) - ( ) , ! 之前的部份為 path,之后的是 expression。如果 path 是空字串則使用目前路徑,如果 expression 是空字串則使用 -print 為預(yù)設(shè) expression?

  expression 中可使用的選項(xiàng)有二三十個(gè)之多,在此只介紹最常用的部份。

  -mount, -xdev : 只檢查和指定目錄在同一個(gè)檔案系統(tǒng)下的檔案,避免列出其它檔案系統(tǒng)中的檔案

  -amin n : 在過(guò)去 n 分鐘內(nèi)被讀取過(guò)

  -anewer file : 比檔案 file 更晚被讀取過(guò)的檔案

  -atime n : 在過(guò)去 n 天過(guò)讀取過(guò)的檔案

  -cmin n : 在過(guò)去 n 分鐘內(nèi)被修改過(guò)

  -cnewer file :比檔案 file 更新的檔案

  -ctime n : 在過(guò)去 n 天過(guò)修改過(guò)的檔案

  -empty : 空的檔案-gid n or -group name : gid 是 n 或是 group 名稱是 name

  -ipath p, -path p : 路徑名稱符合 p 的檔案,ipath 會(huì)忽略大小寫(xiě)

  -name name, -iname name : 檔案名稱符合 name 的檔案。iname 會(huì)忽略大小寫(xiě)

  -size n : 檔案大小 是 n 單位,b 代表 512 位元組的區(qū)塊,c 表示字元數(shù),k 表示 kilo bytes,w 是二個(gè)位元組。-type c : 檔案類型是 c 的檔案。

  d: 目錄

  c: 字型裝置檔案

  b: 區(qū)塊裝置檔案

  p: 具名貯列

  f: 一般檔案

  l: 符號(hào)連結(jié)

  s: socket

  -pid n : process id 是 n 的檔案

  你可以使用 ( ) 將運(yùn)算式分隔,并使用下列運(yùn)算。

  exp1 -and exp2

  ! expr

  -not expr

  exp1 -or exp2

  exp1, exp2

  范例:

  將目前目錄及其子目錄下所有延伸檔名是 c 的檔案列出來(lái)。

  # find . -name "*.c"

  將目前目錄其其下子目錄中所有一般檔案列出

  # find . -ftype f

  將目前目錄及其子目錄下所有最近 20 分鐘內(nèi)更新過(guò)的檔案列出

  # find . -ctime -20

  名稱:less

  使用權(quán)限:所有使用者

  使用方式:

  less [Option] filename

  說(shuō)明:

  less 的作用與 more 十分相似,都可以用來(lái)瀏覽文字檔案的內(nèi)容,不同的是 less 允許使用者往回卷動(dòng)

  以瀏覽已經(jīng)看過(guò)的部份,同時(shí)因?yàn)?less 并未在一開(kāi)始就讀入整個(gè)檔案,因此在遇上大型檔案的開(kāi)啟時(shí),會(huì)比一般的文書(shū)編輯器(如 vi)來(lái)的快速。

  范例:

  指令名稱 : ln

  使用權(quán)限 : 所有使用者

  使用方式 : ln [options] source dist,其中 option 的格式為 :

  [-bdfinsvF] [-S backup-suffix] [-V {numbered,existing,simple}]

  [--help] [--version] [--]

  說(shuō)明 : Linux/Unix 檔案系統(tǒng)中,有所謂的連結(jié)(link),我們可以將其視為檔案的別名,而連結(jié)又可分為兩種 : 硬連結(jié)(hard link)與軟連結(jié)(symbolic link),硬連結(jié)的意思是一個(gè)檔案可以有多個(gè)名稱,而軟連結(jié)的方式則是產(chǎn)生一個(gè)特殊的檔案,該檔案的內(nèi)容是指向另一個(gè)檔案的位置。硬連結(jié)是存在同一個(gè)檔案系統(tǒng)中,而軟連結(jié)卻可以跨越不同的檔案系統(tǒng)。

  ln source dist 是產(chǎn)生一個(gè)連結(jié)(dist)到 source,至于使用硬連結(jié)或軟鏈結(jié)則由參數(shù)決定。

  不論是硬連結(jié)或軟鏈結(jié)都不會(huì)將原本的檔案復(fù)制一份,只會(huì)占用非常少量的磁碟空間。

  -f : 鏈結(jié)時(shí)先將與 dist 同檔名的檔案刪除-d : 允許系統(tǒng)管理者硬鏈結(jié)自己的目錄-i : 在刪除與 dist 同檔名的檔案時(shí)先進(jìn)行詢問(wèn)-n : 在進(jìn)行軟連結(jié)時(shí),將 dist 視為一般的檔案-s : 進(jìn)行軟鏈結(jié)(symbolic link)-v : 在連結(jié)之前顯示其檔名-b : 將在鏈結(jié)時(shí)會(huì)被覆寫(xiě)或刪除的檔案進(jìn)行備份-S SUFFIX : 將備份的檔案都加上

  SUFFIX 的字尾-V METHOD : 指定備份的方式--help : 顯示輔助說(shuō)明--version : 顯示版本

  范例 :

  將檔案 yy 產(chǎn)生一個(gè) symbolic link : zz

  ln -s yy zz

  將檔案 yy 產(chǎn)生一個(gè) hard link : zz

  ln yy xx

  名稱:locate

  使用權(quán)限:所有使用者

  使用方式: locate [-q] [-d ] [--database=]

  locate [-r ] [--regexp=]

  locate [-qv] [-o ] [--output=]

  locate [-e ] [-f ] <[-l ] [-c]

  <[-U ] [-u]>

  locate [-Vh] [--version] [--help]

  說(shuō)明:

  locate 讓使用者可以很快速的搜尋檔案系統(tǒng)內(nèi)是否有指定的檔案。其方法是先建立一個(gè)包括系統(tǒng)內(nèi)所有檔案名稱及路徑的資料庫(kù),之后當(dāng)尋找時(shí)就只需查詢這個(gè)資料庫(kù),而不必實(shí)際深入檔案系統(tǒng)之中了。

  在一般的 distribution 之中,資料庫(kù)的建立都被放在 contab 中自動(dòng)執(zhí)行。一般使用者在使用時(shí)只要用

  # locate your_file_name

  的型式就可以了。 參數(shù):

  -u

  -U

  建立資料庫(kù),-u 會(huì)由根目錄開(kāi)始,-U 則可以指定開(kāi)始的位置。

  -e

  將

  排除在尋找的范圍之外。

  -l

  如果 是 1.則啟動(dòng)安全模式。在安全模式下,使用者不會(huì)看到權(quán)限無(wú)法看到的檔案。這會(huì)始速度減慢,因?yàn)?locate 必須至實(shí)際的檔案系統(tǒng)中取得檔案的權(quán)限資料。

  -f

  將特定的檔案系統(tǒng)排除在外,例如我們沒(méi)有到理要把 proc 檔案系統(tǒng)中的檔案放在資料庫(kù)中。

  -q

  安靜模式,不會(huì)顯示任何錯(cuò)誤訊息。

  -n

  至多顯示 個(gè)輸出。

  -r

  使用正規(guī)運(yùn)算式 做尋找的條件。

  -o

  指定資料庫(kù)存的名稱。

  -d

  指定資料庫(kù)的路徑

  -h

  顯示輔助訊息

  -v

  顯示更多的訊息

  -V

  顯示程式的版本訊息 范例:

  locate chdrv : 尋找所有叫 chdrv 的檔案

  locate -n 100 a.out : 尋找所有叫 a.out 的檔案,但最多只顯示 100 個(gè)

  locate -u : 建立資料庫(kù)

  名稱 : ls

  使用權(quán)限 : 所有使用者

  使用方式 : ls [-alrtAFR] [name...]

  說(shuō)明 : 顯示指定工作目錄下之內(nèi)容(列出目前工作目錄所含之檔案及子目錄)。

  -a 顯示所有檔案及目錄 (ls內(nèi)定將檔案名或目錄名稱開(kāi)頭為"."的視為隱藏檔,不會(huì)列出)

  -l 除檔案名稱外,亦將檔案型態(tài)、權(quán)限、擁有者、檔案大小等資訊詳細(xì)列出

  -r 將檔案以相反次序顯示(原定依英文字母次序)

  -t 將檔案依建立時(shí)間之先后次序列出

  -A 同 -a ,但不列出 "." (目前目錄) 及 ".." (父目錄)

  -F 在列出的檔案名稱后加一符號(hào);例如可執(zhí)行檔則加 "*", 目錄則加 "/"

  -R 若目錄下有檔案,則以下之檔案亦皆依序列出

  范例:

  列出目前工作目錄下所有名稱是 s 開(kāi)頭的檔案,愈新的排愈后面 :

  ls -ltr s*

  將 /bin 目錄以下所有目錄及檔案詳細(xì)資料列出 :

  ls -lR /bin

  列出目前工作目錄下所有檔案及目錄;目錄于名稱后加 "/", 可執(zhí)行檔于名稱后加 "*" :

  ls -AF

  名稱:more

  使用權(quán)限:所有使用者

  使用方式:more [-dlfpcsu] [-num] [+/pattern] [+linenum] [fileNames..]

  說(shuō)明:類似 cat ,不過(guò)會(huì)以一頁(yè)一頁(yè)的顯示方便使用者逐頁(yè)閱讀,而最基本的指令就是按空白鍵(space)就往下一頁(yè)顯示,按 b 鍵就會(huì)往回(back)一頁(yè)顯示,而且還有搜尋字串的功能(與 vi 相似),使用中的說(shuō)明文件,請(qǐng)按 h 。

  參數(shù):-num 一次顯示的行數(shù)

  -d 提示使用者,在畫(huà)面下方顯示 [Press space to continue, q to quit.] ,如果使用者按錯(cuò)鍵,則會(huì)顯示 [Press h for instructions.] 而不是 嗶 聲

  -l 取消遇見(jiàn)特殊字元 ^L(送紙字元)時(shí)會(huì)暫停的功能

  -f 計(jì)算行數(shù)時(shí),以實(shí)際上的行數(shù),而非自動(dòng)換行過(guò)后的行數(shù)(有些單行字?jǐn)?shù)太長(zhǎng)的會(huì)被擴(kuò)展為兩行或兩行以上)

  -p 不以卷動(dòng)的方式顯示每一頁(yè),而是先清除螢?zāi)缓笤亠@示內(nèi)容

  -c 跟 -p 相似,不同的是先顯示內(nèi)容再清除其他舊資料

  -s 當(dāng)遇到有連續(xù)兩行以上的空白行,就代換為一行的空白行

  -u 不顯示下引號(hào) (根據(jù)環(huán)境變數(shù) TERM 指定的 terminal 而有所不同)

  +/ 在每個(gè)檔案顯示前搜尋該字串(pattern),然后從該字串之后開(kāi)始顯示

  +num 從第 num 行開(kāi)始顯示

  fileNames 欲顯示內(nèi)容的檔案,可為復(fù)數(shù)個(gè)數(shù)

  范例:

  more -s testfile 逐頁(yè)顯示 testfile 之檔案內(nèi)容,如有連續(xù)兩行以上空白行則以一行空白行顯示。

  more +20 testfile 從第 20 行開(kāi)始顯示 testfile 之檔案內(nèi)容。

  名稱:mv

  使用權(quán)限:所有使用者

  使用方式:

  mv [options] source dest

  mv [options] source... directory

  說(shuō)明:將一個(gè)檔案移至另一檔案,或?qū)?shù)個(gè)檔案移至另一目錄。

  參數(shù):-i 若目的地已有同名檔案,則先詢問(wèn)是否覆蓋舊檔。

  范例:

  將檔案 aaa 更名為 bbb :

  mv aaa bbb

  將所有的C語(yǔ)言程式移至 Finished 子目錄中 :

  mv -i *.c

  名稱:rm

  使用權(quán)限:所有使用者

  使用方式:rm [options] name...

  說(shuō)明:刪除檔案及目錄。

  把計(jì)?

  -i 刪除前逐一詢問(wèn)確認(rèn)。

  -f 即使原檔案屬性設(shè)為唯讀,亦直接刪除,無(wú)需逐一確認(rèn)。

  -r 將目錄及以下之檔案亦逐一刪除。

  范例:

  刪除所有C語(yǔ)言程式檔;刪除前逐一詢問(wèn)確認(rèn) :

  rm -i *.c

  將 Finished 子目錄及子目錄中所有檔案刪除 :

  rm -r Finished

  名稱:rmdir

  使用權(quán)限:于目前目錄有適當(dāng)權(quán)限的所有使用者

  使用方式: rmdir [-p] dirName

  說(shuō)明: 刪除空的目錄。

  參數(shù): -p 是當(dāng)子目錄被刪除后使它也成為空目錄的話,則順便一并刪除。

  范例:

  將工作目錄下,名為 AAA 的子目錄刪除 :

  rmdir AAA

  在工作目錄下的 BBB 目錄中,刪除名為 Test 的子目錄。若 Test 刪除后,BBB 目錄成為空目錄,則 BBB 亦予刪除。

  rmdir -p BBB/Test

  名稱:split

  使用權(quán)限:所有使用者

  使用方式:split [OPTION] [INPUT [PREFIX]]

  說(shuō)明:

  將一個(gè)檔案分割成數(shù)個(gè)。而從 INPUT 分割輸出成固定大小的檔案,其檔名依序?yàn)?PREFIXaa, PREFIXab...;PREFIX 預(yù)設(shè)值為 `x。若沒(méi)有 INPUT 檔或?yàn)?`-,則從標(biāo)準(zhǔn)輸入讀進(jìn)資料。

  匡兜?

  -b, --bytes=SIZE

  SIZE 值為每一輸出檔案的大小,單位為 byte。

  -C, --line-bytes=SIZE

  每一輸出檔中,單行的最大 byte 數(shù)。

  -l, --lines=NUMBER

  NUMBER 值為每一輸出檔的列數(shù)大小。

  -NUMBER

  與 -l NUMBER 相同。

  --verbose

  于每個(gè)輸出檔被開(kāi)啟前,列印出偵錯(cuò)資訊到標(biāo)準(zhǔn)錯(cuò)誤輸出。

  --help

  顯示輔助資訊然后離開(kāi)。

  --version

  列出版本資訊然后離開(kāi)。

  SIZE 可加入單位: b 代表 512, k 代表 1K, m 代表 1 Meg。

  范例:

  PostgresSQL 大型資料庫(kù)備份與回存:

  因 Postgres 允許表格大過(guò)你系統(tǒng)檔案的最大容量,所以要將表格 dump 到單一的檔案可能會(huì)有問(wèn)題,使用 split進(jìn)行檔案分割。

  % pg_dump dbname | split -b 1m - filename.dump.

  重新載入

  % createdb dbname

  % cat filename.dump.* | pgsql dbname

  名稱:touch

  使用權(quán)限:所有使用者

  使用方式:

  touch [-acfm]

  [-r reference-file] [--file=reference-file]

  [-t MMDDhhmm[[CC]YY][.ss]]

  [-d time] [--date=time] [--time={atime,access,use,mtime,modify}]

  [--no-create] [--help] [--version]

  file1 [file2 ...]

  說(shuō)明:

  touch 指令改變檔案的時(shí)間記錄。 ls -l 可以顯示檔案的時(shí)間記錄。

  參數(shù):

  a 改變檔案的讀取時(shí)間記錄。

  m 改變檔案的修改時(shí)間記錄。

  c 假如目的檔案不存在,不會(huì)建立新的檔案。與 --no-create 的效果一樣。

  f 不使用,是為了與其他 unix 系統(tǒng)的相容性而保留。

  r 使用參考檔的時(shí)間記錄,與 --file 的效果一樣。

  d 設(shè)定時(shí)間與日期,可以使用各種不同的格式。

  t 設(shè)定檔案的時(shí)間記錄,格式與 date 指令相同。

  --no-create 不會(huì)建立新檔案。

  --help 列出指令格式。

  --version 列出版本訊息。

  范例:

  最簡(jiǎn)單的使用方式,將檔案的時(shí)候記錄改為現(xiàn)在的時(shí)間。若檔案不存在,系統(tǒng)會(huì)建立一個(gè)新的檔案。

  touch file

  touch file1 file2

  將 file 的時(shí)間記錄改為 5 月 6 日 18 點(diǎn) 3 分,公元兩千年。時(shí)間的格式可以參考 date 指令,至少需輸入 MMDDHHmm ,就是月日時(shí)與分。

  touch -c -t 05061803 file

  touch -c -t 050618032000 file

  將 file 的時(shí)間記錄改變成與 referencefile 一樣。

  touch -r referencefile file

  將 file 的時(shí)間記錄改成 5 月 6 日 18 點(diǎn) 3 分,公元兩千年。時(shí)間可以使用 am, pm 或是 24 小時(shí)的格式,日期可以使用其他格式如 6 May 2000 。

  touch -d "6:03pm" file

  touch -d "05/06/2000" file

  touch -d "6:03pm 05/06/2000" file

  linux指令大全(二)(轉(zhuǎn)自linuxeden.com)

  名稱 : at

  使用權(quán)限 : 所有使用者

  使用方式 : at -V [-q queue] [-f file] [-mldbv] TIME

  說(shuō)明 : at 可以讓使用者指定在 TIME 這個(gè)特定時(shí)刻執(zhí)行某個(gè)程式或指令,TIME 的格式是 HH:MM其中的 HH 為小時(shí),MM 為分鐘,甚至你也可以指定 am, pm, midnight, noon, teatime(就是下午 4 點(diǎn)鍾)等口語(yǔ)詞。

  如果想要指定超過(guò)一天內(nèi)的時(shí)間,則可以用 MMDDYY 或者 MM/DD/YY 的格式,其中 MM 是分鐘,DD 是第幾日,YY 是指年份。另外,使用者甚至也可以使用像是 now + 時(shí)間間隔來(lái)彈性指定時(shí)間,其中的時(shí)間間隔可以是 minutes, hours, days, weeks?

  另外,使用者也可指定 today 或 tomorrow 來(lái)表示今天或明天。當(dāng)指定了時(shí)間并按下 enter 之后,at 會(huì)進(jìn)入交談模式并要求輸入指令或程式,當(dāng)你輸入完后按下 ctrl+D 即可完成所有動(dòng)作,至于執(zhí)行的結(jié)果將會(huì)寄回你的帳號(hào)中。

  把計(jì) :

  -V : 印出版本編號(hào)

  -q : 使用指定的佇列(Queue)來(lái)儲(chǔ)存,at 的資料是存放在所謂的 queue 中,使用者可以同時(shí)使用多個(gè) queue,而 queue 的編號(hào)為 a, b, c... z 以及 A, B, ... Z 共 52 個(gè)

  -m : 即使程式/指令執(zhí)行完成后沒(méi)有輸出結(jié)果, 也要寄封信給使用者

  -f file : 讀入預(yù)先寫(xiě)好的命令檔。使用者不一定要使用交談模式來(lái)輸入,可以先將所有的指定先寫(xiě)入檔案后再一次讀入

  -l : 列出所有的指定 (使用者也可以直接使用 atq 而不用 at -l)

  -d : 刪除指定 (使用者也可以直接使用 atrm 而不用 at -d)

  -v : 列出所有已經(jīng)完成但尚未刪除的指定

  例子 :

  三天后的下午 5 點(diǎn)鍾執(zhí)行 /bin/ls :

  at 5pm + 3 days /bin/ls

  三個(gè)星期后的下午 5 點(diǎn)鍾執(zhí)行 /bin/ls :

  at 5pm + 2 weeks /bin/ls

  明天的 17:20 執(zhí)行 /bin/date :

  at 17:20 tomorrow /bin/date

  1999 年的最后一天的最后一分鐘印出 the end of world !

  at 23:59 12/31/1999 echo the end of world !

  名稱:cal

  使用權(quán)限:所有使用者

  使用方式:cal [-mjy] [month [year]]

  說(shuō)明:

  顯示日歷。若只有一個(gè)參數(shù),則代表年份(1-9999),顯示該年的年歷。年份必須全部寫(xiě)出:``cal 89\ 將不會(huì)是顯示 1989 年的年歷。使用兩個(gè)參數(shù),則表示月份及年份。若沒(méi)有參數(shù)則顯示這個(gè)月的月歷。

  1752 年 9 月第 3 日起改用西洋新歷,因這時(shí)大部份的國(guó)家都采用新歷,有 10 天被去除,所以該月份的月歷有些不同。在此之前為西洋舊歷。

  匡兜?

  -m : 以星期一為每周的第一天方式顯示。

  -j : 以凱撒歷顯示,即以一月一日起的天數(shù)顯示。

  -y : 顯示今年年歷。

  范例:

  cal : 顯示本月的月歷。

  [root@mylinux /root]# date

  Tue Aug 15 08:00:18 CST 2000

  [root@mylinux /root]# cal

  August 2000

  Su Mo Tu We Th Fr Sa

  1 2 3 4 5

  6 7 8 9 10 11 12

  13 14 15 16 17 18 19

  20 21 22 23 24 25 26

  27 28 29 30 31

  [root@mylinux /root]#

  cal 2001 : 顯示公元 2001 年年歷。

  [root@mylinux /root]# cal 2001

  2001

  January February March

  Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa

  1 2 3 4 5 6 1 2 3 1 2 3

  7 8 9 10 11 12 13 4 5 6 7 8 9 10 4 5 6 7 8 9 10

  14 15 16 17 18 19 20 11 12 13 14 15 16 17 11 12 13 14 15 16 17

  21 22 23 24 25 26 27 18 19 20 21 22 23 24 18 19 20 21 22 23 24

  28 29 30 31 25 26 27 28 25 26 27 28 29 30 31

  April May June

  Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa

  1 2 3 4 5 6 7 1 2 3 4 5 1 2

  8 9 10 11 12 13 14 6 7 8 9 10 11 12 3 4 5 6 7 8 9

  15 16 17 18 19 20 21 13 14 15 16 17 18 19 10 11 12 13 14 15 16

  22 23 24 25 26 27 28 20 21 22 23 24 25 26 17 18 19 20 21 22 23

  29 30 27 28 29 30 31 24 25 26 27 28 29 30

  July August September

  Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa

  1 2 3 4 5 6 7 1 2 3 4 1

  8 9 10 11 12 13 14 5 6 7 8 9 10 11 2 3 4 5 6 7 8

  15 16 17 18 19 20 21 12 13 14 15 16 17 18 9 10 11 12 13 14 15

  22 23 24 25 26 27 28 19 20 21 22 23 24 25 16 17 18 19 20 21 22

  29 30 31 26 27 28 29 30 31 23 24 25 26 27 28 29

  30

  October November December

  Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa

  1 2 3 4 5 6 1 2 3 1

  7 8 9 10 11 12 13 4 5 6 7 8 9 10 2 3 4 5 6 7 8

  14 15 16 17 18 19 20 11 12 13 14 15 16 17 9 10 11 12 13 14 15

  21 22 23 24 25 26 27 18 19 20 21 22 23 24 16 17 18 19 20 21 22

  28 29 30 31 25 26 27 28 29 30 23 24 25 26 27 28 29

  30 31

  [root@mylinux /root]#

  cal 5 2001 : 顯示公元 2001 年 5 月月歷。

  [root@mylinux /root]# cal 5 2001

  May 2001

  Su Mo Tu We Th Fr Sa

  1 2 3 4 5

  6 7 8 9 10 11 12

  13 14 15 16 17 18 19

  20 21 22 23 24 25 26

  27 28 29 30 31

  [root@mylinux /root]#

  cal -m : 以星期一為每周的第一天方式,顯示本月的月歷。

  [root@mylinux /root]# cal -m

  August 2000

  Mo Tu We Th Fr Sa Su

  1 2 3 4 5 6

  7 8 9 10 11 12 13

  14 15 16 17 18 19 20

  21 22 23 24 25 26 27

  28 29 30 31

  [root@mylinux /root]#

  cal -jy : 以一月一日起的天數(shù)顯示今年的年歷。

  [root@mylinux /root]# cal -jy

  2000

  January February

  Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat

  1 32 33 34 35 36

  2 3 4 5 6 7 8 37 38 39 40 41 42 43

  9 10 11 12 13 14 15 44 45 46 47 48 49 50

  16 17 18 19 20 21 22 51 52 53 54 55 56 57

  23 24 25 26 27 28 29 58 59 60

  30 31

  March April

  Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat

  61 62 63 64 92

  65 66 67 68 69 70 71 93 94 95 96 97 98 99

  72 73 74 75 76 77 78 100 101 102 103 104 105 106

  79 80 81 82 83 84 85 107 108 109 110 111 112 113

  86 87 88 89 90 91 114 115 116 117 118 119 120

  121

  May June

  Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat

  122 123 124 125 126 127 153 154 155

  128 129 130 131 132 133 134 156 157 158 159 160 161 162

  135 136 137 138 139 140 141 163 164 165 166 167 168 169

  142 143 144 145 146 147 148 170 171 172 173 174 175 176

  149 150 151 152 177 178 179 180 181 182

  July August

  Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat

  183 214 215 216 217 218

  184 185 186 187 188 189 190 219 220 221 222 223 224 225

  191 192 193 194 195 196 197 226 227 228 229 230 231 232

  198 199 200 201 202 203 204 233 234 235 236 237 238 239

  205 206 207 208 209 210 211 240 241 242 243 244

  212 213

  September October

  Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat

  245 246 275 276 277 278 279 280 281

  247 248 249 250 251 252 253 282 283 284 285 286 287 288

  254 255 256 257 258 259 260 289 290 291 292 293 294 295

  261 262 263 264 265 266 267 296 297 298 299 300 301 302

  268 269 270 271 272 273 274 303 304 305

  November December

  Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat

  306 307 308 309 336 337

  310 311 312 313 314 315 316 338 339 340 341 342 343 344

  317 318 319 320 321 322 323 345 346 347 348 349 350 351

  324 325 326 327 328 329 330 352 353 354 355 356 357 358

  331 332 333 334 335 359 360 361 362 363 364 365

  366

  [root@mylinux /root]#

  名稱 : crontab

  使用權(quán)限 : 所有使用者

  使用方式 :

  crontab [ -u user ] filecrontab [ -u user ] { -l | -r | -e }

  說(shuō)明 :

  crontab 是用來(lái)讓使用者在固定時(shí)間或固定間隔執(zhí)行程式之用,換句話說(shuō),也就是類似使用者的時(shí)程表。-u user 是指設(shè)定指定 user 的時(shí)程表,這個(gè)前提是你必須要有其權(quán)限(比如說(shuō)是 root)才能夠指定他人的時(shí)程表。如果不使用 -u user 的話,就是表示設(shè)定自己的時(shí)程表。

  餐數(shù) :

  -e : 執(zhí)行文字編輯器來(lái)設(shè)定時(shí)程表,內(nèi)定的文字編輯器是 VI,如果你想用別的文字編輯器,則請(qǐng)先設(shè)定 VISUAL 環(huán)境變數(shù)來(lái)指定使用那個(gè)文字編輯器(比如說(shuō) setenv VISUAL joe)

  -r : 刪除目前的時(shí)程表

  -l : 列出目前的時(shí)程表

  時(shí)程表的格式如下 :

  f1 f2 f3 f4 f5 program

  其中 f1 是表示分鐘,f2 表示小時(shí),f3 表示一個(gè)月份中的第幾日,f4 表示月份,f5 表示一個(gè)星期中的第幾天。program 表示要執(zhí)行的程式。

  當(dāng) f1 為 * 時(shí)表示每分鐘都要執(zhí)行 program,f2 為 * 時(shí)表示每小時(shí)都要執(zhí)行程式,其余類推

  當(dāng) f1 為 a-b 時(shí)表示從第 a 分鐘到第 b 分鐘這段時(shí)間內(nèi)要執(zhí)行,f2 為 a-b 時(shí)表示從第 a 到第 b 小時(shí)都要執(zhí)行,其余類推

  當(dāng) f1 為 */n 時(shí)表示每 n 分鐘個(gè)時(shí)間間隔執(zhí)行一次,f2 為 */n 表示每 n 小時(shí)個(gè)時(shí)間間隔執(zhí)行一次,其余類推

  當(dāng) f1 為 a, b, c,... 時(shí)表示第 a, b, c,... 分鐘要執(zhí)行,f2 為 a, b, c,... 時(shí)表示第 a, b, c...個(gè)小時(shí)要執(zhí)行,其余類推

  使用者也可以將所有的設(shè)定先存放在檔案 file 中,用 crontab file 的方式來(lái)設(shè)定時(shí)程表。

  例子 :

  每月每天每小時(shí)的第 0 分鐘執(zhí)行一次 /bin/ls :

  0 7 * * * /bin/ls

  在 12 月內(nèi), 每天的早上 6 點(diǎn)到 12 點(diǎn)中,每隔 20 分鐘執(zhí)行一次 /usr/bin/backup :

  0 6-12/3 * 12 * /usr/bin/backup

  周一到周五每天下午 5:00 寄一封信給 alex@domain.name :

  0 17 * * 1-5 mail -s "hi" alex@domain.name < /tmp/maildata

  每月每天的午夜 0 點(diǎn) 20 分, 2 點(diǎn) 20 分, 4 點(diǎn) 20 分....執(zhí)行 echo "haha"

  20 0-23/2 * * * echo "haha"

  注意 :

  當(dāng)程式在你所指定的時(shí)間執(zhí)行后,系統(tǒng)會(huì)寄一封信給你,顯示該程式執(zhí)行的內(nèi)容,若是你不希望收到這樣的信,請(qǐng)?jiān)诿恳恍锌找桓裰蠹由?> /dev/null 2>&1 即可。

  名稱 : date

  使用權(quán)限 : 所有使用者

  使用方式 :

  date [-u] [-d datestr] [-s datestr] [--utc] [--universal] [--date=datestr] [--set=datestr] [--help] [--version] [+FORMAT] [MMDDhhmm[[CC]YY][.ss]]

  說(shuō)明 :

  date 可以用來(lái)顯示或設(shè)定系統(tǒng)的日期與時(shí)間,在顯示方面,使用者可以設(shè)定欲顯示的格式,格式設(shè)定為一個(gè)加號(hào)后接數(shù)個(gè)標(biāo)記,其中可用的標(biāo)記列表如下 :

  時(shí)間方面 :

  % : 印出 %

  %n : 下一行

  %t : 跳格

  %H : 小時(shí)(00..23)

  %I : 小時(shí)(01..12)

  %k : 小時(shí)(0..23)

  %l : 小時(shí)(1..12)

  %M : 分鐘(00..59)

  %p : 顯示本地 AM 或 PM

  %r : 直接顯示時(shí)間 (12 小時(shí)制,格式為 hh:mm:ss [AP]M)

  %s : 從 1970 年 1 月 1 日 00:00:00 UTC 到目前為止的秒數(shù)

  %S : 秒(00..61)

  %T : 直接顯示時(shí)間 (24 小時(shí)制)

  %X : 相當(dāng)于 %H:%M:%S

  %Z : 顯示時(shí)區(qū)

  日期方面 :

  %a : 星期幾 (Sun..Sat)

  %A : 星期幾 (Sunday..Saturday)

  %b : 月份 (Jan..Dec)

  %B : 月份 (January..December)

  %c : 直接顯示日期與時(shí)間

  %d : 日 (01..31)

  %D : 直接顯示日期 (mm/dd/yy)

  %h : 同 %b

  %j : 一年中的第幾天 (001..366)

  %m : 月份 (01..12)

  %U : 一年中的第幾周 (00..53) (以 Sunday 為一周的第一天的情形)

  %w : 一周中的第幾天 (0..6)

  %W : 一年中的第幾周 (00..53) (以 Monday 為一周的第一天的情形)

  %x : 直接顯示日期 (mm/dd/yy)

  %y : 年份的最后兩位數(shù)字 (00.99)

  %Y : 完整年份 (0000..9999)

  若是不以加號(hào)作為開(kāi)頭,則表示要設(shè)定時(shí)間,而時(shí)間格式為 MMDDhhmm[[CC]YY][.ss],其中 MM 為月份,DD 為日,hh 為小時(shí),mm 為分鐘,CC 為年份前兩位數(shù)字,YY 為年份后兩位數(shù)字,ss 為秒數(shù)

  把計(jì) :

  -d datestr : 顯示 datestr 中所設(shè)定的時(shí)間 (非系統(tǒng)時(shí)間)

  --help : 顯示輔助訊息

  -s datestr : 將系統(tǒng)時(shí)間設(shè)為 datestr 中所設(shè)定的時(shí)間

  -u : 顯示目前的格林威治時(shí)間

  --version : 顯示版本編號(hào)

  例子 :

  顯示時(shí)間后跳行,再顯示目前日期 :

  date +%T%n%D

  顯示月份與日數(shù) :

  date +%B %d

  顯示日期與設(shè)定時(shí)間(12:34:56) :

  date --date 12:34:56

  注意 :

  當(dāng)你不希望出現(xiàn)無(wú)意義的 0 時(shí)(比如說(shuō) 1999/03/07),則可以在標(biāo)記中插入 - 符號(hào),比如說(shuō) date +%-H:%-M:%-S 會(huì)把時(shí)分秒中無(wú)意義的 0 給去掉,像是原本的 08:09:04 會(huì)變?yōu)?8:9:4。另外,只有取得權(quán)限者(比如說(shuō) root)才能設(shè)定系統(tǒng)時(shí)間。

  當(dāng)你以 root 身分更改了系統(tǒng)時(shí)間之后,請(qǐng)記得以 clock -w 來(lái)將系統(tǒng)時(shí)間寫(xiě)入 CMOS 中,這樣下次重新開(kāi)機(jī)時(shí)系統(tǒng)時(shí)間才會(huì)持續(xù)抱持最新的正確值。

  名稱 : sleep

  使用權(quán)限 : 所有使用者

  使用方式 : sleep [--help] [--version] number[smhd]

  說(shuō)明 : sleep 可以用來(lái)將目前動(dòng)作延遲一段時(shí)間

  參數(shù)說(shuō)明 :

  --help : 顯示輔助訊息

  --version : 顯示版本編號(hào)

  number : 時(shí)間長(zhǎng)度,后面可接 s、m、h 或 d

  其中 s 為秒,m 為 分鐘,h 為小時(shí),d 為日數(shù)

  例子 :

  顯示目前時(shí)間后延遲 1 分鐘,之后再次顯示時(shí)間 :

  date;sleep 1m;date

  名稱: time

  使用權(quán)限: 所有使用者

  使用方式: time [options] COMMAND [arguments]

  說(shuō)明: time 指令的用途,在于量測(cè)特定指令執(zhí)行時(shí)所需消耗的時(shí)間及系統(tǒng)資源等資訊。例如 CPU 時(shí)間、記憶體、輸入輸出等等。需要特別注意的是,部分資訊在 Linux 上顯示不出來(lái)。這是因?yàn)樵?Linux 上部分資源的分配函式與 time 指令所預(yù)設(shè)的方式并不相同,以致于 time 指令無(wú)法取得這些資料。

  把計(jì)?

  -o or --output=FILE

  設(shè)定結(jié)果輸出檔。這個(gè)選項(xiàng)會(huì)將 time 的輸出寫(xiě)入 所指定的檔案中。如果檔案已經(jīng)存在,系統(tǒng)將覆寫(xiě)其內(nèi)容。

  -a or --append

  配合 -o 使用,會(huì)將結(jié)果寫(xiě)到檔案的末端,而不會(huì)覆蓋掉原來(lái)的內(nèi)容。

  -f FORMAT or --format=FORMAT

  以 FORMAT 字串設(shè)定顯示方式。當(dāng)這個(gè)選項(xiàng)沒(méi)有被設(shè)定的時(shí)候,會(huì)用系統(tǒng)預(yù)設(shè)的格式。不過(guò)你可以用環(huán)境變數(shù) time 來(lái)設(shè)定這個(gè)格式,如此一來(lái)就不必每次登入系統(tǒng)都要設(shè)定一次。

  一般設(shè)定上,你可以用

  \t

  表示跳欄,或者是用

  \n

  表示換行。每一項(xiàng)資料要用 % 做為前導(dǎo)。如果要在字串中使用百分比符號(hào),就用 。(學(xué)過(guò) C 語(yǔ)言的人大概會(huì)覺(jué)得很熟悉)

  time 指令可以顯示的資源有四大項(xiàng),分別是:

  Time resources

  Memory resources

  IO resources

  Command info

  詳細(xì)的內(nèi)容如下:

  Time Resources

  E 執(zhí)行指令所花費(fèi)的時(shí)間,格式是:[hour]:minute:second。請(qǐng)注意這個(gè)數(shù)字并不代表實(shí)際的 CPU 時(shí)間。

  e 執(zhí)行指令所花費(fèi)的時(shí)間,單位是秒。請(qǐng)注意這個(gè)數(shù)字并不代表實(shí)際的 CPU 時(shí)間。

  S 指令執(zhí)行時(shí)在核心模式(kernel mode)所花費(fèi)的時(shí)間,單位是秒。

  U 指令執(zhí)行時(shí)在使用者模式(user mode)所花費(fèi)的時(shí)間,單位是秒。

  P 執(zhí)行指令時(shí) CPU 的占用比例。其實(shí)這個(gè)數(shù)字就是核心模式加上使用者模式的 CPU 時(shí)間除以總時(shí)間。

  Memory Resources

  M 執(zhí)行時(shí)所占用的實(shí)體記憶體的最大值。單位是 KB

  t 執(zhí)行時(shí)所占用的實(shí)體記憶體的平均值,單位是 KB

  K 執(zhí)行程序所占用的記憶體總量(stack+data+text)的平均大小,單位是 KB

  D 執(zhí)行程序的自有資料區(qū)(unshared data area)的平均大小,單位是 KB

  p 執(zhí)行程序的自有堆疊(unshared stack)的平均大小,單位是 KB

  X 執(zhí)行程序間共享內(nèi)容(shared text)的平均值,單位是 KB

  Z 系統(tǒng)記憶體頁(yè)的大小,單位是 byte。對(duì)同一個(gè)系統(tǒng)來(lái)說(shuō)這是個(gè)常數(shù)

  IO Resources

  F 此程序的主要記憶體頁(yè)錯(cuò)誤發(fā)生次數(shù)。所謂的主要記憶體頁(yè)錯(cuò)誤是指某一記憶體頁(yè)已經(jīng)置換到置換檔(swap file)中,而且已經(jīng)分配給其他程序。此時(shí)該頁(yè)的內(nèi)容必須從置換檔里再讀出來(lái)。

  R 此程序的次要記憶體頁(yè)錯(cuò)誤發(fā)生次數(shù)。所謂的次要記憶體頁(yè)錯(cuò)誤是指某一記憶體頁(yè)雖然已經(jīng)置換到置換檔中,但尚未分配給其他程序。此時(shí)該頁(yè)的內(nèi)容并未被破壞,不必從置換檔里讀出來(lái)

  W 此程序被交換到置換檔的次數(shù)

  c 此程序被強(qiáng)迫中斷(像是分配到的 CPU 時(shí)間耗盡)的次數(shù)

  w 此程序自愿中斷(像是在等待某一個(gè) I/O 執(zhí)行完畢,像是磁碟讀取等等)的次數(shù)

  I 此程序所輸入的檔案數(shù)

  O 此程序所輸出的檔案數(shù)

  r 此程序所收到的 Socket Message

  s 此程序所送出的 Socket Message

  k 此程序所收到的信號(hào) ( Signal )數(shù)量

  Command Info

  C 執(zhí)行時(shí)的參數(shù)以及指令名稱

  x 指令的結(jié)束代碼 ( Exit Status )

  -p or --portability

  這個(gè)選項(xiàng)會(huì)自動(dòng)把顯示格式設(shè)定成為:

  real %e

  user %U

  sys %S

  這么做的目的是為了與 POSIX 規(guī)格相容。

  -v or --verbose

  這個(gè)選項(xiàng)會(huì)把所有程式中用到的資源通通列出來(lái),不但如一般英文語(yǔ)句,還有說(shuō)明。對(duì)不想花時(shí)間去熟習(xí)格式設(shè)定或是剛剛開(kāi)始接觸這個(gè)指令的人相當(dāng)有用。

  范例:

  利用下面的指令

  time -v ps -aux

  我們可以獲得執(zhí)行 ps -aux 的結(jié)果和所花費(fèi)的系統(tǒng)資源。如下面所列的資料:

  USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

  root 1 0.0 0.4 1096 472 ? S Apr19 0:04 init

  root 2 0.0 0.0 0 0 ? SW Apr19 0:00 [kflushd]

  root 3 0.0 0.0 0 0 ? SW Apr19 0:00 [kpiod]

  ......

  root 24269 0.0 1.0 2692 996 pts/3 R 12:16 0:00 ps -aux

  Command being timed: "ps -aux"

  User time (seconds): 0.05

  System time (seconds): 0.06

  Percent of CPU this job got: 68%

  Elapsed (wall clock) time (h:mm:ss or m:ss): 0:00.16

  Average shared text size (kbytes): 0

  Average unshared data size (kbytes): 0

  Average stack size (kbytes): 0

  Average total size (kbytes): 0

  Maximum resident set size (kbytes): 0

  Average resident set size (kbytes): 0

  Major (requiring I/O) page faults: 238

  Minor (reclaiming a frame) page faults: 46

  Voluntary context switches: 0

  Involuntary context switches: 0

  Swaps: 0

  File system inputs: 0

  File system outputs: 0

  Socket messages sent: 0

  Socket messages received: 0

  Signals delivered: 0

  Page size (bytes): 4096

  Exit status: 0

  名稱: uptime

  使用權(quán)限: 所有使用者

  使用方式: uptime [-V]

  說(shuō)明: uptime 提供使用者下面的資訊,不需其他參數(shù):

  現(xiàn)在的時(shí)間

  系統(tǒng)開(kāi)機(jī)運(yùn)轉(zhuǎn)到現(xiàn)在經(jīng)過(guò)的時(shí)間

  連線的使用者數(shù)量

  最近一分鐘,五分鐘和十五分鐘的系統(tǒng)負(fù)載

  參數(shù): -V 顯示版本資訊。

  范例: uptime

  其結(jié)果為:

  10:41am up 5 days, 10 min, 1 users, load average: 0.00, 0.00, 1.99

  名稱:chfn

  使用權(quán)限:所有使用者

  用法:shell>> chfn

  說(shuō)明:提供使用者更改個(gè)人資訊,用于 finger and mail username

  范例:

  shell>> chfn

  Changing finger information for user

  Password: [del]

  Name[]:Johnney Huang ### 提供 finger 時(shí)的資料

  Office[]:NCCU

  Office Phone[]: [del]

  Home Phone[]: [del]

  名稱:chsh

  使用權(quán)限:所有使用者

  用法:shell>> chsh

  說(shuō)明:更改使用者 shell 設(shè)定

  范例:

  shell>> chsh

  Changing fihanging shell for user1

  Password: [del]

  New shell [/bin/tcsh]: ### [是目前使用的 shell]

  [del]

  shell>> chsh -l ### 展示 /etc/shells 檔案內(nèi)容

  /bin/bash

  /bin/sh

  /bin/ash

  /bin/bsh

  /bin/tcsh

  /bin/csh

  ” finger [返回]

  名稱: finger

  使用權(quán)限: 所有使用者

  使用方式: finger [options] user[@address]

  說(shuō)明:finger 可以讓使用者查詢一些其他使用者的資料。會(huì)列出來(lái)的資料有:

  Login Name

  User Name

  Home directory

  Shell

  Login status

  mail status

  .plan

  .project

  .forward

  其中 .plan ,.project 和 .forward 就是使用者在他的 Home Directory 里的 .plan , .project 和 .forward 等檔案里的資料。如果沒(méi)有就沒(méi)有。finger 指令并不限定于在同一伺服器上查詢,也可以尋找某一個(gè)遠(yuǎn)端伺服器上的使用者。只要給一個(gè)像是 E-mail address 一般的地址即可。

  把計(jì)?

  -l

  多行顯示。

  -s

  單行顯示。這個(gè)選項(xiàng)只顯示登入名稱,真實(shí)姓名,終端機(jī)名稱,閑置時(shí)間,登入時(shí)間,辦公室號(hào)碼及電話號(hào)碼。如果所查詢的使用者是遠(yuǎn)端伺服器的使用者,這個(gè)選項(xiàng)無(wú)效。

  范例:下列指令可以查詢本機(jī)管理員的資料:

  finger root

  其結(jié)果如下:

  Login: root Name: root

  Directory: /root Shell: /bin/bash

  Never logged in.

  No mail.

  No Plan.

  名稱:last

  使用權(quán)限:所有使用者

  使用方式:shell>> last [options]

  說(shuō)明:顯示系統(tǒng)開(kāi)機(jī)以來(lái)獲是從每月初登入者的訊息

  把計(jì)?

  -R 省略 hostname 的欄位

  -num 展示前 num 個(gè)

  username 展示 username 的登入訊息

  tty 限制登入訊息包含終端機(jī)代號(hào)

  范例:

  shell>> last -R -2

  johnney pts/1 Mon Aug 14 20:42 still logged in

  johnney pts/0 Mon Aug 14 19:59 still logged in

  wtmp begins Tue Aug 1 09:01:10 2000 ### /var/log/wtmp

  shell>> last -2 minery

  minery pts/0 140.119.217.115 Mon Aug 14 18:37 - 18:40 (00:03)

  minery pts/0 140.119.217.115 Mon Aug 14 17:22 - 17:24 (00:02)

  wtmp begins Tue Aug 1 09:01:10 2000

  名稱:login

  這個(gè)命令都不會(huì)就不要干算了!呵呵我也不在這里多費(fèi)筆墨耽誤大家美好青春了^_^

  名稱:passwd

  使用權(quán)限:所有使用者

  使用方式:passwd [-k] [-l] [-u [-f]] [-d] [-S] [username]

  說(shuō)明:用來(lái)更改使用者的密碼

  參數(shù):

  -k

  -l

  -u

  -f

  -d 關(guān)閉使用者的密碼認(rèn)證功能, 使用者在登入時(shí)將可以不用輸入密碼, 只有具備 root 權(quán)限的使用者方可使用.

  -S 顯示指定使用者的密碼認(rèn)證種類, 只有具備 root 權(quán)限的使用者方可使用.

  [username] 指定帳號(hào)名稱.

  名稱 : who

  使用權(quán)線 : 所有使用者都可使用

  使用方式 : who - [husfV] [user]

  說(shuō)明 : 顯示系統(tǒng)中有那些使用者正在上面,顯示的資料包含了使用者 ID,使用的終端機(jī),從那邊連上來(lái)的,上線時(shí)間,呆滯時(shí)間,CPU 使用量,動(dòng)作等等。

  把計(jì) :

  -h : 不要顯示標(biāo)題列

  -u : 不要顯示使用者的動(dòng)作/工作

  -s : 使用簡(jiǎn)短的格式來(lái)顯示

  -f : 不要顯示使用者的上線位置

  -V : 顯示程式版本

  linux指令大全(三)(轉(zhuǎn)自linuxeden.com)

  名稱:/etc/aliases

  使用權(quán)限:系統(tǒng)管理者

  使用方式: 請(qǐng)用 newaliases 更新資料庫(kù)

  說(shuō)明:

  sendmail 會(huì)使用一個(gè)在 /etc/aliases 中的檔案做使用者名稱轉(zhuǎn)換的動(dòng)作。當(dāng) sendmail 收到一個(gè)要送給 xxx 的信時(shí),它會(huì)依據(jù) aliases檔的內(nèi)容送給另一個(gè)使用者。這個(gè)功能可以創(chuàng)造一個(gè)只有在信件系統(tǒng)內(nèi)才有效的使用者。例如 mailing list 就會(huì)用到這個(gè)功能,在 mailinglist 中,我們可能會(huì)創(chuàng)造一個(gè)叫 redlinux@link.ece.uci.edu 的

  mailinglist,但實(shí)際上并沒(méi)有一個(gè)叫 redlinux 的使用者。實(shí)際 aliases 檔的內(nèi)容是將送給這個(gè)使用者的信都收給 mailing list 處理程式負(fù)責(zé)分送的工作。

  /etc/aliases 是一個(gè)文字模式的檔案,sendmail 需要一個(gè)二進(jìn)位格式的 /etc/aliases.db。newaliases 的功能傳是將 /etc/aliases 轉(zhuǎn)換成一個(gè) sendmail 所能了解的資料庫(kù)。范例:

  # newaliases

  下面命令會(huì)做相同的事,

  # sendmail -bi

  相關(guān)命令:

  mail, mailq, newaliases, sendmail

  ” mail [返回]

  名稱:mail

  使用權(quán)限:所有使用者

  使用方式:mail [-iInv] [-s subject] [-c cc-addr] [-b bcc-addr] user1 [user 2 ...]

  說(shuō)明:

  mail 不僅只是一個(gè)指令, mail 還是一個(gè)電子郵件程式,不過(guò)利用 mail 來(lái)讀信的人應(yīng)該很少吧!對(duì)于系統(tǒng)管理者來(lái)說(shuō) mail 就很有用,因?yàn)楣芾碚呖梢杂?mail 寫(xiě)成 script ,定期寄一些備忘錄提醒系統(tǒng)的使用者。

  參數(shù):

  i 忽略 tty 的中斷訊號(hào)。 (interrupt)

  I 強(qiáng)迫設(shè)成互動(dòng)模式。 (Interactive)

  v 列印出訊息,例如送信的地點(diǎn)、狀態(tài)等等。 (verbose)

  n 不讀入 mail.rc 設(shè)定檔。

  s 郵件標(biāo)題。

  c cc 郵件地址。

  b bcc 郵件地址。

  范例:

  將信件送給一個(gè)或以上的電子郵件地址,由于沒(méi)有加入其他的選項(xiàng),使用者必須輸入標(biāo)題與信件的內(nèi)容等。而 user2 沒(méi)有主機(jī)位置,就會(huì)送給郵件伺服器的 user2 使用者。

  mail user1@email.address

  mail user1@email.address user2

  將 mail.txt 的內(nèi)容寄給 user2 同時(shí) cc 給 user1 。如果將這一行指令設(shè)成 cronjob 就可以定時(shí)將備忘錄寄給系統(tǒng)使用者。

  mail -s 標(biāo)題 -c user1 user2 < mail.txt

  指令:mesg

  使用權(quán)限 : 所有使用者

  使用方式 : mesg [y|n]

  說(shuō)明 : 決定是否允許其他人傳訊息到自己的終端機(jī)介面

  把計(jì) ?

  y : 允許訊息傳到終端機(jī)介面上。

  n : 不允許訊息傳到終端機(jī)介面上 。

  如果沒(méi)有設(shè)定,則訊息傳遞與否則由終端機(jī)界面目前狀態(tài)而定。

  例子 :

  改變目前訊息設(shè)定,改成不允許訊息傳到終端機(jī)介面上 :

  mesg n

  與 mesg 相關(guān)的指令有: talk,write,wall。

  名稱:/etc/aliases

  使用權(quán)限:系統(tǒng)管理者

  使用方式: newaliases

  說(shuō)明:

  sendmail 會(huì)使用一個(gè)在 /etc/aliases 中的檔案做使用者名稱轉(zhuǎn)換的動(dòng)作。當(dāng) sendmail 收到一個(gè)要送給 xxx 的信時(shí),它會(huì)依據(jù) aliases檔的內(nèi)容送給另一個(gè)使用者。這個(gè)功能可以創(chuàng)造一個(gè)只有在信件系統(tǒng)內(nèi)才有效的使用者。例如 mailing list 就會(huì)用到這個(gè)功能,在 mailinglist 中,我們可能會(huì)創(chuàng)造一個(gè)叫 redlinux@link.ece.uci.edu 的

  mailinglist,但實(shí)際上并沒(méi)有一個(gè)叫 redlinux 的使用者。實(shí)際 aliases 檔的內(nèi)容是將送給這個(gè)使用者的信都收給 mailing list 處理程式負(fù)責(zé)分送的工作。

  /etc/aliases 是一個(gè)文字模式的檔案,sendmail 需要一個(gè)二進(jìn)位格式的 /etc/aliases.db。newaliases 的功能傳是將 /etc/aliases 轉(zhuǎn)換成一個(gè) sendmail 所能了解的資料庫(kù)。

  參數(shù):沒(méi)有任何參數(shù)。 范例:

  # newaliases

  下面命令會(huì)做相同的事,

  # sendmail -bi

  相關(guān)命令:

  mail, mailq, newaliases, sendmail

  名稱 : talk

  使用權(quán)限 : 所有使用者

  使用方式 :

  talk person [ttyname]

  說(shuō)明 : 與其他使用者對(duì)談

  把計(jì) :

  person : 預(yù)備對(duì)談的使用者帳號(hào),如果該使用者在其他機(jī)器上,則可輸入 person@machine.name

  ttyname : 如果使用者同時(shí)有兩個(gè)以上的 tty 連線,可以自行選擇合適的 tty 傳訊息

  例子.1 :

  與現(xiàn)在機(jī)器上的使用者Rollaend對(duì)談,此時(shí) Rollaend 只有一個(gè)連線 :

  talk Rollaend

  接下來(lái)就是等Rollaend回應(yīng),若Rollaend接受,則Rollaend輸入 `talk jzlee`即可開(kāi)始對(duì)談,結(jié)束請(qǐng)按 ctrl+c

  例子.2 :與linuxfab.cx上的使用者Rollaend對(duì)談,使用pts/2來(lái)對(duì)談 :

  talk Rollaend@linuxfab.cx pts/2

  接下來(lái)就是等Rollaend回應(yīng),若Rollaend接受,則Rollaend輸入 `talk jzlee@jzlee.home`即可開(kāi)始對(duì)談,結(jié)束請(qǐng)按

  ctrl+c

  注意 : 若螢?zāi)坏淖謺?huì)出現(xiàn)不正常的字元,試著按 ctrl+l 更新螢?zāi)划?huà)面。

  名稱 : wall

  使用權(quán)限 : 所有使用者

  使用方式 :

  wall [ message ]

  使用說(shuō)明:

  wall 會(huì)將訊息傳給每一個(gè) mesg 設(shè)定為 yes 的上線使用者。當(dāng)使用終端機(jī)介面做為標(biāo)準(zhǔn)傳入時(shí), 訊息結(jié)束時(shí)需加上 EOF (通常用 Ctrl+D)?

  例子 :

  傳訊息"hi" 給每一個(gè)使用者 :

  wall hi

  名稱 : write

  使用權(quán)限 : 所有使用者

  使用方式 :

  write user [ttyname]

  說(shuō)明 : 傳訊息給其他使用者

  把計(jì) :

  user : 預(yù)備傳訊息的使用者帳號(hào)

  ttyname : 如果使用者同時(shí)有兩個(gè)以上的 tty 連線,可以自行選擇合適的 tty 傳訊息

  例子.1 :

  傳訊息給 Rollaend,此時(shí) Rollaend 只有一個(gè)連線 :

  write Rollaend

  接下來(lái)就是將訊息打上去,結(jié)束請(qǐng)按 ctrl+c

  例子.2 :傳訊息給 Rollaend,Rollaend 的連線有 pts/2,pts/3 :

  write Rollaend pts/2

  接下來(lái)就是將訊息打上去,結(jié)束請(qǐng)按 ctrl+c

  注意 : 若對(duì)方設(shè)定 mesg n,則此時(shí)訊席將無(wú)法傳給對(duì)方

  名稱:kill

  使用權(quán)限:所有使用者

  使用方式:

  kill [ -s signal | -p ] [ -a ] pid ...

  kill -l [ signal ]

  說(shuō)明:kill 送出一個(gè)特定的信號(hào) (signal) 給行程 id 為 pid 的行程根據(jù)該信號(hào)而做特定的動(dòng)作, 若沒(méi)有指定, 預(yù)設(shè)是送出終止 (TERM) 的信號(hào)

  把計(jì)?

  -s (signal) : 其中可用的訊號(hào)有 HUP (1), KILL (9), TERM (15), 分別代表著重跑, 砍掉, 結(jié)束; 詳細(xì)的信號(hào)可以用 kill -l

  -p : 印出 pid , 并不送出信號(hào)

  -l (signal) : 列出所有可用的信號(hào)名稱

  范例:

  將 pid 為 323 的行程砍掉 (kill) :

  kill -9 323

  將 pid 為 456 的行程重跑 (restart) :

  kill -HUP 456

  名稱:nice

  使用權(quán)限:所有使用者

  使用方式:nice [-n adjustment] [-adjustment] [--adjustment=adjustment] [--help] [--version] [command [arg...]]

  說(shuō)明:以更改過(guò)的優(yōu)先序來(lái)執(zhí)行程式, 如果未指定程式, 則會(huì)印出目前的排程優(yōu)先序, 內(nèi)定的 adjustment 為 10, 范圍為 -20 (最高優(yōu)先序) 到 19 (最低優(yōu)先序)

  把計(jì)?

  -n adjustment, -adjustment, --adjustment=adjustment 皆為將該原有優(yōu)先序的增加 adjustment

  --help 顯示求助訊息

  --version 顯示版本資訊

  范例:

  將 ls 的優(yōu)先序加 1 并執(zhí)行 :

  nice -n 1 ls

  將 ls 的優(yōu)先序加 10 并執(zhí)行 :

  nice ls將 ls 的優(yōu)先序加 10 并執(zhí)行

  注意 : 優(yōu)先序 (priority) 為作業(yè)系統(tǒng)用來(lái)決定 CPU 分配的參數(shù),Linux 使用『回合制(round-robin)』的演算法來(lái)做 CPU 排程,優(yōu)先序越高,所可能獲得的 CPU時(shí)間就越多。

  名稱:ps

  使用權(quán)限:所有使用者

  使用方式:ps [options] [--help]

  說(shuō)明:顯示瞬間行程 (process) 的動(dòng)態(tài)

  參數(shù):

  ps 的參數(shù)非常多, 在此僅列出幾個(gè)常用的參數(shù)并大略介紹含義

  -A 列出所有的行程

  -w 顯示加寬可以顯示較多的資訊

  -au 顯示較詳細(xì)的資訊

  -aux 顯示所有包含其他使用者的行程

  au(x) 輸出格式 :

  USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

  USER: 行程擁有者

  PID: pid

  %CPU: 占用的 CPU 使用率

  %MEM: 占用的記憶體使用率

  VSZ: 占用的虛擬記憶體大小

  RSS: 占用的記憶體大小

  TTY: 終端的次要裝置號(hào)碼 (minor device number of tty)

  STAT: 該行程的狀態(tài):

  D: 不可中斷的靜止 (通悸□□縝b進(jìn)行 I/O 動(dòng)作)

  R: 正在執(zhí)行中

  S: 靜止?fàn)顟B(tài)

  T: 暫停執(zhí)行

  Z: 不存在但暫時(shí)無(wú)法消除

  W: 沒(méi)有足夠的記憶體分頁(yè)可分配

  <: 高優(yōu)先序的行程

  N: 低優(yōu)先序的行程

  L: 有記憶體分頁(yè)分配并鎖在記憶體內(nèi) (即時(shí)系統(tǒng)或捱A I/O)

  START: 行程開(kāi)始時(shí)間

  TIME: 執(zhí)行的時(shí)間

  COMMAND:所執(zhí)行的指令

  范例:

  ps

  PID TTY TIME CMD

  2791 ttyp0 00:00:00 tcsh

  3092 ttyp0 00:00:00 ps

  % ps -A

  PID TTY TIME CMD

  1 ? 00:00:03 init

  2 ? 00:00:00 kflushd

  3 ? 00:00:00 kpiod

  4 ? 00:00:00 kswapd

  5 ? 00:00:00 mdrecoveryd

  .......

  % ps -aux

  USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

  root 1 0.0 0.7 1096 472 ? S Sep10 0:03 init [3]

  root 2 0.0 0.0 0 0 ? SW Sep10 0:00 [kflushd]

  root 3 0.0 0.0 0 0 ? SW Sep10 0:00 [kpiod]

  root 4 0.0 0.0 0 0 ? SW Sep10 0:00 [kswapd]

  ........

  名稱:pstree

  使用權(quán)限:所有使用者

  使用方式:

  pstree [-a] [-c] [-h|-Hpid] [-l] [-n] [-p] [-u] [-G|-U] [pid|user]

  pstree -V

  說(shuō)明:將所有行程以樹(shù)狀圖顯示, 樹(shù)狀圖將會(huì)以 pid (如果有指定) 或是以 init 這個(gè)基本行程為根 (root) ,如果有指定使用者 id , 則樹(shù)狀圖會(huì)只顯示該使用者所擁有的行程

  參數(shù):

  -a 顯示該行程的完整指令及參數(shù), 如果是被記憶體置換出去的行程則會(huì)加上括號(hào)

  -c 如果有重覆的行程名, 則分開(kāi)列出 (預(yù)設(shè)值是會(huì)在前面加上 *

  范例:

  pstree

  init-+-amd

  |-apmd

  |-atd

  |-httpd---10*[httpd]

  %pstree -p

  init(1)-+-amd(447)

  |-apmd(105)

  |-atd(339)

  %pstree -c

  init-+-amd

  |-apmd

  |-atd

  |-httpd-+-httpd

  | |-httpd

  | |-httpd

  | |-httpd

  ....

  名稱:renice

  使用權(quán)限:所有使用者

  使用方式:renice priority [[-p] pid ...] [[-g] pgrp ...] [[-u] user ...]

  說(shuō)明:重新指定一個(gè)或多個(gè)行程(Process)的優(yōu)先序(一個(gè)或多個(gè)將根據(jù)所下的參數(shù)而定)

  把計(jì)?

  -p pid 重新指定行程的 id 為 pid 的行程的優(yōu)先序

  -g pgrp 重新指定行程群組(process group)的 id 為 pgrp 的行程 (一個(gè)或多個(gè)) 的優(yōu)先序

  -u user 重新指定行程擁有者為 user 的行程的優(yōu)先序

  范例:

  將行程 id 為 987 及 32 的行程與行程擁有者為 daemon 及 root 的優(yōu)先序號(hào)碼加 1 :

  renice +1 987 -u daemon root -p 32

  注意 : 每一個(gè)行程(Process)都有一個(gè)唯一的 (unique) id?

  名稱:top

  使用權(quán)限:所有使用者

  使用方式:top [-] [d delay] [q] [c] [S] [s] [i] [n] [b]

  說(shuō)明:即時(shí)顯示 process 的動(dòng)態(tài)

  把計(jì)?

  d : 改變顯示的更新速度,或是在交談式指令列( interactive command)按 s

  q : 沒(méi)有任何延遲的顯示速度,如果使用者是有 superuser 的權(quán)限,則 top 將會(huì)以最高的優(yōu)先序執(zhí)行

  c : 切換顯示模式,共有兩種模式,一是只顯示執(zhí)行檔的名稱,另一種是顯示完整的路徑與名稱S : 累積模式,會(huì)將己完成或消失的子行程 ( dead child process ) 的 CPU time 累積起來(lái)

  s : 安全模式,將交談式指令取消, 避免潛在的危機(jī)

  i : 不顯示任何閑置 (idle) 或無(wú)用 (zombie) 的行程

  n : 更新的次數(shù),完成后將會(huì)退出 top

  b : 批次檔模式,搭配 "n" 參數(shù)一起使用,可以用來(lái)將 top 的結(jié)果輸出到檔案內(nèi)

  范例:

  顯示更新十次后退出 ;

  top -n 10

  使用者將不能利用交談式指令來(lái)對(duì)行程下命令 :

  top -s

  將更新顯示二次的結(jié)果輸入到名稱為 top.log 的檔案里 :

  top -n 2 -b < top.log

  名稱:skill

  使用權(quán)限:所有使用者

  使用方式: skill [signal to send] [options] 選擇程序的規(guī)則

  說(shuō)明:

  送個(gè)訊號(hào)給正在執(zhí)行的程序,預(yù)設(shè)的訊息為 TERM (中斷) , 較常使用的訊息為 HUP , INT , KILL , STOP , CONT ,和 0

  訊息有三種寫(xiě)法:分別為 -9 , -SIGKILL , -KILL , 可以使用 -l 或 -L 已列出可使用的訊息。

  一般參數(shù):

  -f 快速模式/尚未完成

  -i 互動(dòng)模式/ 每個(gè)動(dòng)作將要被確認(rèn)

  -v 詳細(xì)輸出/ 列出所選擇程序的資訊

  -w 智能警告訊息/ 尚未完成

  -n 沒(méi)有動(dòng)作/ 顯示程序代號(hào)

  參數(shù):選擇程序的規(guī)則可以是, 終端機(jī)代號(hào),使用者名稱,程序代號(hào),命令名稱。

  -t 終端機(jī)代號(hào) ( tty 或 pty )

  -u 使用者名稱

  -p 程序代號(hào) ( pid )

  -c 命令名稱 可使用的訊號(hào):

  以下列出已知的訊號(hào)名稱,訊號(hào)代號(hào),功能。

  名稱 (代號(hào)) 功能/ 描述

  ALRM 14 離開(kāi)

  HUP 1 離開(kāi)

  INT 2 離開(kāi)

  KILL 9 離開(kāi)/ 強(qiáng)迫關(guān)閉

  PIPE 13 離開(kāi)

  POLL 離開(kāi)

  PROF 離開(kāi)

  TERM 15 離開(kāi)

  USR1 離開(kāi)

  USR2 離開(kāi)

  VTALRM 離開(kāi)

  STKFLT 離開(kāi)/ 只適用于i386, m68k, arm 和 ppc 硬體

  UNUSED 離開(kāi)/ 只適用于i386, m68k, arm 和 ppc 硬體

  TSTP 停止 /產(chǎn)生與內(nèi)容相關(guān)的行為

  TTIN 停止 /產(chǎn)生與內(nèi)容相關(guān)的行為

  TTOU 停止 /產(chǎn)生與內(nèi)容相關(guān)的行為

  STOP 停止 /強(qiáng)迫關(guān)閉

  CONT 從新啟動(dòng) /如果在停止?fàn)顟B(tài)則從新啟動(dòng),否則忽略

  PWR 忽略 /在某些系統(tǒng)中會(huì)離開(kāi)

  WINCH 忽略

  CHLD 忽略

  ABRT 6 核心

  FPE 8 核心

  ILL 4 核心

  QUIT 3 核心

  SEGV 11 核心

  TRAP 5 核心

  SYS 核心 /或許尚未實(shí)作

  EMT 核心 /或許尚未實(shí)作

  BUS 核心 /核心失敗

  XCPU 核心 /核心失敗

  XFSZ 核心 /核心失敗

  范例:

  停止所有在 PTY 裝置上的程序

  skill -KILL -v pts/*

  停止三個(gè)使用者 user1 , user2 , user3

  skill -STOP user1 user2 user3

  其他相關(guān)的命令: kill

  名稱:expr

  使用權(quán)限:所有使用者

  ### 字串長(zhǎng)度

  shell>> expr length "this is a test"

  14

  ### 數(shù)字商數(shù)

  shell>> expr 14 % 9

  5

  ### 從位置處抓取字串

  shell>> expr substr "this is a test" 3 5

  is is

  ### 數(shù)字串 only the first character

  shell>> expr index "testforthegame" e

  2

  ### 字串真實(shí)重現(xiàn)

  shell>> expr quote thisisatestformela

  thisisatestformela

  名稱: tr

  ### 1.比方說(shuō)要把目錄下所有的大寫(xiě)檔名換為小寫(xiě)檔名?

  似乎有很多方式,"tr"是其中一種:

  #!/bin/sh

  dir="/tmp/testdir";

  files=`find $dir -type f`;

  for i in $files

  do

  dir_name=`dirname $i`;

  ori_filename=`basename $i`

  new_filename=`echo $ori_filename | tr [:upper:] [:lower:]` > /dev/null;

  #echo $new_filename;

  mv $dir_name/$ori_filename $dir_name/$new_filename

  done

  ### 2.自己試驗(yàn)中...lowercase to uppercase

  tr abcdef...[del] ABCDE...[del]

  tr a-z A-Z

  tr [:lower:] [:upper:]

  shell>> echo "this is a test" | tr a-z A-Z > www

  shell>> cat www

  THIS IS A TEST

  ### 3.去掉不想要的字串

  shell>> tr -d this ### 去掉有關(guān) t.e.s.t

  this

  man

  man

  test

  e

  ### 4.取代字串

  shell>> tr -s "this" "TEST"

  this

  TEST

  th

  TE

  指令:clear

  用途:清除螢?zāi)挥谩?/p>

  使用方法:在 console 上輸入 clear。

  名稱: reset, tset

  使用方法: tset [-IQqrs] [-] [-e ch] [-i ch] [-k ch] [-m mapping] [terminal]

  使用說(shuō)明:

  reset 其實(shí)和 tset 是一同個(gè)命令,它的用途是設(shè)定終端機(jī)的狀態(tài)。一般而言,這個(gè)命令會(huì)自動(dòng)的從環(huán)境變數(shù)、命令列或是其它的組態(tài)檔決定目前終端機(jī)的型態(tài)。如果指定型態(tài)是 ? 的話,這個(gè)程式會(huì)要求使用者輸入終端機(jī)的型別。

  由于這個(gè)程式會(huì)將終端機(jī)設(shè)回原始的狀態(tài),除了在 login 時(shí)使用外,當(dāng)系統(tǒng)終端機(jī)因?yàn)槌淌讲徽?zhí)行而進(jìn)入一些奇怪的狀態(tài)時(shí),你也可以用它來(lái)重設(shè)終端機(jī)o 例如不小心把二進(jìn)位檔用 cat 指令進(jìn)到終端機(jī),常會(huì)有終端機(jī)不再回應(yīng)鍵盤(pán)輸入,或是回應(yīng)一些奇怪字元的問(wèn)題。此時(shí)就可以用 reset 將終端機(jī)回復(fù)至原始狀態(tài)。選項(xiàng)說(shuō)明:

  -p

  將終端機(jī)類別顯示在螢?zāi)簧?,但不做設(shè)定的動(dòng)作。這個(gè)命令可以用來(lái)取得目前終端機(jī)的類別。

  -e ch

  將 erase 字元設(shè)成 ch

  -i ch

  將中斷字元設(shè)成 ch

  -k ch

  將刪除一行的字元設(shè)成 ch

  -I

  不要做設(shè)定的動(dòng)作,如果沒(méi)有使用選項(xiàng) -Q 的話,erase、中斷及刪除字元的目前值依然會(huì)送到螢?zāi)簧稀?/p>

  -Q

  不要顯示 erase、中斷及刪除字元的值到螢?zāi)簧稀?/p>

  -r

  將終端機(jī)類別印在螢?zāi)簧稀?/p>

  -s

  將設(shè)定 TERM 用的命令用字串的型式送到終端機(jī)中,通常在 .login 或 .profile 中用

  范例:

  讓使用者輸入一個(gè)終端機(jī)型別并將終端機(jī)設(shè)到該型別的預(yù)設(shè)狀態(tài)。

  # reset ?

  將 erase 字元設(shè)定 control-h

  # reset -e ^B

  將設(shè)定用的字串顯示在螢?zāi)簧?/p>

  # reset -s

Erase is control-B (^ .

  Kill is control-U (^U).

  Interrupt is control-C (^C).

  TERM=xterm;

  名稱:compress

  使用權(quán)限:所有使用者

  使用方式:compress [-dfvcV] [-b maxbits]

  下載地址

  說(shuō)明:

  compress 是一個(gè)相當(dāng)古老的 unix 檔案壓縮指令,壓縮后的檔案會(huì)加上一個(gè) .Z 延伸檔名以區(qū)別未壓縮的檔案,壓縮后的檔案可以以 uncompress 解壓。若要將數(shù)個(gè)檔案壓成一個(gè)壓縮檔,必須先將檔案 tar 起來(lái)再壓縮。由于 gzip 可以產(chǎn)生更理想的壓縮比例,一般人多已改用 gzip 為檔案壓縮工具。

  參數(shù):

  c 輸出結(jié)果至標(biāo)準(zhǔn)輸出設(shè)備(一般指熒幕)

  f 強(qiáng)迫寫(xiě)入檔案,若目的檔已經(jīng)存在,則會(huì)被覆蓋 (force)

  v 將程式執(zhí)行的訊息印在熒幕上 (verbose)

  b 設(shè)定共同字串?dāng)?shù)的上限,以位元計(jì)算,可以設(shè)定的值為 9 至 16 bits 。由于值越大,能使用的共同字串就 越多,壓縮比例就越大,所以一般使用預(yù)設(shè)值 16 bits (bits)

  d 將壓縮檔解壓縮

  V 列出版本訊息

  范例:

  將 source.dat 壓縮成 source.dat.Z ,若 source.dat.Z 已經(jīng)存在,內(nèi)容則會(huì)被壓縮檔覆蓋。

  compress -f source.dat

  將 source.dat 壓縮成 source.dat.Z ,并列印出壓縮比例。

  -v 與 -f 可以一起使用

  compress -vf source.dat

  將壓縮后的資料輸出后再導(dǎo)入 target.dat.Z 可以改變壓縮檔名。

  compress -c source.dat > target.dat.Z

  -b 的值越大,壓縮比例就越大,范圍是 9-16 ,預(yù)設(shè)值是 16 。

  compress -b 12 source.dat

  將 source.dat.Z 解壓成 source.dat ,若檔案已經(jīng)存在,使用者按 y 以確定覆蓋檔案,若使用 -df 程式則會(huì)自動(dòng)覆蓋檔案。由于系統(tǒng)會(huì)自動(dòng)加入 .Z 為延伸檔名,所以 source.dat 會(huì)自動(dòng)當(dāng)作 source.dat.Z 處理。

  compress -d source.dat

  compress -d source.dat.Z

  名稱: lpd

  使用權(quán)限: 所有使用者

  使用方式:lpd [-l] [#port]

  lpd 是一個(gè)常駐的印表機(jī)管理程式,它會(huì)根據(jù) /etc/printcap 的內(nèi)容來(lái)管理本地或遠(yuǎn)端的印表機(jī)。/etc/printcap 中定義的每一個(gè)印表機(jī)必須在 /var/lpd 中有一個(gè)相對(duì)應(yīng)的目錄,目錄中以 cf 開(kāi)頭的檔案表示一個(gè)等待送到適當(dāng)裝置的印表工作。這個(gè)檔案通常是由 lpr 所產(chǎn)生。

  lpr 和 lpd 組成了一個(gè)可以離線工作的系統(tǒng),當(dāng)你使用 lpr 時(shí),印表機(jī)不需要能立即可用,甚至不用存在。lpd 會(huì)自動(dòng)監(jiān)視印表機(jī)的狀況,當(dāng)印表機(jī)上線后,便立即將檔案送交處理。這個(gè)得所有的應(yīng)用程式不必等待印表機(jī)完成前一工作。

  參數(shù):

  -l: 將一些除錯(cuò)訊息顯示在標(biāo)準(zhǔn)輸出上。

  #port: 一般而言,lpd 會(huì)使用 getservbyname 取得適當(dāng)?shù)?TCP/IP port,你可以使用這個(gè)參數(shù)強(qiáng)迫 lpd 使用指定的 port。

  范例:

  這個(gè)程式通常是由 /etc/rc.d 中的程式在系統(tǒng)啟始階段執(zhí)行。

  名稱 lpq

  -- 顯示列表機(jī)貯列中未完成的工作 用法

  lpq [l] [P] [user]

  說(shuō)明

  lpq 會(huì)顯示由 lpd 所管理的列表機(jī)貯列中未完成的項(xiàng)目。

  范例

  范例 1. 顯示所有在 lp 列表機(jī)貯列中的工作

  # lpq -PlpRank Owner Job Files Total Size1st root 238 (standard input) 1428646 bytes

  相關(guān)函數(shù)

  lpr,lpc,lpd

  名稱: lpr

  使用權(quán)限: 所有使用者

  使用方式:lpr [ -P printer ]

  將檔案或是由標(biāo)準(zhǔn)輸入送進(jìn)來(lái)的資料送到印表機(jī)貯列之中,印表機(jī)管理程式 lpd 會(huì)在稍后將這個(gè)檔案送給適當(dāng)?shù)某淌交蜓b置處理。lpr 可以用來(lái)將料資送給本地或是遠(yuǎn)端的主機(jī)來(lái)處理。

  參數(shù):

  -p Printer: 將資料送至指定的印表機(jī) Printer,預(yù)設(shè)值為 lp。

  范例:

  將 www.c 和 kkk.c 送到印表機(jī) lp。

  lpr -Plp www.c kkk.c

  名稱: lprm

  -- 將一個(gè)工作由印表機(jī)貯列中移除 用法

  /usr/bin/lprm [P]

  下載地址

  說(shuō)明

  尚未完成的印表機(jī)工作會(huì)被放在印表機(jī)貯列之中,這個(gè)命令可用來(lái)將常未送到印表機(jī)的工作取消。由于每一個(gè)印表機(jī)都有一個(gè)獨(dú)立的貯列,你可以用 -P 這個(gè)命令設(shè)定想要作用的印列機(jī)。如果沒(méi)有設(shè)定的話,會(huì)使用系統(tǒng)預(yù)設(shè)的印表機(jī)。

  這個(gè)命令會(huì)檢查使用者是否有足夠的權(quán)限刪除指定的檔案,一般而言,只有檔案的擁有者或是系統(tǒng)管理員才有這個(gè)權(quán)限。

  范例

  將印表機(jī) hpprinter 中的第 1123 號(hào)工作移除

  lprm -Phpprinter 1123

  將第 1011 號(hào)工作由預(yù)設(shè)印表機(jī)中移除

  lprm 1011

  名稱: fdformat

  使用權(quán)限: 所有使用者

  使用方式:fdformat [-n] device

  使用說(shuō)明 :

  對(duì)指定的軟碟機(jī)裝置進(jìn)行低階格式化。使用這個(gè)指令對(duì)軟碟格式化的時(shí)候,最好指定像是下面的裝置:

  /dev/fd0d360 磁碟機(jī) A: ,磁片為 360KB 磁碟

  /dev/fd0h1440 磁碟機(jī) A: ,磁片為 1.4MB 磁碟

  /dev/fd1h1200 磁碟機(jī) B: ,磁片為 1.2MB 磁碟

  如果使用像是 /dev/fd0 之類的裝置,如果里面的磁碟不是標(biāo)準(zhǔn)容量,格式化可能會(huì)失敗。在這種情況之下,使用者可以用 setfdprm 指令先行指定必要參數(shù)。

  參數(shù):

  -n 關(guān)閉確認(rèn)功能。這個(gè)選項(xiàng)會(huì)關(guān)閉格式化之后的確認(rèn)步驟。

  范例:

  fdformat -n /dev/fd0h1440

  將磁碟機(jī) A 的磁片格式化成 1.4MB 的磁片。并且省略確認(rèn)的步驟。

  名稱: mformat

  使用權(quán)限: 所有使用者

  使用方式:

  mformat [-t cylinders] [-h heads] [-s sectors] [-l volume_label] [-F] [-I fsVer-sion] [-S sizecode] [-2 sectors_on_track_0] [-M software_sector_size] [-a] [-X] [-C] [-H hidden_sectors] [-r root_sectors] [-B boot_sector] [-0 rate_on_track_0] [-A rate_on_other_tracks]

  [-1] [-k] drive:

  在已經(jīng)做過(guò)低階格式化的磁片上建立 DOS 檔案系統(tǒng)。如果在編譯 mtools 的時(shí)候把 USE_2M 的參數(shù)打開(kāi),部分與 2M 格式相關(guān)的參數(shù)就會(huì)發(fā)生作用。否則這些參數(shù)(像是 S,2,1,M)不會(huì)發(fā)生作用。

  參數(shù):

  -t 磁柱(synlider)數(shù)

  -h 磁頭(head)數(shù)

  -s 每一磁軌的磁區(qū)數(shù)

  -l 標(biāo)簽

  -F 將磁碟格式化為 FAT32 格式,不過(guò)這個(gè)參數(shù)還在實(shí)驗(yàn)中。

  -I 設(shè)定 FAT32 中的版本號(hào)。這當(dāng)然也還在實(shí)驗(yàn)中。

  -S 磁區(qū)大小代碼,計(jì)算方式為 sector = 2^(大小代碼+7)

  -c 磁叢(cluster)的磁區(qū)數(shù)。如果所給定的數(shù)字會(huì)導(dǎo)致磁叢數(shù)超過(guò) FAT 表的限制,mformat 會(huì)自動(dòng)放大磁區(qū)數(shù)。

  -s

  -M 軟體磁區(qū)大小。這個(gè)數(shù)字就是系統(tǒng)回報(bào)的磁區(qū)大小。通常是和實(shí)際的大小相同。

  -a 如果加上這個(gè)參數(shù),mformat 會(huì)產(chǎn)生一組 Atari 系統(tǒng)的序號(hào)給這塊軟碟。

  -X 將軟碟格式化成 XDF 格式。使用前必須先用 xdfcopy 指令對(duì)軟碟作低階格式化的動(dòng)作。

  -C 產(chǎn)生一個(gè)可以安裝 MS-DOS 檔案系統(tǒng)的磁碟影像檔(disk image)。當(dāng)然對(duì)一個(gè)實(shí)體磁碟機(jī)下這個(gè)參數(shù)是沒(méi)有意義的。

  -H 隱藏磁區(qū)的數(shù)目。這通常適用在格式化硬碟的分割區(qū)時(shí),因?yàn)橥ǔR粋€(gè)分割區(qū)的前面還有分割表。這個(gè)參數(shù)未經(jīng)測(cè)試,能不用就不用。

  -n 磁碟序號(hào)

  -r 根目錄的大小,單位是磁區(qū)數(shù)。這個(gè)參數(shù)只對(duì) FAT12 和 FAT16 有效。

  -B 使用所指定的檔案或是設(shè)備的開(kāi)機(jī)磁區(qū)做為這片磁片或分割區(qū)的開(kāi)機(jī)磁區(qū)。當(dāng)然當(dāng)中的硬體參數(shù)會(huì)隨之更動(dòng)。

  -k 盡量保持原有的開(kāi)機(jī)磁區(qū)。

  -0 第 0 軌的資料傳輸率

  -A 第 0 軌以外的資料傳輸率

  -2 使用 2m 格式

  -1 不使用 2m 格式

  范例:

  mformat a:

  這樣會(huì)用預(yù)設(shè)值把 a: (就是 /dev/fd0)里的磁碟片格式化。

  名稱: mkdosfs

  使用權(quán)限: 所有使用者

  使用方式: mkdosfs [ -c | -l filename ]

  [ -f number_of_FATs ]

  [ -F FAT_size ]

  [ -i volume_id ]

  [ -m message_file ]

  [ -n volume_name ]

  [ -r root_dir_entry ]

  [ -s sector_per_cluster ]

  [ -v ]

  device

  [ block_count ]

  說(shuō)明: 建立 DOS 檔案系統(tǒng)。 device 指你想要建立 DOS 檔案系統(tǒng)的裝置代號(hào)。像是 /dev/hda1 等等。 block_count 則是你希望配置的區(qū)塊數(shù)。如果 block_count 沒(méi)有指定則系統(tǒng)會(huì)自動(dòng)替你計(jì)算符合該裝置大小的區(qū)塊數(shù)。

  參數(shù):

  -c 建立檔案系統(tǒng)之前先檢查是否有壞軌。

  -l 從得定的檔案中讀取壞軌記錄。

  -f 指定檔案配置表(FAT , File Allocation Table)的數(shù)量。預(yù)設(shè)值為 2 。目前 Linux 的 FAT 檔案系統(tǒng)不支援超過(guò) 2 個(gè) FAT 表。通常這個(gè)不需要改。

  -F 指定 FAT 表的大小,通常是 12 或是 16 個(gè)位元組。12 位元組通常用于磁碟片,16 位元組用于一般硬碟的分割區(qū),也就是所謂的 FAT16 格式。這個(gè)值通常系統(tǒng)會(huì)自己選定適當(dāng)?shù)闹?。在磁碟片上?FAT16 通常不會(huì)發(fā)生作用,反之在硬碟上用 FAT12 亦然。

  -i 指定 Volume ID。一般是一個(gè) 4 個(gè)位元組的數(shù)字,像是 2e203a47 。如果不給系統(tǒng)會(huì)自己產(chǎn)生。

  -m 當(dāng)使用者試圖用這片磁片或是分割區(qū)開(kāi)機(jī),而上面沒(méi)有作業(yè)系統(tǒng)時(shí),系統(tǒng)會(huì)給使用者一段警告訊息。這個(gè)參數(shù)就是用來(lái)變更這個(gè)訊息的。你可以先用檔案編輯好,然后用這個(gè)參數(shù)指定,或是用

  -m -

  這樣系統(tǒng)會(huì)要求你直接輸入這段文字。要特別注意的是,檔案里的字串長(zhǎng)度不要超過(guò) 418 個(gè)字,包括展開(kāi)的跳欄符號(hào)(TAB)和換行符號(hào)(換行符號(hào)在 DOS 底下算兩個(gè)字元!)

  -n 指定 Volume Name,就是磁碟標(biāo)簽。如同在 DOS 底下的 format 指令一樣,給不給都可以。沒(méi)有預(yù)設(shè)值。

  -r 指定根目錄底下的最大檔案數(shù)。這里所謂的檔案數(shù)包括目錄。預(yù)設(shè)值是在軟碟上是 112 或是 224 ,在硬碟上是 512。沒(méi)事不要改這個(gè)數(shù)字。

  -s 每一個(gè)磁叢(cluster)的磁區(qū)數(shù)。必須是 2 的次方數(shù)。不過(guò)除非你知道你在作什么,這個(gè)值不要亂給。

  -v 提供額外的訊息

  范例:

  mkdosfs -n Tester /dev/fd0 將 A 槽里的磁碟片格式化為 DOS 格式,并將標(biāo)簽設(shè)為 Tester

  從零開(kāi)始:Linux基礎(chǔ)教程之命令的使用

  對(duì)于 Linux 新手,或者那些想要重新審視或改進(jìn)自己對(duì)基本 Linux 概念(比如:復(fù)制和移動(dòng)文件、創(chuàng)建符號(hào)和硬鏈接、設(shè)置文件系統(tǒng)對(duì)象所有權(quán)和權(quán)限以及同管道和重定向一起使用 Linux 的標(biāo)準(zhǔn)文本處理命令)的理解的人來(lái)說(shuō),本系列連載文章之一是理想的教材。沿著這個(gè)方向,我們將一起分享很多心得、技巧和竅門(mén),使該教程甚至對(duì)于那些具有豐富經(jīng)驗(yàn)的 Linux 老手來(lái)說(shuō)都是“有血有肉”,并且是實(shí)用的。

  對(duì)于初學(xué)者而言,本系列文章的許多內(nèi)容都很新穎,而更有經(jīng)驗(yàn)的 Linux 用戶可能會(huì)發(fā)現(xiàn)本教程是使他們基本的 Linux 技能“爐火純青”的有效途徑。

  介紹 bash

  shell

  如果您使用過(guò) Linux 系統(tǒng),那么您知道當(dāng)?shù)卿洉r(shí),將會(huì)看到像這樣的提示符:

  $

  您所看到的特殊的提示符可能看起來(lái)很不一樣。它可能包含系統(tǒng)的主機(jī)名、當(dāng)前的工作目錄名,或者兩者都有。但是不管這個(gè)特殊的提示符看起來(lái)像什么,有一件事是肯定的。打印出這個(gè)提示符的程序叫“shell”,極有可能您的特殊的 shell 是一個(gè)叫 bash 的程序。

  您在運(yùn)行 bash 嗎?

  您可以通過(guò)輸入下面的命令來(lái)檢查您是否正在運(yùn)行 bash:

  $ echo $SHELL

  /bin/bash

  如果上面的命令行報(bào)錯(cuò)或者不會(huì)類似地響應(yīng)我們的示例,那么您可能正在運(yùn)行一個(gè)不同于 bash 的 shell。

  關(guān)于 bash

  Bash 是“Bourne-again shell”的首字母縮寫(xiě),它是大多數(shù) Linux 系統(tǒng)缺省的 shell。shell 的任務(wù)是執(zhí)行您的命令,使您能夠與 Linux 系統(tǒng)進(jìn)行交互。當(dāng)您輸完命令,您可以通知 shell 執(zhí)行 exit 或 logout 命令,在此您將返回到登錄提示符。順便提一下,您還可以通過(guò)在 bash 提示符下按 control-D 來(lái)注銷。

  使用“cd”

  您可能已經(jīng)發(fā)現(xiàn),目不轉(zhuǎn)睛地盯著bash提示符可不是世界上最讓人感到有勁的事。那么,讓我們來(lái)開(kāi)始用 bash 來(lái)瀏覽我們的文件系統(tǒng)。在提示符下,輸入下面的命令(不包括 $):

  $ cd /

  我們只告訴 bash 您想在 /(也稱為根目錄)中工作;系統(tǒng)上的所有目錄形成一棵樹(shù),/ 被認(rèn)為是這棵樹(shù)的頂部,或者是根。cd設(shè)置當(dāng)前您正在工作的目錄,也稱為“當(dāng)前工作目錄”。

  路徑

  要看 bash 的當(dāng)前工作目錄,您可以輸入:

  $ pwd

  /

  在上面的示例中,cd 的 / 參數(shù)叫做路徑。它告訴 cd 我們要轉(zhuǎn)到什么地方。特別是,/ 參數(shù)是一個(gè)絕對(duì)路徑,意味著它指定了相對(duì)于文件系統(tǒng)樹(shù)的根的位置。絕對(duì)路徑這里有幾個(gè)其它的絕對(duì)路徑:

  /dev

  /usr

  /usr/bin

  /usr/local/bin

  您可以看到,所有絕對(duì)路徑有一個(gè)共同點(diǎn)就是,它們都以/開(kāi)頭。通過(guò)路徑/usr/local/bin,我們告訴 cd 進(jìn)入 / 目錄,接著進(jìn)入這個(gè)目錄之下的usr目錄,然后再進(jìn)入 local 和 bin。絕對(duì)路徑總是通過(guò)是否以 / 開(kāi)頭來(lái)判斷。

  相對(duì)路徑

  另一種路徑叫相對(duì)路徑。在 Bash 中,cd 以及其它命令總是解釋那些相對(duì)于當(dāng)前目錄的路徑。相對(duì)路徑絕不會(huì)以 / 開(kāi)頭。這樣,如果我們?cè)?/usr 中:

  $ cd /usr

  那么,我們可以使用相對(duì)路徑來(lái)轉(zhuǎn)到 /usr/local/bin 目錄:

  $ cd local/bin

  $ pwd

  /usr/local/bin

  使用“..”

  相對(duì)路徑還可以包含一個(gè)或多個(gè) .. 目錄。.. 目錄是指向父目錄的專門(mén)目錄。那么,繼續(xù)前面的示例:

  $ pwd

  /usr/local/bin

  $ cd ..

  $ pwd

  /usr/local

  您可以看到,現(xiàn)在我們的當(dāng)前目錄是 /usr/local。我們能夠“后退”到相對(duì)于我們所在的當(dāng)前目錄的一個(gè)目錄。此外,我們還可以將 \"..\" 添加到一個(gè)現(xiàn)有的相對(duì)路徑中,使我們可以進(jìn)入與我們已在目錄并排的目錄,例如:

  $ pwd

  /usr/local

  $ cd ../share

  $ pwd

  /usr/share

  相對(duì)路徑示例

  相對(duì)路徑可以變得相當(dāng)復(fù)雜。這里有幾個(gè)示例,所有的都沒(méi)有顯示出結(jié)果的目標(biāo)路徑。請(qǐng)?jiān)囍茢嘁幌?,輸入這些命令后,您最終將會(huì)轉(zhuǎn)到什么地方:

  $ cd /bin

  $ cd ../usr/share/zoneinfo

  $ cd /usr/X11R6/bin

  $ cd ../lib/X11

  $ cd /usr/bin

  $ cd ../bin/../bin

  現(xiàn)在,試驗(yàn)一次,看看您的推斷是否正確。

  理解“.”

  在我們結(jié)束 cd 的介紹之前,我們還需要討論一些更多的內(nèi)容。首先,還有另一個(gè)叫 . 的專門(mén)的目錄。它表示“當(dāng)前目錄”。然而該目錄不為 cd 命令使用,它通常用來(lái)執(zhí)行一些當(dāng)前目錄中的程序,如下所示:

  $ ./myprog

  在上面的示例中,駐留在當(dāng)前工作目錄中的 myprog 可執(zhí)行文件將被執(zhí)行。

  cd 和主目錄

  如果我們想要轉(zhuǎn)到主目錄,我們可以輸入:

  $ cd

  沒(méi)有參數(shù),cd 將轉(zhuǎn)到主目錄,對(duì)于超級(jí)用戶來(lái)說(shuō)是 /root,對(duì)于一般用戶來(lái)說(shuō)通常是/home/username。但是,如果我們想要指定一個(gè)主目錄中的文件,將會(huì)怎樣呢?可能我們想要將一個(gè)文件參數(shù)傳給 myprog 命令。如果該文件在主目錄中,我們可以輸入:

  $ ./myprog /home/drobbins/myfile.txt

  但是,使用像這樣的絕對(duì)路徑并不總是很方便。幸好,我們可以使用 ~(代字符)字符來(lái)完成同樣的事:

  $ ./myprog ~/myfile.txt

  其他用戶的主目錄Bash 將把單獨(dú)的 ~ 擴(kuò)展為指向主目錄,然而您還可以用它來(lái)指向其他用戶的主目錄。例如,如果我們想要引用 fred 的主目錄中的名為 fredsfile.txt 的文件,可以輸入:

  $ ./myprog ~fred/fredsfile.txt

  使用 Linux 命令

  介紹 ls

  現(xiàn)在,我們將快速地看一看 ls 命令。很可能,您已經(jīng)很熟悉 ls,并且知道只輸入 ls 本身將列出當(dāng)前工作目錄的內(nèi)容: $">[b]通過(guò)指定 -a 選項(xiàng),您可以看到目錄中的所有文件,包括隱藏文件 — 那些以 . 開(kāi)頭的文件。您可以在下面的示例中看到,ls -a 將顯示 . 和 .. 專門(mén)的目錄鏈接:$">[b]遞歸和索引節(jié)點(diǎn)清單。

  您可以使用 -d 來(lái)查看目錄本身,而您還可以用 -R 來(lái)完成相反的工作 — 不僅只查看一個(gè)目錄內(nèi)部,而且要遞歸地查看該目錄內(nèi)所有的目錄內(nèi)部!我們將不會(huì)有對(duì)應(yīng)該選項(xiàng)的任何示例輸出(因?yàn)樗话阏己艽蟮钠?,但是為了感覺(jué)一下它是怎樣工作的,您可以試幾個(gè) ls -R 和 ls -Rl 命令。最后,ls 的 -i 選項(xiàng)可以用來(lái)在清單中顯示文件系統(tǒng)對(duì)象的索引節(jié)點(diǎn)號(hào):

  $ ls -i /usr

  1409 X11R6 314258 i686-linux

  43090 libexec 13394 sbin

  1417 bin 1513 i686-pc-linux-gnu

  5120 local 13408 share

  8316 distfiles 1517 include

  776 man 23779 src

  43 doc 1386 info 93892 portage

  36737 ssl

  70744 gentoo-x86 1585 lib 5132

  portage.old 784 tmp

  理解索引節(jié)點(diǎn),第 1 部分

  文件系統(tǒng)的每個(gè)對(duì)象都分配到一個(gè)獨(dú)一無(wú)二的索引,叫做索引節(jié)點(diǎn)號(hào)。這可能看起來(lái)微不足道,但是理解索引節(jié)點(diǎn)對(duì)于理解許多文件系統(tǒng)操作來(lái)說(shuō)很重要。例如,請(qǐng)考慮出現(xiàn)在每個(gè)目錄中的 . 和 .. 鏈接。為了完全理解 .. 目錄實(shí)際上是什么,我們將先來(lái)看一看 /usr/local 的索引節(jié)點(diǎn)號(hào):

  $ ls -id /usr/local

  5120 /usr/local

  /usr/local

  目錄有一個(gè) 5120 索引節(jié)點(diǎn)號(hào)?,F(xiàn)在,我們來(lái)看一 看 /usr/local/bin/.. 的索引節(jié)點(diǎn)號(hào):

  $ ls -id /usr/local/bin/..

  5120 /usr/local/bin/..

  您可以看到,/usr/local/bin/..具有和/usr/local相同的索引節(jié)點(diǎn)號(hào)!這就是我們抓住的問(wèn)題的實(shí)質(zhì)。過(guò)去,我們認(rèn)為 /usr/local 是這個(gè)目錄本身。

  現(xiàn)在,我們發(fā)現(xiàn)索引節(jié)點(diǎn) 5120實(shí)際上是這個(gè)目錄,并且我們發(fā)現(xiàn)了指向該索引節(jié)點(diǎn)的兩個(gè)目錄條目(叫做“鏈接”)。/usr/local 和 /usr/local/bin/..都鏈接到索引節(jié)點(diǎn) 5120。雖然索引節(jié)點(diǎn) 5120 只在磁盤(pán)中的一地方存在,但是多個(gè)目錄條目都鏈接到它上面。事實(shí)上,通過(guò)使用 ls -dl 命令,我們可以看到索引節(jié)點(diǎn) 5120 被引用的總次數(shù)

  $ ls -dl /usr/local

  drwxr-xr-x 8 root root 240 Dec 22 20:

  57 /usr/local

  如果我們看一看從左起的第二欄,我們可以看到目錄 /usr/local(索引節(jié)點(diǎn) 5120)被引用了 8 次。在我的系統(tǒng)中,引用該索引節(jié)點(diǎn)的不同路徑有這些:

  /usr/local

  /usr/local/.

  /usr/local/bin/..

  /usr/local/games/..

  /usr/local/lib/..

  /usr/local/sbin/..

  /usr/local/share/..

  /usr/local/src/..

  mkdir

  我們來(lái)快速地看一看 mkdir 命令,它可以用來(lái)創(chuàng)建新目錄。下面的示例創(chuàng)建了三個(gè)新目錄:tic、tac 和 toe,都在 /tmp 下:

  $ cd /tmp

  $ mkdir tic tac toe

  缺省情況下,mkdir 不會(huì)為您創(chuàng)建父目錄;鄰接的上一元素的完整路徑必須存在。因此,如果您想要?jiǎng)?chuàng)建目錄 won/der/ful,您將需要發(fā)出三個(gè)單獨(dú)的 mkdir 命令:

  $ mkdir won/der/ful

  mkdir: cannot create directory

  `won/der/ful': No such file or directory

  $ mkdir won

  $ mkdir won/der

  $ mkdir won/der/ful

  mkdir -p

  然而,mkdir有一個(gè)很方便的-p選項(xiàng),該選項(xiàng)告訴mkdir創(chuàng)建所有缺少的父目錄,如下所示:

  $ mkdir -p easy/as/pie

  總之,非常簡(jiǎn)單。要學(xué)習(xí)更多關(guān)于 mkdir 命令的知識(shí),請(qǐng)輸入 man mkdir 來(lái)閱讀手冊(cè)頁(yè)。除 cd(它內(nèi)置在 bash 中)之外,這幾乎適用于這里所涉及的所有命令(比如 man ls)。

  touch

  現(xiàn)在,我們將要快速地看一看 cp 和 mv 命令,這些命令用來(lái)復(fù)制、重命名以及移動(dòng)文件和目錄。為了開(kāi)始該概述,我們將首先用 touch 命令在 /tmp 中創(chuàng)建一個(gè)文件:

  $ cd /tmp

  $ touch copyme

  如果文件存在,touch 命令將更新文件的“mtime”(請(qǐng)回想 ls -l 輸出中的第六欄)。如果文件不存在,那么將創(chuàng)建一個(gè)新的空文件?,F(xiàn)在您應(yīng)該有一個(gè)大小為零的 /tmp/copyme 文件。

  echo 和重定向

  既然文件存在,我們來(lái)把一些數(shù)據(jù)添加到文件中。我們可以使用echo命令來(lái)完成,它帶有自己參數(shù),并且把這些參數(shù)打印到標(biāo)準(zhǔn)輸出。首先,單獨(dú)的 echo 命令是這樣的:

  $ echo \"firstfile\"

  firstfile

  帶有輸出重定向的同樣的 echo 命令為:

  $ echo \"firstfile\" > copyme

  大于符號(hào)告訴 shell 將 echo 的輸出寫(xiě)到名為 copyme 的文件中。如果該文件不存在,將創(chuàng)建這個(gè)文件;如果該文件存在,將覆蓋這個(gè)文件。通過(guò)輸入 ls -l,我們可以看到 copyme 文件為 10 個(gè)字節(jié)長(zhǎng),因?yàn)樗?firstfile 這個(gè)詞和換行符:

  $ ls -l copyme

  -rw-r--r-- 1 root root 10 Dec 28 14:13 copyme

  cat 和 cp

  為了在終端顯示文件的內(nèi)容,要使用 cat 命令:

  $ cat copyme

  firstfile

  現(xiàn)在,我們可以使用 cp 命令的基本調(diào)用來(lái)由原始的 copyme 文件創(chuàng)建 copiedme 文件:

  $ cp copyme copiedme

  通過(guò)觀察,我們發(fā)現(xiàn)它們確實(shí)是相互獨(dú)立的文件;它們的索引節(jié)點(diǎn)號(hào)不同:

  $ ls -i copyme copiedme

  648284 copiedme 650704 copyme

  mv

  現(xiàn)在,我們來(lái)用“mv”命令將“copiedme”重命名為“movedme”。其索引節(jié)點(diǎn)號(hào)將仍然是同一個(gè);但是,指向該索引節(jié)點(diǎn)的文件名將改變。

  $ mv copiedme movedme

  $ ls -i movedme

  648284 movedme

  只要目標(biāo)文件和源文件駐留在同一文件系統(tǒng)上,被移動(dòng)的文件的索引節(jié)點(diǎn)號(hào)就將仍然不變。在本教程系列的第 3 部分,我們將進(jìn)一步看一下文件系統(tǒng)。

  創(chuàng)建鏈接和刪除文件

  硬鏈接

  當(dāng)談及目錄條目和索引節(jié)點(diǎn)之間關(guān)系時(shí),我們提到了鏈接這個(gè)術(shù)語(yǔ)。Linux 實(shí)際有兩種鏈接。到此為止我們所討論的這種鏈接叫硬鏈接。一個(gè)給定的索引節(jié)點(diǎn)可以有任意數(shù)目的硬鏈接,該索引節(jié)點(diǎn)一直存在于文件系統(tǒng),直到所有的硬鏈接消失??梢允褂?ln 命令來(lái)創(chuàng)建新的硬鏈接

  $ cd /tmp

  $ touch firstlink

  $ ln firstlink secondlink

  $ ls -i firstlink secondlink

  15782 firstlink 15782 secondlink

  您可以看到,硬鏈接工作于索引節(jié)點(diǎn)級(jí)別,指向特殊的文件。在 Linux 系統(tǒng)上,硬鏈接有幾個(gè)局限性。第一,您只能給文件建立硬鏈接,而不能給目錄建立硬鏈接。的確如此;即便 . 和 .. 是系統(tǒng)給目錄創(chuàng)建的硬鏈接,也不允許您(“root”用戶也不行)創(chuàng)建任何您自己的硬鏈接。

  硬鏈接的第二個(gè)局限性是它們不能跨文件系統(tǒng)。這意味著,如果您的 / 和 /usr 存在于不同的文件系統(tǒng),您不能創(chuàng)建從 /usr/bin/bash 到 /bin/bash 的鏈接。

  符號(hào)鏈接

  實(shí)際上,符號(hào)鏈接(symbolic link,或“symlinks”)比硬鏈接更常用到。符號(hào)鏈接是一種專門(mén)的文件類型,在這種文件類型中,鏈接通過(guò)名稱引用另一個(gè)文件,而不是直接引用索引節(jié)點(diǎn)。符號(hào)鏈接不阻止文件被刪除;如果目標(biāo)文件消失,那么符號(hào)鏈接僅僅是不可用,或“被破壞”。

  通過(guò)將 -s 選項(xiàng)傳給 ln,可以創(chuàng)建符號(hào)鏈接。

  $ ln -s secondlink thirdlink

  $ ls -l firstlink secondlink thirdlink

  -rw-rw-r-- 2 agriffis agriffis 0 Dec 31 19:

  08 firstlink

  -rw-rw-r-- 2 agriffis agriffis 0 Dec 31 19:

  08 secondlink

  lrwxrwxrwx 1 agriffis agriffis 10 Dec 31 19:

  39 thirdlink -> secondlink

  在 ls -l 輸出中,可以用三種方式區(qū)分符號(hào)鏈接和一般文件。第一,請(qǐng)注意第一欄包含一個(gè) l 字符的輸出表明是符號(hào)鏈接。第二,符號(hào)鏈接的大小是目標(biāo)文件(本例是 secondlink)的字符數(shù)。第三,輸出的最后一欄顯示目標(biāo)文件名。

  符號(hào)鏈接通常比硬鏈接更靈活。您可以給任何類型的文件系統(tǒng)對(duì)象(包括目錄)創(chuàng)建符號(hào)鏈接。又因?yàn)榉?hào)鏈接的實(shí)現(xiàn)是基于路徑的(而不是索引節(jié)點(diǎn)),所以創(chuàng)建指向另一個(gè)文件系統(tǒng)上的對(duì)象的符號(hào)鏈接是完全可行的。但是,這一事實(shí)也使符號(hào)鏈接理解起來(lái)很復(fù)雜。請(qǐng)考慮我們想要在/tmp中創(chuàng)建一個(gè)指向 /usr/local/bin的鏈接的情況。我們應(yīng)該輸入:

  $ ln -s /usr/local/bin bin1

  $ ls -l bin1

  lrwxrwxrwx 1 root root 14 Jan 1 15:

  42 bin1 -> /usr/local/bin

  或者還可以輸入:

  $ ln -s ../usr/local/bin bin2

  $ ls -l bin2

  lrwxrwxrwx 1 root root 16 Jan 1 15:

  43 bin2 -> ../usr/local/bin

  您可以看到,兩個(gè)符號(hào)鏈接都指向同一目錄。但是,如果我們的第二個(gè)符號(hào)鏈接在任何時(shí)刻被移動(dòng)到另一個(gè)目錄,由于相對(duì)路徑的緣故,它將遭到“破壞”。

  $ ls -l bin2

  lrwxrwxrwx 1 root root 16 Jan 1 15:

  43 bin2 -> ../usr/local/bin

  $ mkdir mynewdir

  $ mv bin2 mynewdir

  $ cd mynewdir

  $ cd bin2

  bash: cd: bin2: No such file or directory

  因?yàn)?tmp/usr/local/bin這個(gè)目錄不存在,我們不能再把目錄轉(zhuǎn)到bin2;換句話說(shuō),bin2 現(xiàn)在被破壞了。

  由于這個(gè)原因,有時(shí)避免用相對(duì)路徑信息來(lái)創(chuàng)建符號(hào)鏈接是個(gè)好主意。但是,在許多情況下,相對(duì)的符號(hào)鏈接很管用。請(qǐng)考慮一個(gè)示例,在這個(gè)示例中您想要給 /usr/bin 中的一個(gè)程序創(chuàng)建一個(gè)別名:

  # ls -l /usr/bin/keychain

  -rwxr-xr-x 1 root root 10150 Dec 12 20:09 /usr/bin/keychain

  作為 root 用戶,您可能想要給“keychain”創(chuàng)建一個(gè)別名,比如“kc”。在這個(gè)示例中,我們有 root 訪問(wèn)權(quán),由 bash 提示符改變?yōu)?ldquo;#”可以證明。我們之所以需要 root 訪問(wèn)權(quán)是因?yàn)橐话阌脩舨荒茉?/usr/bin 中創(chuàng)建文件。作為 root 用戶,我們可以像下面這樣給 keychain 創(chuàng)建一個(gè)別名:

  # cd /usr/bin

  # ln -s /usr/bin/keychain kc

  當(dāng)這個(gè)解決方法起作用時(shí),如果我們想要把兩個(gè)文件都移到 /usr/local/bin 時(shí),它將會(huì)出現(xiàn)問(wèn)題。

  # mv /usr/bin/keychain

  /usr/bin/kc /usr/local/bin

  因?yàn)樵诜?hào)鏈接中,我們使用了絕對(duì)路徑,而我們的kc符號(hào)鏈接仍然指向/usr/bin/keychain,它已不存在了——另一個(gè)被破壞的符號(hào)鏈接。符號(hào)鏈接中的相對(duì)路徑和絕對(duì)路徑都各具優(yōu)點(diǎn),您應(yīng)該使用適合于您的特殊應(yīng)用的路徑類型。一般情況下,相對(duì)路徑或絕對(duì)路徑都能工作得很好。在這種情況下,下面的示例將起作用:

  # cd /usr/bin

  # ln -s keychain kc

  # ls -l kc

  lrwxrwxrwx 1 root root 8 Jan 5 12:

  40 kc -> keychain

  rm

  既然我們知道怎樣使用 cp、mv 和 ln,現(xiàn)在我們?cè)搶W(xué)習(xí)怎樣把對(duì)象從文件系統(tǒng)中刪除了。通常,這用 rm 命令來(lái)完成。要?jiǎng)h除文件,只需在命令行中指定它們:

  $ cd /tmp

  $ touch file1 file2

  $ ls -l file1 file2

  -rw-r--r-- 1 root root 0 Jan 1 16:41 file1

  -rw-r--r-- 1 root root 0 Jan 1 16:41 file2

  $ rm file1 file2

  $ ls -l file1 file2

  ls: file1: No such file or directory

  ls: file2: No such file or directory

  rmdir

  要?jiǎng)h除目錄,您有兩種選擇。您可以刪除目錄中所有的對(duì)象,然后使用 rmdir 來(lái)刪除目錄本身:

  $ mkdir mydir

  $ touch mydir/file1

  $ rm mydir/file1

  $ rmdir mydir

  rm 和目錄

  或者,您可以使用 rm 命令的 recursive force選項(xiàng)來(lái)告訴rm刪除您指定的目錄以及目錄中包含的所有對(duì)象:

  $ rm -rf mydir

  一般情況下,rm -rf 是刪除目錄樹(shù)的首選方法。在使用 rm -rf 時(shí)要十分小心,因?yàn)樗墓δ芸梢员缓芎玫乩?,也可能?huì)因使用不當(dāng)造成惡果。

  介紹通配符

  在您日常的 Linux 使用中,有很多時(shí)候您可能需要一次對(duì)多個(gè)文件系統(tǒng)對(duì)象執(zhí)行單一操作(比如 rm)。在這些情況下,在命令行中輸入許多文件通常讓人感到厭煩,為了解決這個(gè)問(wèn)題,您可以利用 Linux 內(nèi)置的通配符支持。這種支持也叫做“globbing”(由于歷史原因),允許您通過(guò)使用通配符模式一次指定多個(gè)文件。

  Bash 和其它 Linux 命令將通過(guò)在磁盤(pán)上查找并找到任何與之匹配的文件來(lái)解釋這種模式。因此,如果在當(dāng)前工作目錄中,您有從 file1 到 file8 的文件,那么您可以輸入下面的命令來(lái)刪除這些文件:

  $ rm file[1-8]

  或者,如果您只想要?jiǎng)h除文件名以 file 開(kāi)頭的所有文件,您可以輸入:

  $ rm file*

  理解不匹配

  或者,如果您想要列出 /etc 中以 g 開(kāi)頭的所有文件系統(tǒng)對(duì)象,您可以輸入:

  $ ls -d /etc/g*

  /etc/gconf /etc/ggi /etc/gimp /etc/gnome

  /etc/gnome-vfs-mime-magic /etc/gpm

  /etc/group /etc/group-

  現(xiàn)在,如果您指定了沒(méi)有任何文件系統(tǒng)對(duì)象與之匹配的模式,會(huì)怎么樣呢?在下面的示例中,我們?cè)噲D列出 /usr/bin 中以 asdf 開(kāi)頭并且以 jkl 結(jié)尾的所有文件:

  $ ls -d /usr/bin/asdf*jkl

  ls: /usr/bin/asdf*jkl:

  No such file or directory

  這里是對(duì)所發(fā)生情況的說(shuō)明。通常,當(dāng)我們指定一種模式時(shí),該模式與底層系統(tǒng)上的一個(gè)或多個(gè)文件匹配,bash 以空格隔開(kāi)的所有匹配對(duì)象的列表來(lái)替換該模式。

  但是,當(dāng)模式不能找到匹配對(duì)象時(shí),bash 將不理會(huì)參數(shù)、通配符等等,保留原樣。因此,當(dāng)“ls”不能找到文件 /usr/bin/asdf*jkl 時(shí),它會(huì)報(bào)錯(cuò)。此處的有效的規(guī)則是:glob 模式只在與文件系統(tǒng)中的對(duì)象匹配時(shí)才可以進(jìn)行擴(kuò)展。

  Linux必學(xué)的重要命令

  tar

  1. 作用

  tar命令是Unix/Linux系統(tǒng)中備份文件的可靠方法,幾乎可以工作于任何環(huán)境中,它的使用權(quán)限是所有用戶。

  2. 格式

  tar [主選項(xiàng)+輔選項(xiàng)] 文件或目錄

  3.主要參數(shù)

  使用該命令時(shí),主選項(xiàng)是必須要有的,它告訴tar要做什么事情,輔選項(xiàng)是輔助使用的,可以選用。

  主選項(xiàng):

  -c 創(chuàng)建新的檔案文件。如果用戶想備份一個(gè)目錄或是一些文件,就要選擇這個(gè)選項(xiàng)。

  -r 把要存檔的文件追加到檔案文件的未尾。例如用戶已經(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)址是[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í)行不同的功能。文件或目錄名稱可以混合使用大小寫(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中即可:

  

06 * * * tar cvf /dev/hda1/usrfiles.tar - /usr

  一般情況下,以下這些目錄是需要備份的:

  ◆ /etc 包含所有核心配置文件,其中包括網(wǎng)絡(luò)配置、系統(tǒng)名稱、防火墻規(guī)則、用戶、組,以及其它全局系統(tǒng)項(xiàng)。

  ◆ /var 包含系統(tǒng)守護(hù)進(jìn)程(服務(wù))所使用的信息,包括DNS配置、DHCP租期、郵件緩沖文件、HTTP服務(wù)器文件、dB2實(shí)例配置等。

  ◆ /home 包含所有默認(rèn)用戶的主目錄,包括個(gè)人設(shè)置、已下載的文件和用戶不希望失去的其它信息。

  ◆ /root 根(root)用戶的主目錄。

  ◆ /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)限是所有用戶。

  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ù)類似,會(huì)將解壓縮的結(jié)果顯示到屏幕上,但不會(huì)執(zhí)行任何的轉(zhuǎn)換。

  -t:檢查壓縮文件是否正確。

  -u:與-f參數(shù)類似,但是除了更新現(xiàn)有的文件外,也會(huì)將壓縮文件中的其它文件解壓縮到目錄中。

  -v:執(zhí)行是時(shí)顯示詳細(xì)的信息。

  -z:僅顯示壓縮文件的備注文字。

  -a:對(duì)文本文件進(jìn)行必要的字符轉(zhuǎn)換。

  b:不要對(duì)文本文件進(jìn)行字符轉(zhuǎn)換。

  -C:壓縮文件中的文件名稱區(qū)分大小寫(xiě)。

  -j:不處理壓縮文件中原有的目錄路徑。

  -L:將壓縮文件中的全部文件名改為小寫(xiě)。

  -M:將輸出結(jié)果送到more程序處理。

  -n:解壓縮時(shí)不要覆蓋原有的文件。

  -o:不必先詢問(wèn)用戶,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)限是所有用戶。

  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ì)文件名稱或硬連接是否存在,以及該文件是否為符號(hào)連接。

  -h或--help:在線幫助。

  -l或--list:列出壓縮文件的相關(guān)信息。

  -L或--license:顯示版本與版權(quán)信息。

  -n或--no-name:解壓縮時(shí),若壓縮文件內(nèi)含有原來(lái)的文件名稱及時(shí)間戳記,則將其忽略不予處理。

  -N或--name:解壓縮時(shí),若壓縮文件內(nèi)含有原來(lái)的文件名稱及時(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)限是所有用戶。

  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)址為[www.arjsoft.com],ARJ的下載頁(yè)面為[www.arjsoft.com]。unarj最新版本是2.65,注意unarj選項(xiàng)不是以減號(hào)(-)開(kāi)頭的。

  mtools

  1.作用

  mtools實(shí)際上是一個(gè)命令集合,是DOS文件系統(tǒng)的工具程序,它可以模擬許多DOS命令,使用起來(lái)非常方便。使用權(quán)限是所有用戶。Linux系統(tǒng)提供了一組稱為mtools的可移植工具,可以讓用戶輕松地從標(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,下載鏈接為[mtools.linux.lu]。下載后安裝一下即可。

  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

  -rw-r- -r- - 1 xxq xxq 27136 Jan 1 01:80 htca.c

  man

  1.作用

  man命令用來(lái)提供在線幫助,使用權(quán)限是所有用戶。在Linux系統(tǒng)中存儲(chǔ)著一部聯(lián)機(jī)使用的手冊(cè),以供用戶在終端上查找。使用man命令可以調(diào)閱其中的幫助信息,非常方便和實(shí)用。

  2.格式

  man 命令名稱

  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名稱而指定另一組的聯(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)限是所有用戶。

  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)限為所有用戶。

  2.格式

  uuencode [-hv] [file1 ...]

  3.主要參數(shù)

  -h:列出指令使用格式(help)。

  -v:列出版本信息。

  Linux必學(xué)的系統(tǒng)安全命令

  雖然Linux和Windows NT/2000系統(tǒng)一樣是一個(gè)多用戶的系統(tǒng),但是它們之間有不少重要的差別。對(duì)于很多習(xí)慣了Windows系統(tǒng)的管理員來(lái)講,如何保證Linux操作系統(tǒng)安全、可靠將會(huì)面臨許多新的挑戰(zhàn)。本文將重點(diǎn)介紹Linux系統(tǒng)安全的命令。

  passwd

  1.作用

  passwd命令原來(lái)修改賬戶的登陸密碼,使用權(quán)限是所有用戶。

  2.格式

  passwd [選項(xiàng)] 賬戶名稱

  3.主要參數(shù)

  -l:鎖定已經(jīng)命名的賬戶名稱,只有具備超級(jí)用戶權(quán)限的使用者方可使用。

  -u:解開(kāi)賬戶鎖定狀態(tài),只有具備超級(jí)用戶權(quán)限的使用者方可使用。

  -x, --maximum=DAYS:最大密碼使用時(shí)間(天),只有具備超級(jí)用戶權(quán)限的使用者方可使用。

  -n, --minimum=DAYS:最小密碼使用時(shí)間(天),只有具備超級(jí)用戶權(quán)限的使用者方可使用。

  -d:刪除使用者的密碼, 只有具備超級(jí)用戶權(quán)限的使用者方可使用。

  -S:檢查指定使用者的密碼認(rèn)證種類, 只有具備超級(jí)用戶權(quán)限的使用者方可使用。

  4.應(yīng)用實(shí)例

  $ passwd

  Changing password for user cao.

  Changing password for cao

  (current) UNIX password:

  New UNIX password:

  Retype new UNIX password:

  passwd: all authentication tokens updated successfully.

  從上面可以看到,使用passwd命令需要輸入舊的密碼,然后再輸入兩次新密碼。

  su

  1.作用

  su的作用是變更為其它使用者的身份,超級(jí)用戶除外,需要鍵入該使用者的密碼。

  2.格式

  su [選項(xiàng)]... [-] [USER [ARG]...]

  3.主要參數(shù)

  -f , --fast:不必讀啟動(dòng)文件(如 csh.cshrc 等),僅用于csh或tcsh兩種Shell。

  -l , --login:加了這個(gè)參數(shù)之后,就好像是重新登陸為該使用者一樣,大部分環(huán)境變量(例如HOME、SHELL和USER等)都是以該使用者(USER)為主,并且工作目錄也會(huì)改變。如果沒(méi)有指定USER,缺省情況是root。

  -m, -p ,--preserve-environment:執(zhí)行su時(shí)不改變環(huán)境變數(shù)。

  -c command:變更賬號(hào)為USER的使用者,并執(zhí)行指令(command)后再變回原來(lái)使用者。

  USER:欲變更的使用者賬號(hào),ARG傳入新的Shell參數(shù)。

  4.應(yīng)用實(shí)例

  變更賬號(hào)為超級(jí)用戶,并在執(zhí)行df命令后還原使用者。

  su -c df root

  umask

  1.作用

  umask設(shè)置用戶文件和目錄的文件創(chuàng)建缺省屏蔽值,若將此命令放入profile文件,就可控制該用戶后續(xù)所建文件的存取許可。它告訴系統(tǒng)在創(chuàng)建文件時(shí)不給誰(shuí)存取許可。使用權(quán)限是所有用戶。

  2.格式

  umask [-p] [-S] [mode]

  3.參數(shù)

  -S:確定當(dāng)前的umask設(shè)置。

  -p:修改umask 設(shè)置。

  [mode]:修改數(shù)值。

  4.說(shuō)明

  傳統(tǒng)Unix的umask值是022,這樣就可以防止同屬于該組的其它用戶及別的組的用戶修改該用戶的文件。既然每個(gè)用戶都擁有并屬于一個(gè)自己的私有組,那么這種“組保護(hù)模式”就不在需要了。嚴(yán)密的權(quán)限設(shè)定構(gòu)成了Linux安全的基礎(chǔ),在權(quán)限上犯錯(cuò)誤是致命的。需要注意的是,umask命令用來(lái)設(shè)置進(jìn)程所創(chuàng)建的文件的讀寫(xiě)權(quán)限,最保險(xiǎn)的值是0077,即關(guān)閉創(chuàng)建文件的進(jìn)程以外的所有進(jìn)程的讀寫(xiě)權(quán)限,表示為-rw-------。在~/.bash_profile中,加上一行命令umask 0077可以保證每次啟動(dòng)Shell后, 進(jìn)程的umask權(quán)限都可以被正確設(shè)定。

  5.應(yīng)用實(shí)例

  umask -S

  u=rwx,g=rx,o=rx

  umask -p 177

  umask -S

  u=rw,g=,o=

  上述5行命令,首先顯示當(dāng)前狀態(tài),然后把umask值改為177,結(jié)果只有文件所有者具有讀寫(xiě)文件的權(quán)限,其它用戶不能訪問(wèn)該文件。這顯然是一種非常安全的設(shè)置。

  chgrp

  1.作用

  chgrp表示修改一個(gè)或多個(gè)文件或目錄所屬的組。使用權(quán)限是超級(jí)用戶。

  2.格式

  chgrp [選項(xiàng)]... 組 文件...

  或

  chgrp [選項(xiàng)]... --reference=參考文件 文件...

  將每個(gè)<文件>的所屬組設(shè)定為<組>。

  3.參數(shù)

  -c, --changes :像 --verbose,但只在有更改時(shí)才顯示結(jié)果。

  --dereference:會(huì)影響符號(hào)鏈接所指示的對(duì)象,而非符號(hào)鏈接本身。

  -h, --no-dereference:會(huì)影響符號(hào)鏈接本身,而非符號(hào)鏈接所指示的目的地(當(dāng)系統(tǒng)支持更改符號(hào)鏈接的所有者,此選項(xiàng)才有效)。

  -f, --silent, --quiet:去除大部分的錯(cuò)誤信息。

  --reference=參考文件:使用<參考文件>的所屬組,而非指定的<組>。

  -R, --recursive:遞歸處理所有的文件及子目錄。

  -v, --verbose:處理任何文件都會(huì)顯示信息。

  4.應(yīng)用說(shuō)明

  該命令改變指定指定文件所屬的用戶組。其中g(shù)roup可以是用戶組ID,也可以是/etc/group文件中用戶組的組名。文件名是以空格分開(kāi)的要改變屬組的文件列表,支持通配符。如果用戶不是該文件的屬主或超級(jí)用戶,則不能改變?cè)撐募慕M。

  5.應(yīng)用實(shí)例

  改變/opt/local /book/及其子目錄下的所有文件的屬組為book,命令如下:

  $ chgrp - R book /opt/local /book

  chmod

  1.作用

  chmod命令是非常重要的,用于改變文件或目錄的訪問(wèn)權(quán)限,用戶可以用它控制文件或目錄的訪問(wèn)權(quán)限,使用權(quán)限是超級(jí)用戶。

  2.格式

  chmod命令有兩種用法。一種是包含字母和操作符表達(dá)式的字符設(shè)定法(相對(duì)權(quán)限設(shè)定);另一種是包含數(shù)字的數(shù)字設(shè)定法(絕對(duì)權(quán)限設(shè)定)。

  (1)字符設(shè)定法

  chmod [who] [+   -   =] [mode] 文件名

  ◆操作對(duì)象who可以是下述字母中的任一個(gè)或它們的組合

  u:表示用戶,即文件或目錄的所有者。

  g:表示同組用戶,即與文件屬主有相同組ID的所有用戶。

  o:表示其它用戶。

  a:表示所有用戶,它是系統(tǒng)默認(rèn)值。

  ◆操作符號(hào)

  +:添加某個(gè)權(quán)限。

  -:取消某個(gè)權(quán)限。

  =:賦予給定權(quán)限,并取消其它所有權(quán)限(如果有的話)。

  ◆設(shè)置mode的權(quán)限可用下述字母的任意組合

  r:可讀。

  w:可寫(xiě)。

  x:可執(zhí)行。

  X:只有目標(biāo)文件對(duì)某些用戶是可執(zhí)行的或該目標(biāo)文件是目錄時(shí)才追加x屬性。

  s:文件執(zhí)行時(shí)把進(jìn)程的屬主或組ID置為該文件的文件屬主。方式“u+s”設(shè)置文件的用戶ID位,“g+s”設(shè)置組ID位。

  t:保存程序的文本到交換設(shè)備上。

  u:與文件屬主擁有一樣的權(quán)限。

  g:與和文件屬主同組的用戶擁有一樣的權(quán)限。

  o:與其它用戶擁有一樣的權(quán)限。

  文件名:以空格分開(kāi)的要改變權(quán)限的文件列表,支持通配符。

  一個(gè)命令行中可以給出多個(gè)權(quán)限方式,其間用逗號(hào)隔開(kāi)。

  (2) 數(shù)字設(shè)定法

  數(shù)字設(shè)定法的一般形式為:

  chmod [mode] 文件名

  數(shù)字屬性的格式應(yīng)為3個(gè)0到7的八進(jìn)制數(shù),其順序是(u)(g)(o)文件名,以空格分開(kāi)的要改變權(quán)限的文件列表,支持通配符。

  數(shù)字表示的權(quán)限的含義如下:0001為所有者的執(zhí)行權(quán)限;0002為所有者的寫(xiě)權(quán)限;0004為所有者的讀權(quán)限;0010為組的執(zhí)行權(quán)限;0020為組的寫(xiě)權(quán)限;0040為組的讀權(quán)限;0100為其他人的執(zhí)行權(quán)限;0200為其他人的寫(xiě)權(quán)限;0400為其他人的讀權(quán)限;1000為粘貼位置位;2000表示假如這個(gè)文件是可執(zhí)行文件,則為組ID為位置位,否則其中文件鎖定位置位;4000表示假如這個(gè)文件是可執(zhí)行文件,則為用戶ID為位置位。

  3.實(shí)例

  如果一個(gè)系統(tǒng)管理員寫(xiě)了一個(gè)表格(tem)讓所有用戶填寫(xiě),那么必須授權(quán)用戶對(duì)這個(gè)文件有讀寫(xiě)權(quán)限,可以使用命令:

  #chmod 666 tem

  上面代碼中,這個(gè)666數(shù)字是如何計(jì)算出來(lái)的呢?0002為所有者的寫(xiě)權(quán)限,0004為所有者的讀權(quán)限,0020為組的寫(xiě)權(quán)限,0040為組的讀權(quán)限, 0200為其他人的寫(xiě)權(quán)限,0400為其他人的讀權(quán)限,這6個(gè)數(shù)字相加就是666(注以上數(shù)字都是八進(jìn)制數(shù)),結(jié)果見(jiàn)圖1所示。

  圖1 用chmod數(shù)字方法設(shè)定文件權(quán)限

  從圖1可以看出,tem文件的權(quán)限是-rw-rw-rw-,即用戶對(duì)這個(gè)文件有讀寫(xiě)權(quán)限。

  如果用字符權(quán)限設(shè)定使用下面命令:

  #chmod a =wx tem

  chown

  1.作用

  更改一個(gè)或多個(gè)文件或目錄的屬主和屬組。使用權(quán)限是超級(jí)用戶。

  2.格式

  chown [選項(xiàng)] 用戶或組 文件

  3.主要參數(shù)

  --dereference:受影響的是符號(hào)鏈接所指示的對(duì)象,而非符號(hào)鏈接本身。

  -h, --no-dereference:會(huì)影響符號(hào)鏈接本身,而非符號(hào)鏈接所指示的目的地(當(dāng)系統(tǒng)支持更改符號(hào)鏈接的所有者,此選項(xiàng)才有效)。

  --from=目前所有者:目前組只當(dāng)每個(gè)文件的所有者和組符合選項(xiàng)所指定的,才會(huì)更改所有者和組。其中一個(gè)可以省略,這已省略的屬性就不需要符合原有的屬性。

  -f, --silent, --quiet:去除大部分的錯(cuò)誤信息。

  -R, --recursive:遞歸處理所有的文件及子目錄。

  -v, --verbose:處理任何文件都會(huì)顯示信息。

  4.說(shuō)明

  chown將指定文件的擁有者改為指定的用戶或組,用戶可以是用戶名或用戶ID;組可以是組名或組ID;文件是以空格分開(kāi)的要改變權(quán)限的文件列表,支持通配符。系統(tǒng)管理員經(jīng)常使用chown命令,在將文件拷貝到另一個(gè)用戶的目錄下以后,讓用戶擁有使用該文件的權(quán)限。

  5.應(yīng)用實(shí)例

  1.把文件shiyan.c的所有者改為wan

  $ chown wan shiyan.c

  2.把目錄/hi及其下的所有文件和子目錄的屬主改成wan,屬組改成users。

  $ chown - R wan.users /hi

  chattr

  1.作用

  修改ext2和ext3文件系統(tǒng)屬性(attribute),使用權(quán)限超級(jí)用戶。

  2.格式

  chattr [-RV] [-+=AacDdijsSu] [-v version] 文件或目錄

  3.主要參數(shù)

  -R:遞歸處理所有的文件及子目錄。

  -V:詳細(xì)顯示修改內(nèi)容,并打印輸出。

  -:失效屬性。

  +:激活屬性。

  = :指定屬性。

  A:Atime,告訴系統(tǒng)不要修改對(duì)這個(gè)文件的最后訪問(wèn)時(shí)間。

  S:Sync,一旦應(yīng)用程序?qū)@個(gè)文件執(zhí)行了寫(xiě)操作,使系統(tǒng)立刻把修改的結(jié)果寫(xiě)到磁盤(pán)。

  a:Append Only,系統(tǒng)只允許在這個(gè)文件之后追加數(shù)據(jù),不允許任何進(jìn)程覆蓋或截?cái)噙@個(gè)文件。如果目錄具有這個(gè)屬性,系統(tǒng)將只允許在這個(gè)目錄下建立和修改文件,而不允許刪除任何文件。

  i:Immutable,系統(tǒng)不允許對(duì)這個(gè)文件進(jìn)行任何的修改。如果目錄具有這個(gè)屬性,那么任何的進(jìn)程只能修改目錄之下的文件,不允許建立和刪除文件。

  D:檢查壓縮文件中的錯(cuò)誤。

  d:No dump,在進(jìn)行文件系統(tǒng)備份時(shí),dump程序?qū)⒑雎赃@個(gè)文件。

  C:Compress,系統(tǒng)以透明的方式壓縮這個(gè)文件。從這個(gè)文件讀取時(shí),返回的是解壓之后的數(shù)據(jù);而向這個(gè)文件中寫(xiě)入數(shù)據(jù)時(shí),數(shù)據(jù)首先被壓縮之后才寫(xiě)入磁盤(pán)。

  s:Secure Delete,讓系統(tǒng)在刪除這個(gè)文件時(shí),使用0填充文件所在的區(qū)域。

  u:Undelete,當(dāng)一個(gè)應(yīng)用程序請(qǐng)求刪除這個(gè)文件,系統(tǒng)會(huì)保留其數(shù)據(jù)塊以便以后能夠恢復(fù)刪除這個(gè)文件。

  4.說(shuō)明

  chattr命令的作用很大,其中一些功能是由Linux內(nèi)核版本來(lái)支持的,如果Linux內(nèi)核版本低于2.2,那么許多功能不能實(shí)現(xiàn)。同樣-D檢查壓縮文件中的錯(cuò)誤的功能,需要2.5.19以上內(nèi)核才能支持。另外,通過(guò)chattr命令修改屬性能夠提高系統(tǒng)的安全性,但是它并不適合所有的目錄。 chattr命令不能保護(hù)/、/dev、/tmp、/var目錄。

  5.應(yīng)用實(shí)例

  1.恢復(fù)/root目錄,即子目錄的所有文件

  # chattr -R +u/root

  2.用chattr命令防止系統(tǒng)中某個(gè)關(guān)鍵文件被修改

  在Linux下,有些配置文件(passwd ,fatab)是不允許任何人修改的,為了防止被誤刪除或修改,可以設(shè)定該文件的“不可修改位(immutable)”,命令如下:

  # chattr +i /etc/fstab

  sudo

  1.作用

  sudo是一種以限制配置文件中的命令為基礎(chǔ),在有限時(shí)間內(nèi)給用戶使用,并且記錄到日志中的命令,權(quán)限是所有用戶。

  2.格式

  sudo [-bhHpV] [-s ] [-u <用戶>] [指令]

  sudo [-klv]

  3.主要參數(shù)

  -b:在后臺(tái)執(zhí)行命令。

  -h:顯示幫助。

  -H:將HOME環(huán)境變量設(shè)為新身份的HOME環(huán)境變量。

  -k:結(jié)束密碼的有效期,即下次將需要輸入密碼。

  -l:列出當(dāng)前用戶可以使用的命令。

  -p:改變?cè)儐?wèn)密碼的提示符號(hào)。

  -s :執(zhí)行指定的Shell。

  -u <用戶>:以指定的用戶為新身份,不使用時(shí)默認(rèn)為root。

  -v:延長(zhǎng)密碼有效期5分鐘。

  4.說(shuō)明

  sudo命令的配置在/etc/sudoers文件中。當(dāng)用戶使用sudo時(shí),需要輸入口令以驗(yàn)證使用者身份。隨后的一段時(shí)間內(nèi)可以使用定義好的命令,當(dāng)使用配置文件中沒(méi)有的命令時(shí),將會(huì)有報(bào)警的記錄。sudo是系統(tǒng)管理員用來(lái)允許某些用戶以root身份運(yùn)行部分/全部系統(tǒng)命令的程序。一個(gè)明顯的用途是增強(qiáng)了站點(diǎn)的安全性,如果需要每天以超級(jí)用戶的身份做一些日常工作,經(jīng)常執(zhí)行一些固定的幾個(gè)只有超級(jí)用戶身份才能執(zhí)行的命令,那么用sudo是非常適合的。

  ps

  1.作用

  ps顯示瞬間進(jìn)程 (process) 的動(dòng)態(tài),使用權(quán)限是所有使用者。

  2.格式

  ps [options] [--help]

  3.主要參數(shù)

  ps的參數(shù)非常多, 此出僅列出幾個(gè)常用的參數(shù)。

  -A:列出所有的進(jìn)程。

  -l:顯示長(zhǎng)列表。

  -m:顯示內(nèi)存信息。

  -w:顯示加寬可以顯示較多的信息。

  -e:顯示所有進(jìn)程。

  -a:顯示終端上的所有進(jìn)程,包括其它用戶的進(jìn)程。

  -au:顯示較詳細(xì)的信息。

  -aux:顯示所有包含其它使用者的進(jìn)程。

  4.說(shuō)明

  要對(duì)進(jìn)程進(jìn)行監(jiān)測(cè)和控制,首先要了解當(dāng)前進(jìn)程的情況,也就是需要查看當(dāng)前進(jìn)程。ps命令就是最基本、也是非常強(qiáng)大的進(jìn)程查看命令。使用該命令可以確定有哪些進(jìn)程正在運(yùn)行、運(yùn)行的狀態(tài)、進(jìn)程是否結(jié)束、進(jìn)程有沒(méi)有僵尸、哪些進(jìn)程占用了過(guò)多的資源等。圖2給出了ps-aux命令詳解。大部分信息都可以通過(guò)執(zhí)行該命令得到。最常用的三個(gè)參數(shù)是u、a、x。下面就結(jié)合這三個(gè)參數(shù)詳細(xì)說(shuō)明ps命令的作用:ps aux

  圖2 ps-aux命令詳解

  圖2第2行代碼中,USER表示進(jìn)程擁有者;PID表示進(jìn)程標(biāo)示符;%CPU表示占用的CPU使用率;%MEM占用的物理內(nèi)存使用率;VSZ表示占用的虛擬內(nèi)存大小;RSS為進(jìn)程占用的物理內(nèi)存值;TTY為終端的次要裝置號(hào)碼。

  STAT表示進(jìn)程的狀態(tài),其中D為不可中斷的靜止(I/O動(dòng)作);R正在執(zhí)行中;S靜止?fàn)顟B(tài);T暫停執(zhí)行;Z不存在,但暫時(shí)無(wú)法消除;W沒(méi)有足夠的內(nèi)存分頁(yè)可分配;高優(yōu)先序的進(jìn)程;N低優(yōu)先序的進(jìn)程;L有內(nèi)存分頁(yè)分配并鎖在內(nèi)存體內(nèi) (實(shí)時(shí)系統(tǒng)或 I/O)。START為進(jìn)程開(kāi)始時(shí)間。TIME為執(zhí)行的時(shí)間。COMMAND是所執(zhí)行的指令。

  4.應(yīng)用實(shí)例

  在進(jìn)行系統(tǒng)維護(hù)時(shí),經(jīng)常會(huì)出現(xiàn)內(nèi)存使用量驚人,而又不知道是哪一個(gè)進(jìn)程占用了大量進(jìn)程的情況。除了可以使用top命令查看內(nèi)存使用情況之外,還可以使用下面的命令:

  ps aux   sort +5n

  who

  1.作用

  who顯示系統(tǒng)中有哪些用戶登陸系統(tǒng),顯示的資料包含了使用者ID、使用的登陸終端、上線時(shí)間、呆滯時(shí)間、CPU占用,以及做了些什么。 使用權(quán)限為所有用戶。

  2.格式

  who - [husfV] [user]

  3.主要參數(shù)

  -h:不要顯示標(biāo)題列。

  -u:不要顯示使用者的動(dòng)作/工作。

  -s:使用簡(jiǎn)短的格式來(lái)顯示。

  -f:不要顯示使用者的上線位置。

  -V:顯示程序版本。

  4.說(shuō)明

  該命令主要用于查看當(dāng)前在線上的用戶情況。如果用戶想和其它用戶建立即時(shí)通信,比如使用talk命令,那么首先要確定的就是該用戶確實(shí)在線上,不然 talk進(jìn)程就無(wú)法建立起來(lái)。又如,系統(tǒng)管理員希望監(jiān)視每個(gè)登錄的用戶此時(shí)此刻的所作所為,也要使用who命令。who命令應(yīng)用起來(lái)非常簡(jiǎn)單,可以比較準(zhǔn)確地掌握用戶的情況,所以使用非常廣泛。

  動(dòng)手練習(xí)

  1.使用Linux命令檢測(cè)系統(tǒng)入侵者

  安裝過(guò)Mandrake Linux和Red Hat Linux的用戶都會(huì)知道,Linux系統(tǒng)會(huì)內(nèi)置三種不同級(jí)別(標(biāo)準(zhǔn)、高、更高)的防火墻,當(dāng)進(jìn)行了Linux服務(wù)器的安裝和一些基本的設(shè)置后,服務(wù)器應(yīng)該說(shuō)是比較安全的,但是也會(huì)有黑客通過(guò)各種方法利用系統(tǒng)管理員的疏忽侵入系統(tǒng)。如何快速查找黑客非常重要。一般來(lái)說(shuō),可以使用命令查詢黑客是否入侵,見(jiàn)表 1。

  表1 查詢黑客入侵現(xiàn)象的命令對(duì)應(yīng)表

  舉例說(shuō)明,如果黑客嗅探網(wǎng)絡(luò),那么它必須使網(wǎng)卡接口處于混雜模式,使用下面命令進(jìn)行查詢:

  #ifconfig -a

  eth0 Link encap:Ethernet HWaddr 00:00:E8:A0:25:86

  inet addr:192.168.1.7 Bcast:192.168.1.255 Mask:255.255.255.0

  UP BROADCAST RUNNING PROMISCUOUS MTU:1500 Metric:1

  ......

  從這個(gè)命令的輸出中,可以看到上面講到的這些概念。第一行的00:00:E8:A0:25:86是mac地址,第二行的192.168.1.7是IP地址,第四行講的是接收數(shù)據(jù)狀態(tài),這時(shí)正在被黑客嗅探。一般而言,網(wǎng)卡有幾種接收數(shù)據(jù)幀的狀態(tài),如Broadcast、Multicast、 Promiscuous等。Broadcast是指接收所有類型為廣播報(bào)文的數(shù)據(jù)幀;Multicast是指接收特定的組播報(bào)文;Promiscuous 則是通常說(shuō)的混雜模式,是指對(duì)報(bào)文中的目的硬件地址不加任何檢查、全部接收的工作模式。

  2.限制su命令的濫用

  我們知道,超級(jí)用戶在Linux中有最大的權(quán)利,幾乎所有黑客都想得到這個(gè)目標(biāo)。Linux可以增加對(duì)切換到超級(jí)用戶的限制。使用PAM (Pluggable Authentication Modules)可以禁止除在wheel組以外的任何人su成root,修改/etc/pam.d/su文件,除去屏蔽標(biāo)識(shí)#。使用 /usr/sbin/usermod G10 bjecadm將bjecadm這個(gè)賬號(hào)加入gid為10的組,就是wheel組。命令如下:

  /etc/pam.d/su # 使用密碼驗(yàn)證#

  auth sufficient /lib/security/pam_wheel.so debug

  # 限制只有wheel組用戶才可以切換到root#

  auth required /lib/security/pam_wheel.so use_uid

  chmod -G10 bjecadm

  另外,每當(dāng)用戶試圖使用su命令進(jìn)入系統(tǒng)用戶時(shí),命令將在/usr/adm/sulog文件中寫(xiě)一條信息,若該文件記錄了大量試圖用su進(jìn)入root的無(wú)效操作信息,則表明了可能有人企圖破譯root口令。

  Linux命令有著強(qiáng)大的功能。對(duì)于Linux系統(tǒng)管理員來(lái)說(shuō),往往只需要通過(guò)各種安全命令技巧,組合構(gòu)成安全防線。從計(jì)算機(jī)安全的角度看,世界上沒(méi)有絕對(duì)安全的計(jì)算機(jī)系統(tǒng),Linux系統(tǒng)也不例外。

  Linux 系統(tǒng)命令精通指南

  在“Linux 文件命令精通指南”中,我們討論了利用最基礎(chǔ)和最常用 Linux 文件命令所需的基本信息。在本文中,我將對(duì) Linux 系統(tǒng)命令作同樣的討論。

  對(duì)于文件命令,我們?cè)诖颂幵敱M討論了某些相當(dāng)簡(jiǎn)單和直觀的管理命令。而只描述了其他較復(fù)雜命令的功能,以便在您需要使用時(shí),知道存在這些命令及其用途。本文不涉及對(duì)每個(gè)命令使用背后的基本原理的詳細(xì)討論,但是我們將討論最基本和最有用的命令,這些命令用于監(jiān)視和管理打印機(jī)服務(wù)、文件系統(tǒng)、磁盤(pán)和進(jìn)程。

  有關(guān)超級(jí)用戶的更多信息

  這里討論的很多命令可以由常規(guī)用戶在其自己的文件和進(jìn)程中執(zhí)行。但是,某些命令,如 fdisk,需要有 root 權(quán)限才能運(yùn)行。

  為了您的系統(tǒng)的完整性,建議您避免直接以 "root" 登錄到系統(tǒng)中。相反,通常更適合以常規(guī)用戶登錄,然后執(zhí)行 su 或從 X window 執(zhí)行 sux 命令來(lái)運(yùn)行系統(tǒng)管理功能。(Sux 為您提供 X window 環(huán)境以及 root 權(quán)限。)當(dāng)您以 root 用戶登錄時(shí),您會(huì)始終知道您處于這種狀態(tài),因?yàn)槟奶崾痉優(yōu)?ldquo;#”。

  超級(jí)用戶能夠使用 sudo,有選擇地將那些通常為 root 用戶或其他特殊用戶所保留的權(quán)限分配給一個(gè)不同的常規(guī)用戶。root 用戶可以定義實(shí)際和有效的用戶和組標(biāo)識(shí)號(hào) uid 和 gid,以便與預(yù)期用戶的標(biāo)識(shí)相匹配。這種預(yù)期用戶可以是(但不必是)被允許運(yùn)行該命令的用戶。

  換言之,超級(jí)用戶可以允許其他用戶執(zhí)行某個(gè)命令,但也可以確定由進(jìn)程所產(chǎn)生的任何結(jié)果文件應(yīng)該屬于 root 用戶或任何由超級(jí)用戶指定的其他用戶。Sudo 權(quán)限一經(jīng)分配,則只需要用戶使用自己的口令進(jìn)行驗(yàn)證,而不需要 root 用戶口令。

  通用命令

  從技術(shù)上講,Uname、diff、date、sort 和 uniq 應(yīng)該看作文件命令,但由于它們經(jīng)常用于診斷和維護(hù)例程的系統(tǒng)管理方面,在這里解釋它們更有意義。

  Uname

  Uname 提供了常規(guī)系統(tǒng)信息。當(dāng)指定 -a 選項(xiàng)時(shí),顯示所有可用信息:

  $ uname -a

  Linux linux 2.4.18-4GB #1 Wed Mar 27 13:57:05 UTC 2002 i686 unknown

  在這里我們從左向右看到常規(guī)的系統(tǒng)信息。每條信息都有自己的選項(xiàng)(在下面的圓括號(hào)中),可以單獨(dú)顯示:

  操作系統(tǒng)名稱為 Linux(-s)。

  本機(jī)的網(wǎng)絡(luò)節(jié)點(diǎn)名為 linux (-n)。

  操作系統(tǒng)發(fā)布版本為 4.5.18-4GB (-r)。

  操作系統(tǒng)版本為 #1 Wed Mar 27 13:57:05 UTC 2002 (-v)。

  機(jī)器類型為 i686 (-m)。

  這里的處理器類型 (-p) 為未知。

  類似地,stty 顯示關(guān)于您的終端設(shè)置的信息:

  $ stty -a

  speed 38400 baud; rows 40; columns 103; line = 0;

  intr = ^C; quit = ^/; erase = ^?; kill = ^U; eof = ^D; eol = ; eol2 = ; start = ^Q;

  stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0;

  -parenb -parodd cs8 -hupcl -cstopb cread -clocal -crtscts -ignbrk -brkint -ignpar -parmrk -inpck

  -istrip -inlcr -igncr icrnl ixon -ixoff -iuclc -ixany -imaxbel

  opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0

  isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke

  第二行和第三行顯示了將在命令行分別調(diào)用的特殊字符和鍵序列。例如,"^Z" 即 CNTRL-Z 在本系統(tǒng)中發(fā)送一個(gè)終端休止符。退出符號(hào)以 "^/" 即 CNTRL-/ 發(fā)送,而我們可以將其改為 "^X",如下所示:

  $ stty quit ^X

  在這種情況下,您實(shí)際要輸入 ^ 符號(hào),而不是 CNTRL 鍵。這種改變只在當(dāng)前窗口中起效。為了使這種改變永久生效,需要在您的 .bashrc 文件中輸入該語(yǔ)句。

  Diff 和 Date。顧名思義,Diff 比較兩個(gè)文件。它返回那些導(dǎo)致文件不同的行,并返回關(guān)于如何使文件變得相同的一些含義隱晦的輸出:

  $ diff test.out test2.out

  0a1

  > Another test.

  在這里我們被告知,需要將 "Another test." 這一行添加到 test.out,以便使它與 test2.out 相似。第一個(gè)字符 "0" 是要在 test.out 中編輯的行號(hào);"a" 表示該行應(yīng)該被添加到 test.out,以便與 test2.out 的第一行 "1" 相匹配。如果我們需要更改 test.out,則第二個(gè)字符也可以是 "c",而如果我們需要從 test.out 中刪除一些內(nèi)容,則第二個(gè)字符是 "d"。

  您可能希望使一個(gè)文件與另一個(gè)文件相似,以便為某些代碼提供補(bǔ)丁。diff 還經(jīng)常作為分析工具,用于驗(yàn)證程序或腳本 — 例如 sed 腳本 — 的輸出是否是所預(yù)期的輸出。

  date 命令可用于顯示或設(shè)置日期。如果用戶具有超級(jí)用戶權(quán)限,則他或她可以通過(guò)在以下命令中提供一個(gè)數(shù)字型字符串來(lái)設(shè)置日期:

  $ date 0101010004

  此命令將日期設(shè)置為 2004 年 (04) 1 月 1 日 (0101) 凌晨 1 時(shí) (0100)。

  但是,任何用戶可以用所需的格式來(lái)顯示日期。注意在格式序列之前需要一個(gè)加號(hào) "+"。如果沒(méi)有出現(xiàn)此命令的預(yù)期輸出,則嘗試將它包含在單引號(hào)中:

  $ date +´%H%M%S´

  204748

  您可以在序列中包含空格,這時(shí)您需要使用雙引號(hào):

  $ date +"%H %M %S"

  20 47 51

  在日期的主頁(yè)上列有三十多種不同的格式序列,這些序列可以按需要結(jié)合起來(lái),以獲得您最后的輸出格式。

  date 的輸出還可以用于腳本中,如:

  $ date -d ´2 day´

  Thu Jan 29 19:02:02 EST 2004

  -d 選項(xiàng)指示 date 顯示其后字符串中所描述的時(shí)間。在上例中,我們要求顯示從現(xiàn)在起(2004 年 1 月 27 日)兩天后的日期。我們也可以要求顯示三天前的日期,其命令為:

  $ date -d ´-3 day´

  Sun Jan 25 20:56:59 EST 2004

  date 多種功能的另一個(gè)示例是能夠向其輸出附加字符串,為生成唯一的文件名提供了一種便利的方法。

  $ ls -l | cat > $(date +ls_%d%b%y%H%M.out)

  $ ls ls_*.out

  ls_04Feb041633.out

  在這里,我們將一個(gè)長(zhǎng)文件列表的輸出傳送給 cat,它將我們的輸出再傳送到一個(gè)名為 ls_04Feb041609.out 的文件。注意我們?yōu)槲募褂昧艘粋€(gè)變量,由美元符號(hào) "$" 表示。依次將 "ls_" 和 ".out" 附加到日期,其格式為月份中的日 (%d)、本地的月份名稱縮寫(xiě) (%b)、年份的最后兩位數(shù)字 (%y)、小時(shí) (%H) 和分鐘 (%M),從而產(chǎn)生此文件名。

  Sort 和 Uniq。 您可以從管道或從命令行所指定的文件對(duì)文本文件的行進(jìn)行 sort 操作。除非另外指定,sort 對(duì)多列輸出的第一列進(jìn)行操作。在默認(rèn)情況下,除非使用 -n 選項(xiàng),數(shù)字型的列按字母順序排序。

  Sort 列可以用兩種不同的格式指定。如果使用 -k 選項(xiàng),則列的位置從 1 開(kāi)始進(jìn)行編號(hào)。您還可以使用 +POS1 格式,從第一列編號(hào)為零開(kāi)始進(jìn)行列的編號(hào)。以下兩個(gè)命令產(chǎn)生相同的輸出:

  $ ls -l *.out | sort +5 -7

  $ ls -l *.out | sort -k 6,8

  -rw-rr 1 bluher users 375 Dec 5 2002 fdisk.out

  -rw-rr 1 bluher users 2447 Dec 28 20:15 ls.out

  -rw-rr 1 bluher users 590 Jan 4 21:24 greps.out

  -rw-rr 1 bluher users 78 Jan 4 21:25 sgrep.out

  ...

  在默認(rèn)情況下,sort 命令的列分隔符是空格和制表符??梢允褂?-t SEP 選項(xiàng)指定其他分隔符,其中 SEP 是您指定的分隔符號(hào)。sort 的默認(rèn)順序是從最低到最高,利用 -r 選項(xiàng)可以將順序顛倒。

  Sort 可用于很多不同的任務(wù)。例如,它可用于對(duì)文件輸出進(jìn)行排序(如 /etc/passwd),或者如我們?cè)谙旅嫠吹降哪菢?,?duì) du 的輸出進(jìn)行排序。當(dāng)使用 -m 選項(xiàng)時(shí),sort 將文件合并,實(shí)際上并沒(méi)有對(duì)它們進(jìn)行排序。但是,如果您希望將它們排序,就應(yīng)該在文件合并前對(duì)它們排序。

  Sort 經(jīng)常與 uniq 命令一起使用,從已排序的文件中刪除完全相同的行。uniq 命令在管道中經(jīng)常跟在 sort 命令的后面,還可以使用 -c 選項(xiàng)來(lái)計(jì)算某一行所出現(xiàn)的次數(shù),或者使用 -d 選項(xiàng),只報(bào)告完全相同的行:

  $ sort -m test.out test2_sort.out | uniq -c

  1 Another test.

  1 Testing testing

  2 This is a test.

  在這里我們合并兩個(gè)文件 test.out 和 test2_sort.out。然后我們使用 -c 選項(xiàng),將輸出傳送到 uniq,這樣最后的結(jié)果是按字母順序排列的列表,完全相同的行被刪除,并帶有一個(gè)關(guān)于每行出現(xiàn)頻率的報(bào)告。

  打印機(jī)控制

  在多數(shù)情況下,打印機(jī)命令的使用相對(duì)較為明確。通過(guò)在 lpr 命令后面指定文件名,將作業(yè)發(fā)送到打印機(jī)。如果沒(méi)有提供文件名,則假定使用標(biāo)準(zhǔn)輸入。使用 lpq 命令,您可以獲得關(guān)于發(fā)送到打印機(jī)的作業(yè)的狀態(tài)報(bào)告。當(dāng)您指定作業(yè)號(hào)時(shí),Lprm 將作業(yè)從行打印機(jī)后臺(tái)打印隊(duì)列中刪除。

  $ lpr grep2.out

  $ lpq

  Printer:lp@linux ´lpdfilter drv=upp method=auto color=yes´

  Queue:1 printable job

  Server:pid 1929 active

  Unspooler:pid 1930 active

  Status:waiting for subserver to exit at 21:24:14.637

  Rank Owner/ID Class Job Files Size Time

  active bluher@linux+928 A 928 grep2.out 779 21:24:14

  done bluher A 877 (STDIN) 117258 13:09:53

  $ lprm 928

  Printer lp@linux:

  checking perms ´cfA928linux.local´

  dequeued ´cfA928linux.local´

  在這里,當(dāng)我們將作業(yè)發(fā)送到打印機(jī)后,我們查詢其狀態(tài)。Lpq 向我們顯示編號(hào)為 877 的作業(yè)已經(jīng)完成,而我們剛發(fā)送的作業(yè)編號(hào)為 928。我們使用命令 lprm 928 將活動(dòng)的作業(yè)從隊(duì)列中刪除。

  磁盤(pán)信息

  無(wú)論您是維護(hù)自己的系統(tǒng)還是支持具有很多用戶的企業(yè),監(jiān)視磁盤(pán)空間都是系統(tǒng)管理員更重要的職責(zé)之一。du、df 和 fdisk 命令提供了可用磁盤(pán)空間的不同視圖。

  du 命令提供對(duì)每個(gè)目錄的文件空間使用情況的評(píng)估。在默認(rèn)情況下,測(cè)量的單位是塊的數(shù)目,塊的大小通常在安裝您的系統(tǒng)時(shí)確定。

  在以下的示例中,系統(tǒng)是使用 1024 字節(jié)的塊安裝的。如果沒(méi)有指定目錄,則 du 開(kāi)始對(duì)當(dāng)前目錄進(jìn)行計(jì)算。-h 選項(xiàng)以易于讀懂的形式提供大小的值:

  $ du -h Documents

  105k Documents/jj

  573k Documents/John

  682k Documents

  可以使用 -a 選項(xiàng)更改輸出,該選項(xiàng)指示 du 顯示文件和目錄的塊數(shù)。選項(xiàng) block-size=SIZE 指示 du 以 SIZE 所指定字節(jié)大小的塊的數(shù)目來(lái)顯示輸出。

  $ du block-size=512 Documents

  209 Documents/jj

  1146 Documents/John

  1363 Documents

  在默認(rèn)情況下,du 還為每個(gè)子目錄遞歸地打印信息。通過(guò)使用 max-depth=N 選項(xiàng)可以限制這種操作,其中 N 等于被報(bào)告的最大級(jí)數(shù):

  $ du max-depth=2 .

  $ du max-depth=2 | sort -n

  4 ./.xemacs

  4 ./public_html

  105 ./Documents/jj

  573 ./Documents/Ian

  682 ./Documents

  2420 ./jdevhome/system

  8350 ./jdevhome/system9.0.3.1035

  13483 ./jdevhome/mywork

  24252 ./jdevhome

  ...

  du 報(bào)告目錄和子目錄的空間使用情況,而 df 報(bào)告已安裝文件系統(tǒng)的磁盤(pán)空間使用情況:

  $ df

  Filesystem 1k-blocks Used Available Use% Mounted on

  /dev/hda6 4195632 1983656 2211976 48% /

  /dev/hda5 14607 3778 10075 28% /boot

  /dev/hda9 937372 494028 443344 53% /home

  /dev/hda8 6297248 3876880 2420368 62% /opt

  shmfs 256220 0 256220 0% /dev/shm

  在這里,df 報(bào)告了五個(gè)文件系統(tǒng)的狀態(tài)。與 du 類似,df 利用 -h 選項(xiàng)提供人類可讀的輸出:

  $ df -h

  Filesystem Size Used Avail Use% Mounted on

  /dev/hda6 4.0G 1.9G 2.1G 48% /

  /dev/hda5 14M 3.7M 9.8M 28% /boot

  /dev/hda9 915M 476M 440M 52% /home

  /dev/hda8 6.0G 3.7G 2.3G 62% /opt

  shmfs 250M 0 250M 0% /dev/shm

  df 命令還允許您利用 -block-size=SIZE 選項(xiàng)來(lái)指定塊的大小。

  fdisk 命令是 Linux 的分區(qū)表操作命令。與 du 和 df 不同,沒(méi)有 root 用戶權(quán)限時(shí)不能運(yùn)行該命令。如果指定了 -l 選項(xiàng),則可以將它僅用于報(bào)告的目的。它提供了您的整個(gè)分區(qū)表的完整視圖,而不僅僅是您使用 df 所看到的擴(kuò)展 Linux 分區(qū):

  # fdisk -l

  Disk /dev/hda:240 heads, 63 sectors, 1940 cylinders

  Units = cylinders of 15120 * 512 bytes

  Device Boot Start End Blocks Id System

  /dev/hda1 1 286 2162128+ c Win95 FAT32 (LBA)

  /dev/hda2 * 288 1940 12496680 5 Extended

  /dev/hda5 288 289 15088+ 83 Linux

  /dev/hda6 290 844 4195768+ 83 Linux

  /dev/hda7 845 983 1050808+ 82 Linux swap

  /dev/hda8 984 1816 6297448+ 83 Linux

  /dev/hda9 1817 1940 937408+ 83 Linux

  進(jìn)程監(jiān)視

  在繁忙的多用戶系統(tǒng)中,進(jìn)程監(jiān)視也是 Linux 系統(tǒng)管理員的一項(xiàng)重要職責(zé)。在這方面,ps 和 top 是兩個(gè)最有用的命令。

  ps 命令提供了當(dāng)前運(yùn)行進(jìn)程的快照。

  生動(dòng)翔實(shí)的一課

  以下是 ps 的最簡(jiǎn)單形式:

  $ ps

  PID TTY TIME CMD

  3884 pts/1 00:00:00 bash

  3955 pts/2 00:00:00 more

  3956 pts/5 00:00:05 sqlplus

  PID 是進(jìn)程的標(biāo)識(shí)號(hào)。

  TTY 是進(jìn)程所屬的終端控制臺(tái)。

  TIME 列是進(jìn)程所使用的總的 CPU 時(shí)間。

  CMD 列列出正在執(zhí)行的命令行。

  使用帶有 -ef 選項(xiàng)的 ps,返回系統(tǒng)中所有用戶的所有進(jìn)程的完整列表。如果您將此 ps 命令的結(jié)果傳送到 grep 中,則該結(jié)果更易于查看。例如:

  $ ps -ef | grep oracle

  UID PID PPID C STIME TTY TIME CMD

  oracle 1633 1 0 13:58 ?00:00:00 ora_pmon_ora1

  oracle 1635 1 0 13:58 ?00:00:00 ora_dbw0_ora1

  oracle 1637 1 0 13:58 ?00:00:01 ora_lgwr_ora1

  oracle 1639 1 0 13:58 ?00:00:02 ora_ckpt_ora1

  oracle 1641 1 0 13:58 ?00:00:02 ora_smon_ora1

  oracle 1643 1 0 13:58 ?00:00:00 ora_reco_ora1

  oracle 1645 1 0 13:58 ?00:00:00 ora_cjq0_ora1

  oracle 1647 1 0 13:58 ?00:01:18 ora_qmn0_ora1

  oracle 1649 1 0 13:58 ?00:00:00 ora_s000_ora1

  oracle 1651 1 0 13:58 ?00:00:00 ora_d000_ora1

  注意,當(dāng)您將 ps 的輸出傳送到 grep 命令時(shí),列標(biāo)題并不象在 ps 命令本身所使用時(shí)那樣正常地顯示。為便于說(shuō)明,標(biāo)題位于輸出的上方,以便清楚地顯示其聯(lián)系。

  雖然 uid 通常是指數(shù)字型的標(biāo)識(shí),但在第一列下指定的是用戶名,標(biāo)記為 UID。

  PPID 是父進(jìn)程的標(biāo)識(shí)號(hào)。對(duì)于 Oracle 進(jìn)程,這里的標(biāo)識(shí)號(hào)為 1 — 它是 init 進(jìn)程(所有進(jìn)程的父進(jìn)程)的 id,因?yàn)樵诒鞠到y(tǒng)中安裝的 Oracle 是作為登錄進(jìn)程的一部分而啟動(dòng)的。

  標(biāo)為 C 的列是由 CPU 用于計(jì)算執(zhí)行優(yōu)先級(jí)的因子。

  STIME 是指進(jìn)程的啟動(dòng)時(shí)間。

  問(wèn)號(hào)表示這些進(jìn)程不屬于任何 TTY,因?yàn)樗鼈兪怯上到y(tǒng)啟動(dòng)的。

  以下是 ps 命令帶有某些不同選項(xiàng)的另一個(gè)示例。注意,其中很多列與執(zhí)行帶有 -ef 選項(xiàng)的 ps 時(shí)的列相同:

  $ ps aux

  USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

  bluh 4024 0.0 0.2 2240 1116 pts/1 S 20:59 0:00 su bluher

  bluh 4025 0.0 0.3 2856 1668 pts/1 S 20:59 0:00 bash

  bluh 4051 0.0 0.2 2488 1504 pts/1 R 21:01 0:00 ps aux

  bluh 4052 0.0 0.1 1636 600 pts/1 S 21:01 0:00 grep bluher

  除了提供重要的診斷信息,ps 命令還經(jīng)常用于找出失控進(jìn)程的 PID。例如,您的一個(gè)用戶在 SQL*Plus 會(huì)話中輸入一個(gè)笛卡爾聯(lián)接。您可以執(zhí)行以下的 ps 命令來(lái)找出其 PID:

  $ ps -ef | grep bluher

  ...

  bluher 4068 4064 0 21:14 pts/6 00:00:00 less

  bluher 4112 3945 0 21:28 pts/5 00:08:42 sqlplus

  ...

  然后您可以使用以下命令將其終止:

  $ kill 4112

  常規(guī)用戶可以看到所有的系統(tǒng)進(jìn)程,但他們只能終止他們自己擁有的進(jìn)程。

  Ps 只為您提供當(dāng)前進(jìn)程的快照。要即時(shí)查看最活躍的進(jìn)程,可使用 top。Top 實(shí)時(shí)地提供進(jìn)程信息。它還擁有交互式的狀態(tài),允許用戶輸入命令,如 n 后面跟有 5 或 10 等數(shù)字。其結(jié)果是指示 top 顯示 5 或 10 個(gè)最活躍的進(jìn)程。Top 持續(xù)運(yùn)行,直到您按 "q" 退出 top 為止。

  以下是 top 的部分顯示:

  8:14pm up 51 min, 7 users, load average: 0.02, 0.03, 0.05

  96 processes:87 sleeping, 2 running, 0 zombie, 7 stopped

  CPU states:6.4% user, 3.5% system, 0.0% nice, 89.9% idle

  Mem:512440K av, 392288K used, 120152K free, 0K shrd, 55668K buff

  Swap:1050800K av, 0K used, 1050800K free 236128K cached

  PID USER PRI NI SIZE RSS SHARE STAT %CPU %MEM TIME COMMAND

  1289 root 18 0 78008 11M 1796 R 3.7 2.2 0:49 X

  1965 bluher 20 0 12244 11M 10456 S 1.9 2.3 0:01 kdeinit

  1986 bluher 18 0 996 996 768 R 1.5 0.1 0:00 top

  1803 bluher 20 0 16960 16M 13508 S 0.9 3.3 0:03 kdeinit

  1804 bluher 20 0 16964 16M 13508 S 0.9 3.3 0:03 kdeinit

  1800 bluher 19 0 12260 11M 10076 S 0.1 2.3 0:04 kdeinit

  1 root 20 0 220 220 188 S 0.0 0.0 0:04 init

  ...

  關(guān)閉

  看來(lái)應(yīng)該以 shutdown 命令來(lái)結(jié)束本次討論。與本文以及上一篇文章中所討論的許多命令一樣,通常有一種 GUI 形式的替代方法可以關(guān)閉您的系統(tǒng)。但是,當(dāng)您需要手動(dòng)關(guān)閉時(shí),您可以使用以下命令立即進(jìn)行關(guān)閉:

  $ shutdown -h now

  您可以使用以下命令手動(dòng)地重新啟動(dòng)系統(tǒng):

  $ shutdown -r now

  注意這兩個(gè)命令都需要指定時(shí)間。您可以指定 "now" 或使用帶有時(shí)間秒數(shù)的 -t 選項(xiàng)。

  我們?cè)谶@兩篇文章中討論了大量?jī)?nèi)容,但我們絕對(duì)無(wú)法涵蓋 Linux 可能具有的全部?jī)?nèi)容。我們沒(méi)有討論的命令還有很多,而我們沒(méi)有看到的命令選項(xiàng)則更多。但是,在這里我們希望您至少找到了開(kāi)始管理 Linux 系統(tǒng)所需的最少限度的工具。

  Linux開(kāi)發(fā)中的常用命令

  基本操作命令:

  -----------------------------------------

  ls #以默認(rèn)方式顯示當(dāng)前目錄文件列表

  ls –a #顯示所有文件包括隱藏文件

  ls –l #顯示文件屬性,包括大小,日期,符號(hào)連接,是否可讀寫(xiě)及是否可執(zhí)行

  ls --color=never *.so > obj #不顯示文字顏色,將所有so文件記錄到obj文件中

  ----------------------------------------------------------------------

  cd dir #切換到當(dāng)前目錄下的dir目錄

  cd / #切換到根目錄

  cd .. #切換到到上一級(jí)目錄

  cd ../.. #切換到上二級(jí)目錄

  cd ~ #切換到用戶目錄,比如是root用戶,則切換到/root下

  ----------------------------------------------------------------------

  rm file #刪除某一個(gè)文件

  rm -fr dir #刪除當(dāng)前目錄下叫dir的整個(gè)目錄

  ----------------------------------------------------------------------

  cp source target #將文件source 復(fù)制為 target

  cp /root/source . #將/root下的文件source復(fù)制到當(dāng)前目錄

  cp –av soure_dir target_dir #將整個(gè)目錄復(fù)制,兩目錄完全一樣

  cp –fr source_dir target_dir #將整個(gè)目錄復(fù)制,并且是以非鏈接方式復(fù)制,當(dāng)source目錄帶有符號(hào)鏈接時(shí),兩個(gè)目錄不相同

  ----------------------------------------------------------------------

  mv source target #將文件source更名為target

  ---------------------------------------------------------------------

  diff dir1 dir2 #比較目錄1與目錄2的文件列表是否相同,但不比較文件的實(shí)際內(nèi)容,不同則列出

  diff file1 file2 #比較文件1與文件2的內(nèi)容是否相同,如果是文本格式的文件,則將不相同的內(nèi)容顯示,如果是二進(jìn)制代碼則只表示兩個(gè)文件是不同的

  comm file1 file2 #比較文件,顯示兩個(gè)文件不相同的內(nèi)容

  ---------------------------------------------------------------------

  echo message #顯示一串字符

  echo "message message2" #顯示不連續(xù)的字符串

  cat:

  cat file #顯示文件的內(nèi)容,和DOS的type相同

  cat file | more #顯示文件的內(nèi)容并傳輸?shù)絤ore程序?qū)崿F(xiàn)分頁(yè)顯示,使用命令less file可實(shí)現(xiàn)相同的功能

  more #分頁(yè)命令,一般通過(guò)管道將內(nèi)容傳給它,如ls | more

  ----------------------------------------------------------------------

  export LC_ALL=zh_CN.GB2312 #將環(huán)境變量LC_ALL的值設(shè)為zh_CN.GB2312

  export DISPLAY=0:0 #通過(guò)該設(shè)置,當(dāng)前字符終端下運(yùn)行的圖形程序可直接運(yùn)行于Xserver

  date #顯示當(dāng)前日期時(shí)間

  date -s 20:30:30 #設(shè)置系統(tǒng)時(shí)間為20:30:30

  date -s 2002-3-5 #設(shè)置系統(tǒng)時(shí)期為2003-3-5

  clock –r #對(duì)系統(tǒng)Bios中讀取時(shí)間參數(shù)

  clock –w #將系統(tǒng)時(shí)間(如由date設(shè)置的時(shí)間)寫(xiě)入Bios

  ----------------------------------------------------------------------

  eject #umout掉CDROM并將光碟彈出,但cdrom不能處于busy的狀態(tài),否則無(wú)效

  ---------------------------------------------------------------------

  du #計(jì)算當(dāng)前目錄的容量

  du -sm /root #計(jì)算/root目錄的容量并以M為單位

  find -name /path file #在/path目錄下查找看是否有文件file

  grep -ir “chars” #在當(dāng)前目錄的所有文件查找字串chars,并忽略大小寫(xiě),-i為大小寫(xiě),-r為下一級(jí)目錄

  ----------------------------------------------------------------------

  vi file #編輯文件file

  vi 原基本使用及命令:

  輸入命令的方式為先按ctrl+c, 然后輸入:x(退出),:x!(退出并保存) :w(寫(xiě)入文件),:w!(不詢問(wèn)方式寫(xiě)入文件), :r file(讀文件file) ,:%s/oldchars/newchars/g(將所有字串oldchars換成newchars) 這一類的命令進(jìn)行操作

  ----------------------------------------------------------------------

  man ls #讀取關(guān)于ls命令的幫助

  man ls | grep color #讀取關(guān)于ls命令的幫助并通過(guò)grep程序在其中查找color字串

  ----------------------------------------------------------------------

  startx #運(yùn)行Linux圖形有環(huán)境

  Xfree86 #只運(yùn)行X圖形server

  ----------------------------------------------------------------------

  reboot #重新啟動(dòng)計(jì)算機(jī)

  halt #關(guān)閉計(jì)算機(jī)

  init 0 #關(guān)閉所有應(yīng)用程序和服務(wù),進(jìn)入純凈的操作環(huán)境

  init 1 #重新啟動(dòng)應(yīng)用及服務(wù)

  init 6 #重新啟動(dòng)計(jì)算機(jī)

  ----------------------------------------------------------------------

  擴(kuò)展命令

  ---------------------------------------------------------------------- ----------------------------------------------------------------------

  tar xfzv file.tgz #將文件file.tgz解壓

  tar xfzv file.tgz -C target_path #將文件file.tgz解壓到target_path目錄下

  tar cfzv file.tgz source_path #將文件source_path壓縮為file.tgz

  tar c directory > directory.tar #將目錄directory打包成不壓縮的directory.tar

  gzip directory.tar #將覆蓋原文件生成壓縮的 directory.tar.gz

  gunzip directory.tar.gz #覆蓋原文件解壓生成不壓縮的 directory.tar。

  tar xf directory.tar #可將不壓縮的文件解包

  ----------------------------------------------------------------------

  dmesg #顯示kernle啟動(dòng)及驅(qū)動(dòng)裝載信息

  uname #顯示操作系統(tǒng)的類型

  uname -R #顯示操作系統(tǒng)內(nèi)核的version

  ----------------------------------------------------------------------

  strings file 顯示file文件中的ASCII字符內(nèi)容

  ----------------------------------------------------------------------

  rpm -ihv program.rpm #安裝程序program并顯示安裝進(jìn)程

  rpm2targz program.rpm program.tgz #將rpm格式的文件轉(zhuǎn)換成tarball格式

  ----------------------------------------------------------------------

  su root #切換到超級(jí)用戶

  sulogin /dev/tty4 #在tty4即alt+F4終端等待用戶登陸或直接登陸開(kāi)啟一個(gè)shell

  chmod a+x file #將file文件設(shè)置為可執(zhí)行,腳本類文件一定要這樣設(shè)置一個(gè),否則得用bash file才能執(zhí)行

  chmod 666 file #將文件file設(shè)置為可讀寫(xiě)

  chown user /dir #將/dir目錄設(shè)置為user所有

  ----------------------------------------------------------------------

  mknod /dev/hda1 b 3 1 #創(chuàng)建塊設(shè)備hda1,主設(shè)備號(hào)為3,從設(shè)備號(hào)為1,即master硬盤(pán)的的第一個(gè)分區(qū)

  mknod /dev/tty1 c 4 1 #創(chuàng)建字符設(shè)備tty1,主設(shè)備號(hào)為4,眾設(shè)備號(hào)為1,即第一個(gè)tty終端

  ----------------------------------------------------------------------

  touch /tmp/running #在/tmp下創(chuàng)建一個(gè)臨時(shí)文件running,重新啟動(dòng)后消失

  ----------------------------------------------------------------------

  sleep 9 #系統(tǒng)掛起9秒鐘的時(shí)間

  ----------------------------------------------------------------------

  lpd stop 或 cups stop #停止打印服務(wù)程序

  lpd start 或 cups start #啟動(dòng)打印服務(wù)程序

  lpd restart 或 cups restart #重新啟動(dòng)打印服務(wù)程序

  lpr file.txt #打印文件file.txt

  ----------------------------------------------------------------------

  fdisk /dev/hda #就像執(zhí)行了dos的fdisk一樣

  cfdisk /dev/hda #比f(wàn)disk界面稍為友好些

  mount -t ext2 /dev/hda1 /mnt #把/dev/hda1裝載到 /mnt目錄

  df #顯示文件系統(tǒng)裝載的相關(guān)信息

  mount -t iso9660 /dev/cdrom /mnt/cdrom #將光驅(qū)加載到/mnt/cdrom目錄

  mount-t smb //192.168.1.5/sharedir /mnt -o username=tomlinux,password=tomlinux #將windows的的共享目錄加載到/mnt/smb目錄,用戶名及密碼均為tomlinux

  mount -t nfs 192.168.1.1:/sharedir /mnt #將nfs服務(wù)的共享目錄sharedir加載到/mnt/nfs目錄

  umount /mnt #將/mnt目錄卸載,/mnt目錄必須處于空閑狀態(tài)

  umount /dev/hda1 #將/dev/hda1設(shè)備卸載,設(shè)備必須處于空親狀態(tài)

  sync #將cache中的內(nèi)容與磁盤(pán)同步,在Linux中復(fù)制文件,一般要系統(tǒng)空閑才去寫(xiě)文件

  e2fsck /dev/hda1 #檢查/dev/hda1是否有文件系統(tǒng)錯(cuò)誤,提示修復(fù)方式

  e2fsck -p /dev/hda1#檢查/dev/hda1是否有錯(cuò)誤,如果有則自動(dòng)修復(fù)

  e2fsck -y /dev/hda1#檢查錯(cuò)誤,所有提問(wèn)均于yes方式執(zhí)行

  e2fsck -c /dev/hda1#檢查磁盤(pán)是否有壞區(qū)

  mkfs /dev/hda1 #格式化/dev/hda1為ext2格式

  mkfs.minix /dev/hda1 #格式化/dev/hda1為minix格式文件系統(tǒng)

  mfks /dev/hda9 #格工化/dev/hda9為L(zhǎng)inux swap格式

  swapon /dev/hda9 #將swap分區(qū)裝載當(dāng)作內(nèi)存來(lái)用

  swapoff /dev/hda9 #將swap分區(qū)卸載

  ----------------------------------------------------------------------

  lilo #運(yùn)行l(wèi)ilo程序,程序自動(dòng)查找/etc/lilo.conf并按該配置生效

  lilo -C /root/lilo.conf #lilo程序按/root/lilo.conf配置生效

  grub #在Linux shell狀態(tài)下運(yùn)行boot loader設(shè)置程序

  grub-install #安裝grub磁盤(pán)引導(dǎo)程序,成功后升級(jí)內(nèi)核無(wú)須像lilo一樣要重新啟動(dòng)系統(tǒng),只需修改/etc/grub.conf即可實(shí)現(xiàn)新引導(dǎo)配置

  rdev bzImage #顯示kernel的根分區(qū)信息

  rdev bzImage /dev/hda1 #將kernel的根分區(qū)設(shè)置為/dev/hda1,這在沒(méi)有l(wèi)ilo等引導(dǎo)程序的系統(tǒng)中非常重要.

  ----------------------------------------------------------------------

  dd if=/dev/fd0 of=floppy.fd #將軟盤(pán)的內(nèi)容復(fù)制成一個(gè)鏡像,功能與舊石器時(shí)代常用的hd-copy相同

  dd if=/dev/zero of=root.ram bs=1024,count=1024 #生成一個(gè)大小為1M的塊設(shè)備,可以把它當(dāng)作硬盤(pán)的一個(gè)分區(qū)來(lái)用

  mkfs root.ram #將塊設(shè)備格式化為ext2格式

  dd if=root.ram of=/dev/ram0 #將init.rd格式的root.ram的內(nèi)容導(dǎo)入內(nèi)存

  mount /dev/ram0 /mnt #ramdisk /dev/ram0裝載到/mnt 目錄

  ----------------------------------------------------------------------

  gcc hello.c #將hello.c編譯成名為a.out二進(jìn)制執(zhí)行文件

  gcc hello.c -o hello #將hello.c編譯成名為hello的二進(jìn)制執(zhí)行文件

  gcc -static -o hello hello.c #將hello.c編譯成名為hello的二進(jìn)制靜態(tài)執(zhí)行文件

  ldd program #顯示程序所使用了哪些庫(kù)

  objcopy -S program #將程序中的符號(hào)表及無(wú)用的調(diào)試信息去掉,可以小很多

  ----------------------------------------------------------------------

  strace netscape #跟蹤程序netscape的執(zhí)行,看調(diào)用的庫(kù),環(huán)境變量設(shè)置,配置文件,使用的設(shè)備,調(diào)用的其它應(yīng)用程序等,在strace下,程序干了什么東東一目了然。

  ps #顯示當(dāng)前系統(tǒng)進(jìn)程信息

  ps –ef #顯示系統(tǒng)所有進(jìn)程信息

  kill -9 500 #將進(jìn)程編號(hào)為500的程序干掉

  killall -9 netscape #將所有名字為netscape的程序殺死,kill不是萬(wàn)能的,對(duì)僵死的程序則無(wú)效。

  top #顯示系統(tǒng)進(jìn)程的活動(dòng)情況,按占CPU資源百分比來(lái)分

  free #顯示系統(tǒng)內(nèi)存及swap使用情況

  time program #在program程序結(jié)束后,將計(jì)算出program運(yùn)行所使用的時(shí)間

  ----------------------------------------------------------------------

  chroot . #將根目錄切換至當(dāng)前目錄,調(diào)試新系統(tǒng)時(shí)使用

  chroot /tomlinux #將根目錄切換至/tomlinux目錄

  chroot /tomlinux sbin/init #將根目錄切換至/tomlinux并執(zhí)行sbin/init

  adduser id #增加一個(gè)叫id的用戶

  userdel id #增除叫id的用戶

  userlist #顯示已登陸的用戶列表

  passwd id #修改用戶id的密碼

  passwd -d root #將root用戶的密碼刪除

  chown id /work #指定/work目錄為id用戶所擁有

  ----------------------------------------------------------------------

  ifconfig eth0 192.168.1.1 netmask 255.255.255.0 #設(shè)置網(wǎng)卡1的地址192.168.1.1,掩碼為255.255.255.0,不寫(xiě)netmask參數(shù)則默認(rèn)為255.255.255.0

  ifconfig eth0:1 192.168.1.2 #捆綁網(wǎng)卡1的第二個(gè)地址為192.168.1.2

  ifconfig eth0:x 192.168.1.x #捆綁網(wǎng)卡1的第二個(gè)地址為192.168.1.x

  ifconfig down eth1 #關(guān)閉第二塊網(wǎng)卡,使其停止工作

  hostname -F tomlinux.com #將主機(jī)名設(shè)置為tomlinux.com

  route #顯示當(dāng)前路由設(shè)置情況

  route add default gw 192.168.1.1 metric 1 #設(shè)置192.168.1.1為默認(rèn)的路由

  route del default #將默認(rèn)的路由刪除

  dhcp #啟動(dòng)dhcp服務(wù)

  dhclient #啟動(dòng)dhcp終端并自動(dòng)獲取IP地址

  ping 163.com #測(cè)試與163.com的連接

  ping 202.96.128.68 #測(cè)試與IP 202。96.128.68的連接

  ----------------------------------------------------------------------

  probe rtl8139 #檢查驅(qū)動(dòng)程序rtl8139.o是否正常工作

  lsmod #顯示已裝載的驅(qū)動(dòng)程序

  insmod rtl8139.o #裝載驅(qū)動(dòng)程序rtl8139.o

  insmod sb.o io=0x280 irq=7 dma=3 dma16=7 mpu_io=330 #裝載驅(qū)動(dòng)程序并設(shè)置相關(guān)的irq,dma參數(shù)

  rmmod rtl8139 #刪除名為rtl8139的驅(qū)動(dòng)模塊

  gpm -k #停止字符狀態(tài)下的mouse服務(wù)

  gpm -t ps2 #在字符狀態(tài)下以ps2類型啟動(dòng)mouse的服務(wù)

  ----------------------------------------------------------------------

  telnet 192.168.1.1 #登陸IP為192.168.1.1的telnet服務(wù)器

  telnet iserver.com #登陸域名為iserver.com的telnet服務(wù)器

  ftp 192.168.1.1 或 ftp iserver.com #登陸到ftp服務(wù)

  Linux系統(tǒng)命令整理:磁盤(pán)管理篇

  LINUX中增加硬盤(pán):

  1、裝上硬盤(pán)

  IDE和SCSI方法各有不同

  2、讓計(jì)算機(jī)認(rèn)出硬盤(pán)

  IDE和SCSI方法各有不同

  3、分區(qū)

  啟動(dòng)Linux,然后給新硬盤(pán)分區(qū): 以root身份,執(zhí)行 fdisk /dev/hdb.

  [主分區(qū),Linux native]

  4、格式化新硬盤(pán)

  mke2fs -cv /dev/hdb1

  [詳細(xì)的輸出和檢查壞塊]

  5、創(chuàng)建一個(gè)mount point。

  決定你想把它Mount在那里,并創(chuàng)建這個(gè)mount point。

  例如,你想把它作為/mnt/drive2,以root身份執(zhí)行:

  cd /mnt

  mkdir drive2

  6、測(cè)試

  以root身份,執(zhí)行: mount -t ext2 /dev/hdb1 /mnt/drive2. 如果沒(méi)有錯(cuò)誤信息,cd /mnt/drive2, 然后試著創(chuàng)建一個(gè)目錄,并創(chuàng)建幾個(gè)文件。如果可以,那就行了。繼續(xù)最后的幾步。

  7、修改 /etc/fstab.

  把下面的行加到/etc/fstab文件里:

  /dev/hdb1 /mnt/drive2 ext2 defaults 1 1

  8、重新啟動(dòng),看看新硬盤(pán)是否被自動(dòng)mounts上了。

  Yves Bellefeuille的Hard-Disk-Upgrade miniHOWTO文檔包含了一些上面的信息,但大都是針對(duì)另外一些不同的情況的。

  Posted by Peak at May 21, 2004 02:19 AM | Comments (0) | TrackBack (0)

  Linux系統(tǒng)命令(磁盤(pán)管理)

  sync

  symlinks(symbolic links)

  swapon

  swapoff

  sfdisk

  mpartition

  mkswap

  mkisofs(make iso file system)

  mkinitrd(make initial ramdisk images)

  mkfs(make file system)

  mkfs.minix

  mke2fs(make ext2 file system)

  mkdosfs(make Dos file system)

  mkbootdisk(make boot disk)

  mformat

  mbadblocks

  losetup(loop setup)

  hdparm(hard disk parameters)

  fsconf(file system configurator)

  fsck(file system check)

  fsck.minix(file system check-minix filesystem)

  fsck.ext2(file system check-second filesystem)

  fdisk

  ext2ed(ext2 file system editor)

  e2fsck(ext2 file system check)

  dd

  cfdisk

  badblocks

  ==================================

  sync

  功能說(shuō)明:將內(nèi)存緩沖區(qū)內(nèi)的數(shù)據(jù)寫(xiě)入磁盤(pán)。

  語(yǔ) 法:sync [--help][--version]

  補(bǔ)充說(shuō)明:在Linux系統(tǒng)中,當(dāng)數(shù)據(jù)需要存入磁盤(pán)時(shí),通常會(huì)先放到緩沖區(qū)內(nèi),等到適當(dāng)?shù)臅r(shí)刻再寫(xiě)入磁盤(pán),如此可提高系統(tǒng)的執(zhí)行效率。

  參 數(shù):

  --help 顯示幫助。

  --version 顯示版本信息。

  -----------------------------------------------

  symlinks(symbolic links)

  功能說(shuō)明:維護(hù)符號(hào)連接的工具程序。

  語(yǔ) 法:symlinks [-cdrstv][目錄](méi)

  補(bǔ)充說(shuō)明:symlinks可檢查目錄中的符號(hào)連接,并顯示符號(hào)連接類型。以下為symlinks可判斷的符號(hào)連接類型:

  absolute:符號(hào)連接使用了絕對(duì)路徑。

  dangling:原始文件已經(jīng)不存在。

  lengthy:符號(hào)連接的路徑中包含了多余的"../"。

  messy:符號(hào)連接的路徑中包含了多余的"/"。

  other_fs:原始文件位于其他文件系統(tǒng)中。

  relative:符號(hào)連接使用了相對(duì)路徑。

  參 數(shù):

  -c 將使用絕對(duì)路徑的符號(hào)連接轉(zhuǎn)換為相對(duì)路徑。

  -d 移除dangling類型的符號(hào)連接。

  -r 檢查目錄下所有子目錄中的符號(hào)連接。

  -s 檢查lengthy類型的符號(hào)連接。

  -t 與-c一并使用時(shí),會(huì)顯示如何將絕對(duì)路徑的符號(hào)連接轉(zhuǎn)換為相對(duì)路徑,但不會(huì)實(shí)際轉(zhuǎn)換。

  -v 顯示所有類型的符號(hào)連接。

  ----------------------------------------------

  swapon

  功能說(shuō)明:?jiǎn)?dòng)系統(tǒng)交換區(qū)(swap area)。

  語(yǔ) 法:swapon [-ahsV][-p <優(yōu)先順序>][設(shè)備]

  補(bǔ)充說(shuō)明:Linux系統(tǒng)的內(nèi)存管理必須使用交換區(qū)來(lái)建立虛擬內(nèi)存。

  -a 將/etc/fstab文件中所有設(shè)置為swap的設(shè)備,啟動(dòng)為交換區(qū)。

  -h 顯示幫助。

  -p<優(yōu)先順序> 指定交換區(qū)的優(yōu)先順序。

  -s 顯示交換區(qū)的使用狀況。

  -V 顯示版本信息。

  ----------------------------------------------

  swapoff

  功能說(shuō)明:關(guān)閉系統(tǒng)交換區(qū)(swap area)。

  語(yǔ) 法:swapoff [設(shè)備]

  補(bǔ)充說(shuō)明:swapoff實(shí)際上為swapon的符號(hào)連接,可用來(lái)關(guān)閉系統(tǒng)的交換區(qū)。

  sfdisk

  功能說(shuō)明:硬盤(pán)恩區(qū)工具程序。

  語(yǔ) 法:sfdisk [-?Tvx][-d <硬盤(pán)>][-g <硬盤(pán)>][-l <硬盤(pán)>][-s <分區(qū)>][-V <硬盤(pán)>]

  補(bǔ)充說(shuō)明:sfdisk為硬盤(pán)分區(qū)工具程序,可顯示分區(qū)的設(shè)置信息,并檢查分區(qū)是否正常。

  參 數(shù):

  -?或--help 顯示幫助。

  -d<硬盤(pán)> 顯示硬盤(pán)分區(qū)的設(shè)置。

  -g<硬盤(pán)>或--show-geometry<硬盤(pán)> 顯示硬盤(pán)的CHS參數(shù)。

  -l<硬盤(pán)> 顯示后硬盤(pán)分區(qū)的相關(guān)設(shè)置。

  -s<分區(qū)> 顯示分區(qū)的大小,單位為區(qū)塊。

  -T或--list-types 顯示所有sfdisk能辨識(shí)的文件系統(tǒng)ID。

  -v或--version 顯示版本信息。

  -V<硬盤(pán)>或--verify<硬盤(pán)> 檢查硬盤(pán)分區(qū)是否正常。

  -x或--show-extend 顯示擴(kuò)展分區(qū)中的邏輯分區(qū)。

  --------------------------------------------

  mpartition

  功能說(shuō)明:建立或刪除MS-DOS的分區(qū)。

  語(yǔ) 法:mpartition [-acdfIprv][-b <磁區(qū)數(shù)>][-h <磁頭數(shù)>][l <磁區(qū)數(shù)>][-s <磁區(qū)數(shù)>][-t <柱面數(shù)>][驅(qū)動(dòng)器代號(hào)]

  補(bǔ)充說(shuō)明:mpartition為mtools工具指令,可建立或刪除磁盤(pán)分區(qū)。

  參 數(shù):

  -a 將分區(qū)設(shè)置為可開(kāi)機(jī)分區(qū)。

  -b<磁區(qū)數(shù)> 建立分區(qū)時(shí),指定要從第幾個(gè)磁區(qū)開(kāi)始建立分區(qū)。

  -c 建立分區(qū)。

  -d 將分區(qū)設(shè)置為無(wú)法開(kāi)機(jī)的分區(qū)。

  -f 強(qiáng)制地修改分區(qū)而不管檢查時(shí)發(fā)生的錯(cuò)誤信息。

  -h<磁頭數(shù)> 建立分區(qū)時(shí),指定分區(qū)的磁頭數(shù)。

  -I 刪除全部的分區(qū)。

  -l<磁區(qū)數(shù)> 建立分區(qū)時(shí),指定分區(qū)的容量大小,單位為磁區(qū)數(shù)。

  -p 當(dāng)要重新建立分區(qū)時(shí),顯示命令列。

  -r 刪除分區(qū)。

  -s<磁區(qū)數(shù)> 建立分區(qū)時(shí),指定每個(gè)磁軌的磁區(qū)數(shù)。

  -t<柱面數(shù)> 建立分區(qū)時(shí),指定分區(qū)的柱面數(shù)。

  -v 與-p參數(shù)一并使用,若沒(méi)有同時(shí)下達(dá)修改分區(qū)的命令,則顯示目前分區(qū)的狀態(tài)。

  mkswap

  功能說(shuō)明:設(shè)置交換區(qū)(swap area)。

  語(yǔ) 法:mkswap [-cf][-v0][-v1][設(shè)備名稱或文件][交換區(qū)大小]

  補(bǔ)充說(shuō)明:mkswap可將磁盤(pán)分區(qū)或文件設(shè)為L(zhǎng)inux的交換區(qū)。

  參 數(shù):

  -c 建立交換區(qū)前,先檢查是否有損壞的區(qū)塊。

  -f 在SPARC電腦上建立交換區(qū)時(shí),要加上此參數(shù)。

  -v0 建立舊式交換區(qū),此為預(yù)設(shè)值。

  -v1 建立新式交換區(qū)。

  [交換區(qū)大小] 指定交換區(qū)的大小,單位為1024字節(jié)。

  ----------------------------------------------

  mkisofs(make iso file system)

  功能說(shuō)明:建立ISO 9660映像文件。

  語(yǔ) 法:mkisofs [-adDfhJlLNrRTvz][-print-size][-quiet][-A <應(yīng)用程序ID>][-abstract <摘要文件>][-b <開(kāi)機(jī)映像文件>][-biblio ][-c <開(kāi)機(jī)文件名稱>][-C <盤(pán)區(qū)編號(hào),磁區(qū)編號(hào)>][-copyright <版權(quán)信息文件>][-hide <目錄或文件名>][-hide-joliet <文件或目錄名>][-log-file <記錄文件>][-m <目錄或文件名>][-M <開(kāi)機(jī)映像文件>][-o <映像文件>][-p <數(shù)據(jù)處理人>][-P

  <光盤(pán)發(fā)行人>][-sysid <系統(tǒng)ID >][-V <光盤(pán)ID >][-volset <卷冊(cè)集ID>][-volset-size <光盤(pán)總數(shù)>][-volset-seqno <卷冊(cè)序號(hào)>][-x <目錄>][目錄或文件]

  補(bǔ)充說(shuō)明:mkisofs可將指定的目錄與文件做成ISO 9660格式的映像文件,以供刻錄光盤(pán)。

  參 數(shù):

  -a或--all mkisofs通常不處理備份文件。使用此參數(shù)可以把備份文件加到映像文件中。

  -A<應(yīng)用程序ID>或-appid<應(yīng)用程序ID> 指定光盤(pán)的應(yīng)用程序ID。

  -abstract<摘要文件> 指定摘要文件的文件名。

  -b<開(kāi)機(jī)映像文件>或-eltorito-boot<開(kāi)機(jī)映像文件> 指定在制作可開(kāi)機(jī)光盤(pán)時(shí)所需的開(kāi)機(jī)映像文件。

  -biblio 指定ISBN文件的文件名,ISBN文件位于光盤(pán)根目錄下,記錄光盤(pán)的ISBN。

  -c<開(kāi)機(jī)文件名稱> 制作可開(kāi)機(jī)光盤(pán)時(shí),mkisofs會(huì)將開(kāi)機(jī)映像文件中的全-eltorito-catalog<開(kāi)機(jī)文件名稱>全部?jī)?nèi)容作成一個(gè)文件。

  -C<盤(pán)區(qū)編號(hào),盤(pán)區(qū)編號(hào)> 將許多節(jié)區(qū)合成一個(gè)映像文件時(shí),必須使用此參數(shù)。

  -copyright<版權(quán)信息文件> 指定版權(quán)信息文件的文件名。

  -d或-omit-period 省略文件后的句號(hào)。

  -D或-disable-deep-relocation ISO 9660最多只能處理8層的目錄,超過(guò)8層的部分,RRIP會(huì)自動(dòng)將它們?cè)O(shè)置成ISO 9660兼容的格式。使用-D參數(shù)可關(guān)閉此功能。

  -f或-follow-links 忽略符號(hào)連接。

  -h 顯示幫助。

  -hide<目錄或文件名> 使指定的目錄或文件在ISO 9660或Rock RidgeExtensions的系統(tǒng)中隱藏。

  -hide-joliet<目錄或文件名> 使指定的目錄或文件在Joliet系統(tǒng)中隱藏。

  -J或-joliet 使用Joliet格式的目錄與文件名稱。

  -l或-full-iso9660-filenames 使用ISO 9660 32字符長(zhǎng)度的文件名。

  -L或-allow-leading-dots 允許文件名的第一個(gè)字符為句號(hào)。

  -log-file<記錄文件> 在執(zhí)行過(guò)程中若有錯(cuò)誤信息,預(yù)設(shè)會(huì)顯示在屏幕上。

  -m<目錄或文件名>或-exclude<目錄或文件名> 指定的目錄或文件名將不會(huì)房入映像文件中。

  -M<映像文件>或-prev-session<映像文件> 與指定的映像文件合并。

  -N或-omit-version-number 省略ISO 9660文件中的版本信息。

  -o<映像文件>或-output<映像文件> 指定映像文件的名稱。

  -p<數(shù)據(jù)處理人>或-preparer<數(shù)據(jù)處理人> 記錄光盤(pán)的數(shù)據(jù)處理人。

  -print-size 顯示預(yù)估的文件系統(tǒng)大小。

  -quiet 執(zhí)行時(shí)不顯示任何信息。

  -r或-rational-rock 使用Rock Ridge Extensions,并開(kāi)放全部文件的讀取權(quán)限。

  -R或-rock 使用Rock Ridge Extensions。

  -sysid<系統(tǒng)ID> 指定光盤(pán)的系統(tǒng)ID。

  -T或-translation-table 建立文件名的轉(zhuǎn)換表,適用于不支持Rock Ridge Extensions的系統(tǒng)上。

  -v或-verbose 執(zhí)行時(shí)顯示詳細(xì)的信息。

  -V<光盤(pán)ID>或-volid<光盤(pán)ID> 指定光盤(pán)的卷冊(cè)集ID。

  -volset-size<光盤(pán)總數(shù)> 指定卷冊(cè)集所包含的光盤(pán)張數(shù)。

  -volset-seqno<卷冊(cè)序號(hào)> 指定光盤(pán)片在卷冊(cè)集中的編號(hào)。

  -x<目錄> 指定的目錄將不會(huì)放入映像文件中。

  -z 建立通透性壓縮文件的SUSP記錄,此記錄目前只在Alpha機(jī)器上的Linux有效。

  -----------------------------------------

  mkinitrd(make initial ramdisk images)

  功能說(shuō)明:建立要載入ramdisk的映像文件。

  語(yǔ) 法:mkinitrd [-fv][--omit-scsi-modules][--version][--preload=<模塊名稱>][--with=<模塊名稱>][映像文件][Kernel 版本]

  補(bǔ)充說(shuō)明:mkinitrd可建立映像文件,以供Linux開(kāi)機(jī)時(shí)載入ramdisk。

  參 數(shù):

  -f 若指定的映像問(wèn)家名稱與現(xiàn)有文件重復(fù),則覆蓋現(xiàn)有的文件。

  -v 執(zhí)行時(shí)顯示詳細(xì)的信息。

  --omit-scsi-modules 不要載入SCSI模塊。

  --preload=<模塊名稱> 指定要載入的模塊。

  --with=<模塊名稱> 指定要載入的模塊。

  --version 顯示版本信息。

  mkfs(make file system)

  功能說(shuō)明:建立各種文件系統(tǒng)。

  語(yǔ) 法:mkfs [-vV][fs][-f <文件系統(tǒng)類型>][設(shè)備名稱][區(qū)塊數(shù)]

  補(bǔ)充說(shuō)明:mkfs本身并不執(zhí)行建立文件系統(tǒng)的工作,而是去調(diào)用相關(guān)的程序來(lái)執(zhí)行。

  參 數(shù):

  fs 指定建立文件系統(tǒng)時(shí)的參數(shù)。

  -t<文件系統(tǒng)類型> 指定要建立何種文件系統(tǒng)。

  -v 顯示版本信息與詳細(xì)的使用方法。

  -V 顯示簡(jiǎn)要的使用方法。

  --------------------------------------------

  mkfs.minix

  功能說(shuō)明:建立Minix文件系統(tǒng)。

  語(yǔ) 法:mkfs.minix [-cv][-i ][-l <文件>][-n <文件名長(zhǎng)度>][設(shè)備名稱][區(qū)塊數(shù)]

  補(bǔ)充說(shuō)明:mkfs.minix可建立Minix文件系統(tǒng)。

  參 數(shù):

  -c 檢查是否有損壞的區(qū)塊。

  -i 指定文件系統(tǒng)的inode總數(shù)。

  -l<文件> 從指定的文件中,讀取文件系統(tǒng)中損壞區(qū)塊的信息。

  -n<文件名長(zhǎng)度> 指定文件名稱長(zhǎng)度的上限。

  -v 建立第2版的Minix文件系統(tǒng)。

  ---------------------------------------

  mke2fs(make ext2 file system)

  功能說(shuō)明:建立ext2文件系統(tǒng)。

  語(yǔ) 法:mke2fs [-cFMqrSvV][-b <區(qū)塊大小>][-f <不連續(xù)區(qū)段大小>][-i <字節(jié)>][-N ][-l <文件>][-L <標(biāo)簽>][-m <百分比值>][-R=<區(qū)塊數(shù)>][ 設(shè)備名稱][區(qū)塊數(shù)]

  補(bǔ)充說(shuō)明:mke2fs可建立Linux的ext2文件系統(tǒng)。

  參 數(shù):

  -b<區(qū)塊大小> 指定區(qū)塊大小,單位為字節(jié)。

  -c 檢查是否有損壞的區(qū)塊。

  -f<不連續(xù)區(qū)段大小> 指定不連續(xù)區(qū)段的大小,單位為字節(jié)。

  -F 不管指定的設(shè)備為何,強(qiáng)制執(zhí)行mke2fs。

  -i<字節(jié)> 指定"字節(jié)/inode"的比例。

  -N 指定要建立的inode數(shù)目。

  -l<文件> 從指定的文件中,讀取文件西中損壞區(qū)塊的信息。

  -L<標(biāo)簽> 設(shè)置文件系統(tǒng)的標(biāo)簽名稱。

  -m<百分比值> 指定給管理員保留區(qū)塊的比例,預(yù)設(shè)為5%。

  -M 記錄最后一次掛入的目錄。

  -q 執(zhí)行時(shí)不顯示任何信息。

  -r 指定要建立的ext2文件系統(tǒng)版本。

  -R=<區(qū)塊數(shù)> 設(shè)置磁盤(pán)陣列參數(shù)。

  -S 僅寫(xiě)入superblock與group descriptors,而不更改inode able inode bitmap以及block bitmap。

  -v 執(zhí)行時(shí)顯示詳細(xì)信息。

  -V 顯示版本信息。

  --------------------------------------------

  mkdosfs(make Dos file system)

  功能說(shuō)明:建立MS-DOS文件系統(tǒng)。

  語(yǔ) 法:mkdosfs [-cv][-f ][-F ][-i <磁盤(pán)序號(hào)>][-l <文件名>][-m <信息文件>][-n <標(biāo)簽>][-r <根目錄項(xiàng)目數(shù)>][-s <磁區(qū)數(shù)>][設(shè)備名稱][區(qū)塊數(shù)]

  補(bǔ)充說(shuō)明:mkdosfs可在Linux下,將磁盤(pán)格式化為MS-DOS文件系統(tǒng)的格式。

  參 數(shù):

  -c 檢查是否有損壞的區(qū)塊。

  -f 指定FAT的數(shù)目,目前支持1與2兩種選項(xiàng)。

  -F 指定FAT記錄的單位為12或16位。

  -i<磁盤(pán)序號(hào)> 設(shè)置文件系統(tǒng)的磁盤(pán)序號(hào)。

  -l<文件名> 從指定的文件中,讀取文件系統(tǒng)中損壞區(qū)塊的信息。

  -m<信息文件> 若以次文件系統(tǒng)開(kāi)機(jī),而卻因操作系統(tǒng)沒(méi)有正常安裝,則會(huì)顯示選項(xiàng)中所指定的信息文件內(nèi)容。

  -n<標(biāo)簽> 設(shè)置文件系統(tǒng)的磁盤(pán)標(biāo)簽名稱。

  -r<根目錄項(xiàng)目數(shù)> 設(shè)置根目錄最多能記載項(xiàng)目數(shù)。

  -s<磁區(qū)數(shù)> 指定每個(gè)叢集所包含的磁區(qū)數(shù)。

  -v 執(zhí)行時(shí)顯示詳細(xì)的信息。

  ---------------------------------------------------

  mkbootdisk(make boot disk)

  功能說(shuō)明:建立目前系統(tǒng)的啟動(dòng)盤(pán)。

  語(yǔ) 法:mkbootdisk [--noprompt][--verbose][--version][--device <設(shè)備>][--mkinitrdargs <參數(shù)>][kernel 版本]

  補(bǔ)充說(shuō)明:mkbootdisk可建立目前系統(tǒng)的啟動(dòng)盤(pán)。

  參 數(shù):

  --device<設(shè)備> 指定設(shè)備。

  --mkinitrdargs<參數(shù)> 設(shè)置mkinitrd的參數(shù)。

  --noprompt 不會(huì)提示用戶插入磁盤(pán)。

  --verbose 執(zhí)行時(shí)顯示詳細(xì)的信息。

  --version 顯示版本信息。

  -----------------------------------------------------

  mformat

  功能說(shuō)明:對(duì)MS-DOS文件系統(tǒng)的磁盤(pán)進(jìn)行格式化。

  語(yǔ) 法:mformat [-1aCFIKX][-0 <數(shù)據(jù)傳輸率>][-2 <磁區(qū)數(shù)>][-A <數(shù)據(jù)傳輸率>][-B <開(kāi)機(jī)區(qū)文件>][-c <叢集大小>][-h <磁頭數(shù)>][-H <隱藏磁區(qū)數(shù)>][-l <磁盤(pán)標(biāo)簽>][-M <磁區(qū)大小>][-n <序號(hào)>][-r <根目錄大小>][-s <磁區(qū)數(shù)>][-S <磁區(qū)大小>][-t <柱面數(shù)>][驅(qū)動(dòng)器代號(hào)]

  補(bǔ)充說(shuō)明:mformat為mtools工具指令,模擬MS-DOS的format指令,可將指定的磁盤(pán)或硬盤(pán)分區(qū)格式化為MS-DOS文件系統(tǒng)。

  參 數(shù):

  -0<數(shù)據(jù)傳輸率> 指定第0磁軌的數(shù)據(jù)傳輸率。

  -1 不使用2M格式。

  -2<磁區(qū)數(shù)> 指定在第0磁軌的第0個(gè)磁頭的磁區(qū)數(shù),也就是所謂的2M格式。

  -a 指定產(chǎn)生Atari格式的序號(hào)。

  -A<數(shù)據(jù)傳輸率> 指定第0磁軌以外所有磁軌的數(shù)據(jù)傳輸率。

  -B<開(kāi)機(jī)區(qū)文件> 從指定的文件來(lái)建立開(kāi)機(jī)區(qū)。

  -c<叢集大小> 指定叢集大小,單位為磁區(qū)。

  -C 建立磁盤(pán)MS-DOS文件系統(tǒng)的映像文件。

  -F 以FAT32來(lái)格式化磁盤(pán)。

  -H<隱藏磁區(qū)數(shù)> 指定隱藏磁區(qū)的數(shù)目。

  -I 指定FAT32的frVersion編號(hào)。

  -k 盡可能地保留原有的開(kāi)機(jī)區(qū)。

  -l<磁盤(pán)標(biāo)簽> 指定磁盤(pán)標(biāo)簽名稱。

  -M<磁區(qū)大小> 指定MS-DOS文件系統(tǒng)所使用的磁區(qū)大小,預(yù)設(shè)應(yīng)該與硬體磁區(qū)大小相同,單位為字節(jié)。

  -n<序號(hào)> 指定序號(hào)。

  -r<根目錄大小> 指定根目錄的大小,單位為磁區(qū)。

  -s<磁區(qū)數(shù)> 指定每一磁軌所包含的磁區(qū)數(shù)目。

  -S<磁區(qū)大小> 指定硬件磁區(qū)大小。

  -t<柱面數(shù)> 指定柱面數(shù)目。

  -X 格式化XDF磁盤(pán)。

  mbadblocks

  功能說(shuō)明:檢查MS-DOS文件系統(tǒng)的磁盤(pán)是否有損壞的磁區(qū)。

  語(yǔ) 法:mbadblocks [驅(qū)動(dòng)器代號(hào)]

  補(bǔ)充說(shuō)明:mbadblocks為mtools工具指令,可用來(lái)掃描MS-DOS文件系統(tǒng)的磁盤(pán)驅(qū)動(dòng)器,并標(biāo)示出損壞的磁區(qū)。

  ----------------------------------------------------

  losetup(loop setup)

  功能說(shuō)明:設(shè)置循環(huán)設(shè)備。

  語(yǔ) 法:losetup [-d][-e <加密方式>][-o <平移數(shù)目>][循環(huán)設(shè)備代號(hào)][文件]

  補(bǔ)充說(shuō)明:循環(huán)設(shè)備可把文件虛擬成區(qū)塊設(shè)備,籍以模擬整個(gè)文件系統(tǒng),讓用戶得以將其視為硬盤(pán)驅(qū)動(dòng)器,光驅(qū)或軟驅(qū)等設(shè)備,并掛入當(dāng)作目錄來(lái)使用。

  參 數(shù):

  -d 卸除設(shè)備。

  -e<加密方式> 啟動(dòng)加密編碼。

  -o<平移數(shù)目> 設(shè)置數(shù)據(jù)平移的數(shù)目。

  ----------------------------

  hdparm(hard disk parameters)

  功能說(shuō)明:顯示與設(shè)定硬盤(pán)的參數(shù)。

  語(yǔ) 法:hdparm [-CfghiIqtTvyYZ][-a <快取分區(qū)>][-A <0或1>][-c ][-d <0或1>][-k <0或1>][-K <0或1>][-m <分區(qū)數(shù)>][-n <0或1>][-p ][-P <分區(qū)數(shù)>][-r <0或1>][-S <時(shí)間>][-u <0或1>][-W <0或1>][-X <傳輸模式>][設(shè)備]

  補(bǔ)充說(shuō)明:hdparm可檢測(cè),顯示與設(shè)定IDE或SCSI硬盤(pán)的參數(shù)。

  參 數(shù):

  -a<快取分區(qū)> 設(shè)定讀取文件時(shí),預(yù)先存入塊區(qū)的分區(qū)數(shù),若不加上<快取分區(qū)>選項(xiàng),則顯示目前的設(shè)定。

  -A<0或1> 啟動(dòng)或關(guān)閉讀取文件時(shí)的快取功能。

  -c 設(shè)定IDE32位I/O模式。

  -C 檢測(cè)IDE硬盤(pán)的電源管理模式。

  -d<0或1> 設(shè)定磁盤(pán)的DMA模式。

  -f 將內(nèi)存緩沖區(qū)的數(shù)據(jù)寫(xiě)入硬盤(pán),并清楚緩沖區(qū)。

  -g 顯示硬盤(pán)的磁軌,磁頭,磁區(qū)等參數(shù)。

  -h 顯示幫助。

  -i 顯示硬盤(pán)的硬件規(guī)格信息,這些信息是在開(kāi)機(jī)時(shí)由硬盤(pán)本身所提供。

  -I 直接讀取硬盤(pán)所提供的硬件規(guī)格信息。

  -k<0或1> 重設(shè)硬盤(pán)時(shí),保留-dmu參數(shù)的設(shè)定。

  -K<0或1> 重設(shè)硬盤(pán)時(shí),保留-APSWXZ參數(shù)的設(shè)定。

  -m<磁區(qū)數(shù)> 設(shè)定硬盤(pán)多重分區(qū)存取的分區(qū)數(shù)。

  -n<0或1> 忽略硬盤(pán)寫(xiě)入時(shí)所發(fā)生的錯(cuò)誤。

  -p 設(shè)定硬盤(pán)的PIO模式。

  -P<磁區(qū)數(shù)> 設(shè)定硬盤(pán)內(nèi)部快取的分區(qū)數(shù)。

  -q 在執(zhí)行后續(xù)的參數(shù)時(shí),不在屏幕上顯示任何信息。

  -r<0或1> 設(shè)定硬盤(pán)的讀寫(xiě)模式。

  -S<時(shí)間> 設(shè)定硬盤(pán)進(jìn)入省電模式前的等待時(shí)間。

  -t 評(píng)估硬盤(pán)的讀取效率。

  -T 平谷硬盤(pán)快取的讀取效率。

  -u<0或1> 在硬盤(pán)存取時(shí),允許其他中斷要求同時(shí)執(zhí)行。

  -v 顯示硬盤(pán)的相關(guān)設(shè)定。

  -W<0或1> 設(shè)定硬盤(pán)的寫(xiě)入快取。

  -X<傳輸模式> 設(shè)定硬盤(pán)的傳輸模式。

  -y 使IDE硬盤(pán)進(jìn)入省電模式。

  -Y 使IDE硬盤(pán)進(jìn)入睡眠模式。

  -Z 關(guān)閉某些Seagate硬盤(pán)的自動(dòng)省電功能。

  ---------------------------------------------

  fsconf(file system configurator)

  功能說(shuō)明:設(shè)置文件系統(tǒng)相關(guān)功能。

  語(yǔ) 法:fsconf [--check]

  補(bǔ)充說(shuō)明:fsconf是Red Hat Linux發(fā)行版專門(mén)用來(lái)調(diào)整Linux各項(xiàng)設(shè)置的程序。

  參 數(shù):

  --chedk 檢查特定文件的權(quán)限。

  -------------------------------------------------

  fsck(file system check)

  功能說(shuō)明:檢查文件系統(tǒng)并嘗試修復(fù)錯(cuò)誤。

  語(yǔ) 法:fsck [-aANPrRsTV][-t <文件系統(tǒng)類型>][文件系統(tǒng)...]

  補(bǔ)充說(shuō)明:當(dāng)文件系統(tǒng)發(fā)生錯(cuò)誤四化,可用fsck指令嘗試加以修復(fù)。

  參 數(shù):

  -a 自動(dòng)修復(fù)文件系統(tǒng),不詢問(wèn)任何問(wèn)題。

  -A 依照/etc/fstab配置文件的內(nèi)容,檢查文件內(nèi)所列的全部文件系統(tǒng)。

  -N 不執(zhí)行指令,僅列出實(shí)際執(zhí)行會(huì)進(jìn)行的動(dòng)作。

  -P 當(dāng)搭配"-A"參數(shù)使用時(shí),則會(huì)同時(shí)檢查所有的文件系統(tǒng)。

  -r 采用互動(dòng)模式,在執(zhí)行修復(fù)時(shí)詢問(wèn)問(wèn)題,讓用戶得以確認(rèn)并決定處理方式。

  -R 當(dāng)搭配"-A"參數(shù)使用時(shí),則會(huì)略過(guò)/目錄的文件系統(tǒng)不予檢查。

  -s 依序執(zhí)行檢查作業(yè),而非同時(shí)執(zhí)行。

  -t<文件系統(tǒng)類型> 指定要檢查的文件系統(tǒng)類型。

  -T 執(zhí)行fsck指令時(shí),不顯示標(biāo)題信息。

  -V 顯示指令執(zhí)行過(guò)程。

  ---------------------------------------------------

  fsck.minix(file system check-minix filesystem)

  功能說(shuō)明:檢查文件系統(tǒng)并嘗試修復(fù)錯(cuò)誤。

  語(yǔ) 法:fsck.minix [-aflmrsv][外圍設(shè)備代號(hào)]

  補(bǔ)充說(shuō)明:當(dāng)minix文件系統(tǒng)發(fā)生錯(cuò)誤時(shí),可用fsck.minix指令嘗試加以參考。

  參 數(shù):

  -a 自動(dòng)修復(fù)文件系統(tǒng),不詢問(wèn)任何問(wèn)題。

  -f 強(qiáng)制對(duì)該文件系統(tǒng)進(jìn)行完整檢查,縱然該文件系統(tǒng)在慨略檢查下沒(méi)有問(wèn)題。

  -l 列出所有文件名稱。

  -m 使用類似MINIX操作系統(tǒng)的警告信息。

  -r 采用互動(dòng)模式,在執(zhí)行修復(fù)時(shí)詢問(wèn)問(wèn)題,讓用戶得以確認(rèn)并決定處理方式。

  -s 顯示該分區(qū)第一個(gè)磁區(qū)的相關(guān)信息。

  -v 顯示指令執(zhí)行過(guò)程。

  ------------------------------------------------

  fsck.ext2(file system check-second filesystem)

  功能說(shuō)明:檢查文件系統(tǒng)并嘗試修復(fù)錯(cuò)誤。

  語(yǔ) 法:fsck.ext2 [-acdfFnprsStvVy][-b <分區(qū)第一個(gè)磁區(qū)地址>][-B <區(qū)塊大小>][-C <反敘述器>][-I ][-l/L <損壞區(qū)塊文件>][-P <處理inode大小>][外圍設(shè)備代號(hào)]

  補(bǔ)充說(shuō)明:當(dāng)ext2文件系統(tǒng)發(fā)生錯(cuò)誤時(shí),可用fsck.ext2指令嘗試加以修復(fù)。

  參 數(shù):

  -a 自動(dòng)修復(fù)文件系統(tǒng),不詢問(wèn)任何問(wèn)題。

  -b<分區(qū)第一個(gè)磁區(qū)地址> 指定分區(qū)的第一個(gè)磁區(qū)的起始地址,也就是Super Block。

  -B<區(qū)塊大小> 設(shè)置該分區(qū)每個(gè)區(qū)塊的大小。

  -c 檢查指定的文件系統(tǒng)內(nèi),是否存在有損壞的區(qū)塊。

  -C<反敘述器> 指定反敘述器,fsck.ext2指令會(huì)把全部的執(zhí)行過(guò)程,都交由其逆向敘述,便于排錯(cuò)或監(jiān)控程序執(zhí)行的情形。

  -d 詳細(xì)顯示指令執(zhí)行過(guò)程,便于排錯(cuò)或分析程序執(zhí)行的情形。

  -f 強(qiáng)制對(duì)該文件系統(tǒng)進(jìn)行完整檢查,縱然該文件系統(tǒng)在慨略檢查下沒(méi)有問(wèn)題。

  -F 檢查文件系統(tǒng)之前,先清理該保存設(shè)備塊區(qū)內(nèi)的數(shù)據(jù)。

  -I 設(shè)置欲檢查的文件系統(tǒng),其inode緩沖區(qū)的區(qū)塊數(shù)目。

  -l<損壞區(qū)塊文件> 把文件中所列出的區(qū)塊,視為損壞區(qū)塊并將其標(biāo)示出來(lái),避免應(yīng)用程序使用該區(qū)塊。

  -L<損壞區(qū)塊文件> 此參數(shù)的效果和指定"-l"參數(shù)類似,但在參考損壞區(qū)塊文件標(biāo)示損壞區(qū)塊之前,會(huì)先將原來(lái)標(biāo)示成損壞區(qū)塊者統(tǒng)統(tǒng)清楚,即全部重新設(shè)置,而非僅是加入新的損壞區(qū)塊標(biāo)示。

  -n 把欲檢查的文件系統(tǒng)設(shè)成只讀,并關(guān)閉互動(dòng)模式,否決所有詢問(wèn)的問(wèn)題。

  -p 此參數(shù)的效果和指定"-a"參數(shù)相同。

  -P<處理inode大小> 設(shè)置fsck.ext2指令所能處理的inode大小為多少。

  -r 此參數(shù)將忽略不予處理,僅負(fù)責(zé)解決兼容性的問(wèn)題。

  -s 檢查文件系統(tǒng)時(shí),交換每對(duì)字節(jié)的內(nèi)容。

  -S 此參數(shù)的效果和指定"-s"參數(shù)類似,但不論該文件系統(tǒng)是否已是標(biāo)準(zhǔn)位順序,一律交換每對(duì)字節(jié)的內(nèi)容。

  -t 顯示fsck.ext2指令的時(shí)序信息。

  -v 詳細(xì)顯示指令執(zhí)行過(guò)程。

  -V 顯示版本信息。

  -y 關(guān)閉互動(dòng)模式,且同意所有詢問(wèn)的問(wèn)題。

  ------------------------------------------------------

  fdisk

  功能說(shuō)明:磁盤(pán)分區(qū)。

  語(yǔ) 法:fdisk [-b <分區(qū)大小>][-uv][外圍設(shè)備代號(hào)] 或 fdisk [-l][-b <分區(qū)大小>][-uv][外圍設(shè)備代號(hào)...] 或 fdisk [-s <分區(qū)編號(hào)>]

  補(bǔ)充說(shuō)明:fdisk是用來(lái)磁盤(pán)分區(qū)的程序,它采用傳統(tǒng)的問(wèn)答式界面,而非類似DOS fdisk的cfdisk互動(dòng)式操作界面,因此在使用上較為不便,但功能卻絲毫不打折扣。

  參 數(shù):

  -b<分區(qū)大小> 指定每個(gè)分區(qū)的大小。

  -l 列出指定的外圍設(shè)備的分區(qū)表狀況。

  -s<分區(qū)編號(hào)> 將指定的分區(qū)大小輸出到標(biāo)準(zhǔn)輸出上,單位為區(qū)塊。

  -u 搭配"-l"參數(shù)列表,會(huì)用分區(qū)數(shù)目取代柱面數(shù)目,來(lái)表示每個(gè)分區(qū)的起始地址。

  -v 顯示版本信息。

  -------------------------------------------------

  ext2ed(ext2 file system editor)

  功能說(shuō)明:ext2文件系統(tǒng)編輯程序。

  語(yǔ) 法:ext2ed

  補(bǔ)充說(shuō)明:ext2ed可直接處理硬盤(pán)分區(qū)上的數(shù)據(jù),這指令只有Red Hat Linux才提供。

  參 數(shù):

  一般指令

  setdevice[設(shè)備名稱] 指定要處理的設(shè)備。

  disablewrite 將ext2ed設(shè)為只讀的狀態(tài)。

  enablewrite 將ext2ed設(shè)為可讀寫(xiě)的狀態(tài)。

  help[指令] 顯示個(gè)別指令的幫助。

  next 移至下一個(gè)單位,單位會(huì)依目前所在的模式而異。

  prev 移至前一個(gè)單位,單位會(huì)依目前所在的模式而異。

  pgup 移至下一頁(yè)。

  pgdn 移至上一頁(yè)。

  set 修改目前的數(shù)據(jù),參數(shù)會(huì)依目前所在的模式而異。

  writedata 在執(zhí)行此指令之后,才會(huì)實(shí)際修改分區(qū)中的數(shù)據(jù)。

  ext2進(jìn)入3種模式的指令:

  super 進(jìn)入main superblock,即Superblock模式。

  group<編號(hào)> 進(jìn)入指定的group,即Group模式。

  cd<目錄或文件> 在inode模式下,進(jìn)入指定的目錄或文件,即Inode模式。

  Superblock模式:

  gocopy<備份編號(hào)> 進(jìn)入指定的superblock備份。

  setactivecopy 將目前所在的superblock,復(fù)制到main superblock。

  Group模式:

  blockbitmap 顯示目前groupo的區(qū)塊圖。

  inode 進(jìn)入目前group的第一個(gè)inode。

  inodebitmap 顯示目前group的inode二進(jìn)制碼。

  Inode模式:

  dir 進(jìn)入目錄模式。

  file 進(jìn)入文件模式。

  ------------------------------------------------------

  e2fsck(ext2 file system check)

  功能說(shuō)明:檢查ext2文件系統(tǒng)的正確性。

  語(yǔ) 法:e2fsck [-acCdfFnprsStvVy][-b ][-B <區(qū)塊大小>][-l <文件>][-L <文件>][設(shè)備名稱]

  補(bǔ)充說(shuō)明:e2fsck執(zhí)行后的傳回值及代表意義如下。

  0 沒(méi)有任何錯(cuò)誤發(fā)生。

  1 文件系統(tǒng)發(fā)生錯(cuò)誤,并且已經(jīng)修正。

  2 文件系統(tǒng)發(fā)生錯(cuò)誤,并且已經(jīng)修正。

  4 文件系統(tǒng)發(fā)生錯(cuò)誤,但沒(méi)有修正。

  8 運(yùn)作時(shí)發(fā)生錯(cuò)誤。

  16 使用的語(yǔ)法發(fā)生錯(cuò)誤。

  128 共享的函數(shù)庫(kù)發(fā)生錯(cuò)誤。

  參 數(shù):

  -a 不詢問(wèn)使用者意見(jiàn),便自動(dòng)修復(fù)文件系統(tǒng)。

  -b 指定superblock,而不使用預(yù)設(shè)的superblock。

  -B<區(qū)塊大小> 指定區(qū)塊的大小,單位為字節(jié)。

  -c 一并執(zhí)行badblocks,以標(biāo)示損壞的區(qū)塊。

  -C 將檢查過(guò)程的信息完整記錄在file descriptor中,使得整個(gè)檢查過(guò)程都能完整監(jiān)控。

  -d 顯示排錯(cuò)信息。

  -f 即使文件系統(tǒng)沒(méi)有錯(cuò)誤跡象,仍強(qiáng)制地檢查正確性。

  -F 執(zhí)行前先清除設(shè)備的緩沖區(qū)。

  -l<文件> 將文件中指定的區(qū)塊加到損壞區(qū)塊列表。

  -L<文件> 先清除損壞區(qū)塊列表,再將文件中指定的區(qū)塊加到損壞區(qū)塊列表。因此損壞區(qū)塊列表的區(qū)塊跟文件中指定的區(qū)塊是一樣的。

  -n 以只讀模式開(kāi)啟文件系統(tǒng),并采取非互動(dòng)方式執(zhí)行,所有的問(wèn)題對(duì)話均設(shè)置以"no"回答。

  -p 不詢問(wèn)使用者意見(jiàn),便自動(dòng)修復(fù)文件系統(tǒng)。

  -r 此參數(shù)只為了兼容性而存在,并無(wú)實(shí)際作用。

  -s 如果文件系統(tǒng)的字節(jié)順序不適當(dāng),就交換字節(jié)順序,否則不做任何動(dòng)作。

  -S 不管文件系統(tǒng)的字節(jié)順序,一律交換字節(jié)順序。

  -t 顯示時(shí)間信息。

  -v 執(zhí)行時(shí)顯示詳細(xì)的信息。

  -V 顯示版本信息。

  -y 采取非互動(dòng)方式執(zhí)行,所有的問(wèn)題均設(shè)置以"yes"回答。

  ----------------------------------------------

  dd

  功能說(shuō)明:讀取,轉(zhuǎn)換并輸出數(shù)據(jù)。

  語(yǔ) 法:dd [bs=<字節(jié)數(shù)>][cbs=<字節(jié)數(shù)>][conv=<關(guān)鍵字>][count=<區(qū)塊數(shù)>] [ibs=<字節(jié)數(shù)>][if=<文件>][obs=<字節(jié)數(shù)>][of=<文件>][seek= <區(qū)塊數(shù)>][skip=<區(qū)塊數(shù)>][--help][--version]

  補(bǔ)充說(shuō)明:dd可從標(biāo)準(zhǔn)輸入或文件讀取數(shù)據(jù),依指定的格式來(lái)轉(zhuǎn)換數(shù)據(jù),再輸出到文件,設(shè)備或標(biāo)準(zhǔn)輸出。

  參 數(shù):

  bs=<字節(jié)數(shù)> 將ibs( 輸入)與obs(輸出)設(shè)成指定的字節(jié)數(shù)。

  cbs=<字節(jié)數(shù)> 轉(zhuǎn)換時(shí),每次只轉(zhuǎn)換指定的字節(jié)數(shù)。

  conv=<關(guān)鍵字> 指定文件轉(zhuǎn)換的方式。

  count=<區(qū)塊數(shù)> 僅讀取指定的區(qū)塊數(shù)。

  ibs=<字節(jié)數(shù)> 每次讀取的字節(jié)數(shù)。

  if=<文件> 從文件讀取。

  obs=<字節(jié)數(shù)> 每次輸出的字節(jié)數(shù)。

  of=<文件> 輸出到文件。

  seek=<區(qū)塊數(shù)> 一開(kāi)始輸出時(shí),跳過(guò)指定的區(qū)塊數(shù)。

  skip=<區(qū)塊數(shù)> 一開(kāi)始讀取時(shí),跳過(guò)指定的區(qū)塊數(shù)。

  --help 幫助。

  --version 顯示版本信息。

  -------------------------------------------

  cfdisk

  功能說(shuō)明:磁盤(pán)分區(qū)。

  語(yǔ) 法:cfdisk [-avz][-c <柱面數(shù)目>-h <磁頭數(shù)目>-s <盤(pán)區(qū)數(shù)目>][-P ][外圍設(shè)備代號(hào)]

  補(bǔ)充說(shuō)明:cfdisk是用來(lái)磁盤(pán)分區(qū)的程序,它十分類似DOS的fdisk,具有互動(dòng)式操作界面而非傳統(tǒng)fdisk的問(wèn)答式界面,您可以輕易地利用方向鍵來(lái)操控分區(qū)操作。

  參 數(shù):

  -a 在程序里不用反白代表選取,而以箭頭表示。

  -c<柱面數(shù)目> 忽略BIOS的數(shù)值,直接指定磁盤(pán)的柱面數(shù)目。

  -h<磁頭數(shù)目> 忽略BIOS的數(shù)值,直接指定磁盤(pán)的磁頭數(shù)目。

  -P 顯示分區(qū)表的內(nèi)容,附加參數(shù)"r"會(huì)顯示整個(gè)分區(qū)表的詳細(xì)資料,附加參數(shù)"s"會(huì)依照磁區(qū)的順序顯示相關(guān)信息,附加參數(shù)"t"則會(huì)以磁頭,磁區(qū),柱面的方式來(lái)顯示資料。

  -s<磁區(qū)數(shù)目> 忽略BIOS的數(shù)值,直接指定磁盤(pán)的磁區(qū)數(shù)目。

  -v 顯示版本信息。

  -z 不讀取現(xiàn)有的分區(qū),直接當(dāng)作沒(méi)有分區(qū)的新磁盤(pán)使用。

  -------------------------------------------

  badblocks

  功能說(shuō)明:檢查磁盤(pán)裝置中損壞的區(qū)塊。

  語(yǔ) 法:badblocks [-svw][-b <區(qū)塊大小>][-o <輸出文件>][磁盤(pán)裝置][磁盤(pán)區(qū)塊數(shù)][啟始區(qū)塊]

  補(bǔ)充說(shuō)明:執(zhí)行指令時(shí)須指定所要檢查的磁盤(pán)裝置,及此裝置的磁盤(pán)區(qū)塊數(shù)。

  參 數(shù):

  -b<區(qū)塊大小> 指定磁盤(pán)的區(qū)塊大小,單位為字節(jié)。

  -o<輸出文件> 將檢查的結(jié)果寫(xiě)入指定的輸出文件。

  -s 在檢查時(shí)顯示進(jìn)度。

  -v 執(zhí)行時(shí)顯示詳細(xì)的信息。

  -w 在檢查時(shí),執(zhí)行寫(xiě)入測(cè)試。

  [磁盤(pán)裝置] 指定要檢查的磁盤(pán)裝置。

  [磁盤(pán)區(qū)塊數(shù)] 指定磁盤(pán)裝置的區(qū)塊總數(shù)。

  [啟始區(qū)塊] 指定要從哪個(gè)區(qū)塊開(kāi)始檢查。

  Linux 的常用網(wǎng)絡(luò)命令

  計(jì)算機(jī)網(wǎng)絡(luò)的主要優(yōu)點(diǎn)是能夠?qū)崿F(xiàn)資源和信息的共享,并且用戶可以遠(yuǎn)程訪問(wèn)信息。Linux提供了一組強(qiáng)有力的網(wǎng)絡(luò)命令來(lái)為用戶服務(wù),這些工具能夠幫助用戶登錄到遠(yuǎn)程計(jì)算機(jī)上、傳輸文件和執(zhí)行遠(yuǎn)程命令等。

  本章介紹下列幾個(gè)常用的有關(guān)網(wǎng)絡(luò)操作的命令:

  ftp 傳輸文件

  telnet 登錄到遠(yuǎn)程計(jì)算機(jī)上

  r - 使用各種遠(yuǎn)程命令

  netstat 查看網(wǎng)絡(luò)的狀況

  nslookup 查詢域名和IP地址的對(duì)應(yīng)

  finger 查詢某個(gè)使用者的信息

  ping 查詢某個(gè)機(jī)器是否在工作

  使用ftp命令進(jìn)行遠(yuǎn)程文件傳輸

  ftp命令是標(biāo)準(zhǔn)的文件傳輸協(xié)議的用戶接口。ftp是在TCP/IP網(wǎng)絡(luò)上的計(jì)算機(jī)之間傳輸文件的簡(jiǎn)單有效的方法。它允許用戶傳輸ASCII文件和二進(jìn)制文件。

  在ftp會(huì)話過(guò)程中,用戶可以通過(guò)使用ftp客戶程序連接到另一臺(tái)計(jì)算機(jī)上。從此,用戶可以在目錄中上下移動(dòng)、列出目錄內(nèi)容、把文件從遠(yuǎn)程機(jī)拷貝到本地機(jī)上、把文件從本地機(jī)傳輸?shù)竭h(yuǎn)程系統(tǒng)中。

  需要注意的是,如果用戶沒(méi)有那個(gè)文件的存取權(quán)限,就不能從遠(yuǎn)程系統(tǒng)中獲得文件或向遠(yuǎn)程系統(tǒng)傳輸文件。 為了使用ftp來(lái)傳輸文件,用戶必須知道遠(yuǎn)程計(jì)算機(jī)上的合法用戶名和口令。這個(gè)用戶名/口令的組合用來(lái)確認(rèn)ftp

  會(huì)話,并用來(lái)確定用戶對(duì)要傳輸?shù)奈募梢赃M(jìn)行什么樣的訪問(wèn)。另外,用戶顯然需要知道對(duì)其進(jìn)行ftp 會(huì)話的計(jì)算機(jī)的名字或IP地址。

  Ftp命令的功能是在本地機(jī)和遠(yuǎn)程機(jī)之間傳送文件。該命令的一般格式如下:

  $ ftp 主機(jī)名/IP

  其中“主機(jī)名/IP”是所要連接的遠(yuǎn)程機(jī)的主機(jī)名或IP地址。在命令行中,主機(jī)名屬于選項(xiàng),如果指定主機(jī)名,ftp將試圖與遠(yuǎn)程機(jī)的ftp服務(wù)程序進(jìn)行連接;如果沒(méi)有指定主機(jī)名,ftp將給出提示符,等待用戶輸入命令:

  $ ftp ftp > 此時(shí)在ftp>提示符后面輸入open命令加主機(jī)名或IP地址,將試圖連接指定的主機(jī)。 不管使用哪一種方法,如果連接成功,需要在遠(yuǎn)程機(jī)上登錄。用戶如果在遠(yuǎn)程機(jī)上有帳號(hào),就可以通過(guò)ftp使用這一帳號(hào)并需要提供口令。

  在遠(yuǎn)程機(jī)上的用戶帳號(hào)的讀寫(xiě)權(quán)限決定該用戶在遠(yuǎn)程機(jī)上能下載什么文件和將上載文件放到哪個(gè)目錄中。如果沒(méi)有遠(yuǎn)程機(jī)的專用登錄帳號(hào),許多ftp站點(diǎn)設(shè)有可以使用的特殊帳號(hào)。這個(gè)帳號(hào)的登錄名為anonymous(也稱為匿名ftp),當(dāng)使用這一帳號(hào)時(shí),要求輸入email地址作為口令。

  如果遠(yuǎn)程系統(tǒng)提供匿名ftp服務(wù),用戶使用這項(xiàng)服務(wù)可以登錄到特殊的,供公開(kāi)使用的目錄。

  一般專門(mén)提供兩個(gè)目錄:pub目錄和incoming目錄。pub目錄包含該站點(diǎn)供公眾使用的所有文件,incoming目錄存放上載到該站點(diǎn)的文件。

  一旦用戶使用ftp在遠(yuǎn)程站點(diǎn)上登錄成功,將得到“ftp>”提示符。現(xiàn)在可以自由使用ftp提供的命令,可以用 help命令取得可供使用的命令清單,也可以在

  help命令后面指定具體的命令名稱,獲得這條命令的說(shuō)明。

  最常用的命令有:

  ls 列出遠(yuǎn)程機(jī)的當(dāng)前目錄

  cd 在遠(yuǎn)程機(jī)上改變工作目錄

  lcd 在本地機(jī)上改變工作目錄

  ascii 設(shè)置文件傳輸方式為ASCII模式

  binary 設(shè)置文件傳輸方式為二進(jìn)制模式

  close終止當(dāng)前的ftp會(huì)話

  hash 每次傳輸完數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù)后就顯示一個(gè)#號(hào)

  get(mget) 從遠(yuǎn)程機(jī)傳送指定文件到本地機(jī)

  put(mput) 從本地機(jī)傳送指定文件到遠(yuǎn)程機(jī)

  open 連接遠(yuǎn)程ftp站點(diǎn)

  quit斷開(kāi)與遠(yuǎn)程機(jī)的連接并退出ftp

  ? 顯示本地幫助信息

  ! 轉(zhuǎn)到Shell中

  下面簡(jiǎn)單將ftp常用命令作一簡(jiǎn)介。

  啟動(dòng)ftp會(huì)話 open命令用于打開(kāi)一個(gè)與遠(yuǎn)程主機(jī)的會(huì)話。該命令的一般格式是: open 主機(jī)名/IP 如果在ftp 會(huì)話期間要與一個(gè)以上的站點(diǎn)連接,通常只用不帶參數(shù)的ftp命令。如果在會(huì)話期間只想與一臺(tái)計(jì)算機(jī)連接,那么在命令行上指定遠(yuǎn)程主機(jī)名或IP地址作為 ftp命令的參數(shù)。

  終止ftp會(huì)話 close、disconnect、quit和bye命令用于終止與遠(yuǎn)程機(jī)的會(huì)話。close和disronnect命令關(guān)閉與遠(yuǎn)程機(jī)的連接,但是使用戶留在本地計(jì)算機(jī)的ftp程序中。quit和bye命令都關(guān)閉用戶與遠(yuǎn)程機(jī)的連接,然后退出用戶機(jī)上的ftp

  程序。 改變目錄 “cd [目錄](méi)”命令用于在ftp會(huì)話期間改變遠(yuǎn)程機(jī)上的目錄,lcd命令改變本地目錄,使用戶能指定查找或放置本地文件的位置。

  遠(yuǎn)程目錄列表 ls命令列出遠(yuǎn)程目錄的內(nèi)容,就像使用一個(gè)交互shell中的ls命令一樣。ls命令的一般格式是: ls [目錄](méi) [本地文件]

  如果指定了目錄作為參數(shù),那么ls就列出該目錄的內(nèi)容。如果給出一個(gè)本地文件的名字,那么這個(gè)目錄列表被放入本地機(jī)上您指定的這個(gè)文件中。 從遠(yuǎn)程系統(tǒng)獲取文件

  get和mget命令用于從遠(yuǎn)程機(jī)上獲取文件。get命令的一般格式為: get 文件名 您還可以給出本地文件名,這個(gè)文件名是這個(gè)要獲取的文件在您的本地機(jī)上創(chuàng)建時(shí)的文件名。如果您不給出一個(gè)本地文件名,那么就使用遠(yuǎn)程文件原來(lái)的名字。

  mget命令一次獲取多個(gè)遠(yuǎn)程文件。mget命令的一般格式為: mget 文件名列表 使用用空格分隔的或帶通配符的文件名列表來(lái)指定要獲取的文件,對(duì)其中的每個(gè)文件都要求用戶確認(rèn)是否傳送。

  向遠(yuǎn)程系統(tǒng)發(fā)送文件 put和mput命令用于向遠(yuǎn)程機(jī)發(fā)送文件。Put命令的一般格式為: put 文件名 mput命令一次發(fā)送多個(gè)本地文件,mput命令的一般格式為:

  mput 文件名列表 使用用空格分隔的或帶通配符的文件名列表來(lái)指定要發(fā)送的文件。對(duì)其中的每個(gè)文件都要求用戶確認(rèn)是否發(fā)送。 改變文件傳輸模式

  默認(rèn)情況下,ftp按ASCII模式傳輸文件,用戶也可以指定其他模式。ascii和brinary命令的功能是設(shè)置傳輸?shù)哪J健S肁SCII模式傳輸文件對(duì)純文本是非常好的,但為避免對(duì)二進(jìn)制文件的破壞,用戶可以以二進(jìn)制模式傳輸文件。

  檢查傳輸狀態(tài) 傳輸大型文件時(shí),可能會(huì)發(fā)現(xiàn)讓ftp提供關(guān)于傳輸情況的反饋信息是非常有用的。hash命令使ftp在每次傳輸完數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù)后,就在屏幕上打印一個(gè)#字符。本命令在發(fā)送和接收文件時(shí)都可以使用。

  ftp中的本地命令 當(dāng)您使用ftp時(shí),字符“!”用于向本地機(jī)上的命令shell傳送一個(gè)命令。如果用戶處在ftp會(huì)話中,需要shell做某些事,就很有用。例如用戶要建立一個(gè)目錄來(lái)保存接收到的文件。如果輸入!mkdir

  new_dir,那么Linux就在用戶當(dāng)前的本地目錄中創(chuàng)建一個(gè)名為new_dir 的目錄。

  從遠(yuǎn)程機(jī)grunthos下載二進(jìn)制數(shù)據(jù)文件的典型對(duì)話過(guò)程如下:

  $ ftp grunthos Connected to grunthos 220 grunthos ftp server Name (grunthos:pc):

  anonymous 33l Guest login ok, send your complete e-mail address as password.

  Password: 230 Guest 1ogin ok, access restrictions apply. Remote system

  type is UNIX. ftp > cd pub 250 CWD command successful. ftp > ls

  200 PORT command successful. l50 opening ASCII mode data connection for

  /bin/1s. total ll4 rog1 rog2 226 Transfer comp1ete . ftp > binary 200

  type set to I. ftp > hash Hash mark printing on (1024 bytes/hash mark).

  ftp > get rog1 200 PORT command successfu1. 150 opening BINARY mode

  data connection for rogl (l4684 bytes). # # # # # # # # # # # # # 226

  Transfer complete. 14684 bytes received in 0.0473 secs (3e + 02 Kbytes/sec)

  ftp > quit 22l Goodbye.

  使用telnet命令訪問(wèn)遠(yuǎn)程計(jì)算機(jī)

  用戶使用telnet命令進(jìn)行遠(yuǎn)程登錄。該命令允許用戶使用telnet協(xié)議在遠(yuǎn)程計(jì)算機(jī)之間進(jìn)行通信,用戶可以通過(guò)網(wǎng)絡(luò)在遠(yuǎn)程計(jì)算機(jī)上登錄,就像登錄到本地機(jī)上執(zhí)行命令一樣。

  為了通過(guò)telnet登錄到遠(yuǎn)程計(jì)算機(jī)上,必須知道遠(yuǎn)程機(jī)上的合法用戶名和口令。雖然有些系統(tǒng)確實(shí)為遠(yuǎn)程用戶提供登錄功能,但出于對(duì)安全的考慮,要限制來(lái)賓的操作權(quán)限,因此,這種情況下能使用的功能是很少的。當(dāng)允許遠(yuǎn)程用戶登錄時(shí),系統(tǒng)通常把這些用戶放在一個(gè)受限制的shell中,以防系統(tǒng)被懷有惡意的或不小心的用戶破壞。

  用戶還可以使用telnet從遠(yuǎn)程站點(diǎn)登錄到自己的計(jì)算機(jī)上,檢查電子郵件、編輯文件和運(yùn)行程序,就像在本地登錄一樣。

  但是,用戶只能使用基于終端的環(huán)境而不是X Wndows環(huán)境,telnet只為普通終端提供終端仿真,而不支持 X Wndow等圖形環(huán)境。 telnet命令的一般形式為:

  telnet 主機(jī)名/IP 其中“主機(jī)名/IP”是要連接的遠(yuǎn)程機(jī)的主機(jī)名或IP地址。如果這一命令執(zhí)行成功,將從遠(yuǎn)程機(jī)上得到login:提示符。

  使用telnet命令登錄的過(guò)程如下: $ telnet 主機(jī)名/IP 啟動(dòng)telnet會(huì)話。 一旦telnet成功地連接到遠(yuǎn)程系統(tǒng)上,就顯示登錄信息并提示用戶輸人用戶名和口令。如果用戶名和口令輸入正確,就能成功登錄并在遠(yuǎn)程系統(tǒng)上工作。

  在telnet提示符后面可以輸入很多命令,用來(lái)控制telnet會(huì)話過(guò)程,在telnet聯(lián)機(jī)幫助手冊(cè)中對(duì)這些命令有詳細(xì)的說(shuō)明。

  下面是一臺(tái)Linux計(jì)算機(jī)上的telnet會(huì)話舉例:

  $ telnet server. somewhere. com Trying 127.0.0.1… Connected to serve.

  somewhere. com. Escape character is \'?]\'. “TurboLinux release 4. 0 (Colgate)

  kernel 2.0.18 on an I486   login: bubba password: Last login:Mon Nov

  l5 20:50:43 for localhost Linux 2. 0.6. (Posix). server: ~$ server: ~$

  logout Connection closed by foreign host $

  用戶結(jié)束了遠(yuǎn)程會(huì)話后,一定要確保使用logout命令退出遠(yuǎn)程系統(tǒng)。然后telnet報(bào)告遠(yuǎn)程會(huì)話被關(guān)閉,并返回到用戶的本地機(jī)的Shell提示符下。

  r-系列命令 除ftp和telnet以外,還可以使用r-系列命令訪問(wèn)遠(yuǎn)程計(jì)算機(jī)和在網(wǎng)絡(luò)上交換文件。使用r-系列命令需要特別注意,因?yàn)槿绻脩舨恍⌒?,就?huì)造成嚴(yán)重的安全漏洞。用戶發(fā)出一個(gè)r-系列命令后,遠(yuǎn)程系統(tǒng)檢查名為 /etc/hosts.equiv的文件,以查看用戶的主機(jī)是否列在這個(gè)文件中。如果它沒(méi)有找到用戶的主機(jī),就檢查遠(yuǎn)程機(jī)上同名用戶的主目錄中名為. rhosts的文件,看是否包括該用戶的主機(jī)。如果該用戶的主機(jī)包括在這兩個(gè)文件中的任何一個(gè)之中,該用戶執(zhí)行r-系列命令就不用提供口令。

  雖然用戶每次訪問(wèn)遠(yuǎn)程機(jī)時(shí)不用鍵入口令可能是非常方便的,但是它也可能會(huì)帶來(lái)嚴(yán)重的安全問(wèn)題。我們建議用戶在建立/etc/hosts.equiv和.rhosts文件之前,仔細(xì)考慮r-命令隱含的安全問(wèn)題。

  rlogin命令

  功能:rlogin 是“remote login”(遠(yuǎn)程登錄)的縮寫(xiě)。該命令與telnet命令很相似,允許用戶啟動(dòng)遠(yuǎn)程系統(tǒng)上的交互命令會(huì)話。

  格式: rlogin [ -8EKLdx ] [ -e char ] [-k

  realm ] [ - l username ] host

  參數(shù):

  -8 此選項(xiàng)始終允許8位輸入數(shù)據(jù)通道。該選項(xiàng)允許發(fā)送格式化的ANSI字符和其他的特殊代碼。如果不用這個(gè)選項(xiàng),除非遠(yuǎn)端的終止和啟動(dòng)字符不是或,否則就去掉奇偶校驗(yàn)位。

  -E 停止把任何字符當(dāng)作轉(zhuǎn)義字符。當(dāng)和-8選項(xiàng)一起使用時(shí),它提供一個(gè)完全的透明連接。

  -K 關(guān)閉所有的Kerberos確認(rèn)。只有與使用Kerberos 確認(rèn)協(xié)議的主機(jī)連接時(shí)才使用這個(gè)選項(xiàng)。

  -L 允許rlogin會(huì)話在litout模式中運(yùn)行。要了解更多信息,請(qǐng)查閱tty聯(lián)機(jī)幫助。

  -d 打開(kāi)與遠(yuǎn)程主機(jī)進(jìn)行通信的TCP sockets的socket調(diào)試。要了解更多信息,請(qǐng)查閱setsockopt的聯(lián)機(jī)幫助。

  -e 為rlogin會(huì)話設(shè)置轉(zhuǎn)義字符,默認(rèn)的轉(zhuǎn)義字符是“~”,用戶可以指定一個(gè)文字字符或一個(gè)\nnn形式的八進(jìn)制數(shù)。

  -k 請(qǐng)求rlogin獲得在指定區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos許可,而不是獲得由krb_realmofhost(3)確定的遠(yuǎn)程主機(jī)區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos

  許可。

  -x 為所有通過(guò)rlogin會(huì)話傳送的數(shù)據(jù)打開(kāi)DES加密。這會(huì)影響響應(yīng)時(shí)間和CPU利用率,但是可以提高安全性。

  rsh命令

  功能:rsh是“remote shell”(遠(yuǎn)程 shell)的縮寫(xiě)。 該命令在指定的遠(yuǎn)程主機(jī)上啟動(dòng)一個(gè)shell并執(zhí)行用戶在rsh命令行中指定的命令。如果用戶沒(méi)有給出要執(zhí)行的命令,rsh就用rlogin命令使用戶登錄到遠(yuǎn)程機(jī)上。

  格式:rsh [-Kdnx] [-k realm] [-l username]

  host [command]

  command可以是從shell提示符下鍵人的任何Linux命令。

  參數(shù):

  -K 關(guān)閉所有的Kerbero確認(rèn)。該選項(xiàng)只在與使用Kerbero確認(rèn)的主機(jī)連接時(shí)才使用。

  -d 打開(kāi)與遠(yuǎn)程主機(jī)進(jìn)行通信的TCP sockets的socket調(diào)試。要了解更多的信息,請(qǐng)查閱setsockopt的聯(lián)機(jī)幫助。

  -k 請(qǐng)求rsh獲得在指定區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos許可,而不是獲得由krb_relmofhost(3)確定的遠(yuǎn)程主機(jī)區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos許可。

  -l 缺省情況下,遠(yuǎn)程用戶名與本地用戶名相同。本選項(xiàng)允許指定遠(yuǎn)程用戶名,如果指定了遠(yuǎn)程用戶名,則使用Kerberos 確認(rèn),與在rlogin命令中一樣。

  -n 重定向來(lái)自特殊設(shè)備/dev/null的輸入。

  -x 為傳送的所有數(shù)據(jù)打開(kāi)DES加密。這會(huì)影響響應(yīng)時(shí)間和CPU利用率,但是可以提高安全性。    Linux把標(biāo)準(zhǔn)輸入放入rsh命令中,并把它拷貝到要遠(yuǎn)程執(zhí)行的命令的標(biāo)準(zhǔn)輸入中。它把遠(yuǎn)程命令的標(biāo)準(zhǔn)輸出拷貝到rsh的標(biāo)準(zhǔn)輸出中。它還把遠(yuǎn)程標(biāo)準(zhǔn)錯(cuò)誤拷貝到本地標(biāo)準(zhǔn)錯(cuò)誤文件中。任何退出、中止和中斷信號(hào)都被送到遠(yuǎn)程命令中。當(dāng)遠(yuǎn)程命令終止了,rsh也就終止了。

  rcp命令

  功能:rcp代表“remote file copy”(遠(yuǎn)程文件拷貝)。該命令用于在計(jì)算機(jī)之間拷貝文件。

  rcp命令有兩種格式。第一種格式用于文件到文件的拷貝;第二種格式用于把文件或目錄拷貝到另一個(gè)目錄中。

  格式:

  rcp [-px] [-k realm] file1 file2 rcp [-px] [-r] [-k realm] file

  directory 每個(gè)文件或目錄參數(shù)既可以是遠(yuǎn)程文件名也可以是本地文件名。遠(yuǎn)程文件名具有如下形式:rname@rhost:path,其中rname是遠(yuǎn)程用戶名,rhost是遠(yuǎn)程計(jì)算機(jī)名,path是這個(gè)文件的路徑。

  參數(shù):

  -r 遞歸地把源目錄中的所有內(nèi)容拷貝到目的目錄中。要使用這個(gè)選項(xiàng),目的必須是一個(gè)目錄。

  -p 試圖保留源文件的修改時(shí)間和模式,忽略u(píng)mask。

  -k 請(qǐng)求rcp獲得在指定區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos 許可,而不是獲得由krb_relmofhost(3)確定的遠(yuǎn)程主機(jī)區(qū)域內(nèi)的遠(yuǎn)程主機(jī)的Kerberos許可。

  -x 為傳送的所有數(shù)據(jù)打開(kāi)DES加密。這會(huì)影響響應(yīng)時(shí)間和CPU利用率,但是可以提高安全性。如果在文件名中指定的路徑不是完整的路徑名,那么這個(gè)路徑被解釋為相對(duì)遠(yuǎn)程機(jī)上同名用戶的主目錄。如果沒(méi)有給出遠(yuǎn)程用戶名,就使用當(dāng)前用戶名。如果遠(yuǎn)程機(jī)上的路徑包含特殊shell字符,需要用反斜線(\)、雙引號(hào)(”)或單引號(hào)(’)括起來(lái),使所有的shell元字符都能被遠(yuǎn)程地解釋。

  需要說(shuō)明的是,rcp不提示輸入口令,它通過(guò)rsh命令來(lái)執(zhí)行拷貝。 - Turbolinux 提供稿件

  This file is decompiled from a .CHM file

  by an UNREGISTERED version of Easy CHM.

  You can download Easy CHM at :

  經(jīng)典:Linux菜鳥(niǎo)入門(mén)級(jí)命令大全

  1. man 對(duì)你熟悉或不熟悉的命令提供幫助解釋

  eg:man ls 就可以查看ls相關(guān)的用法

  注:按q鍵或者ctrl+c退出,在linux下可以使用ctrl+c終止當(dāng)前程序運(yùn)行。

  2. ls 查看目錄或者文件的屬*,列舉出任一目錄下面的文件

  eg: ls /usr/man

  ls -l

  a.d表示目錄(directory),如果是一個(gè)"-"表示是文件,如果是l則表示是一個(gè)連接文件(link)

  b.表示文件或者目錄許可權(quán)限.分別用可讀(r),可寫(xiě)(w),可運(yùn)行(x)。

  3. cp 拷貝文件

  eg: cp filename1 filename2 //把filename1拷貝成filename2

  cp 1.c netseek/2.c //將1.c拷到netseek目錄下命名為2.c

  4. rm 刪除文件和目錄

  eg: rm 1.c //將1.c這個(gè)文件刪除

  5. mv 移走目錄或者改文件名

  eg: mv filename1 filename2 //將filename1 改名為filename2

  mv qib.tgz ../qib.tgz //移到上一級(jí)目錄

  6. cd 改變當(dāng)前目錄 pwd 查看當(dāng)前所在目錄完整路徑

  eg: pwd //查看當(dāng)前所在目錄路徑

  cd netseek //進(jìn)入netseek這個(gè)目錄

  cd //退出當(dāng)前目錄

  7. cat,more命令

  將某個(gè)文件的內(nèi)容顯示出來(lái)。兩個(gè)命令所不同的是:cat把文件內(nèi)容一直打印出來(lái),而 more則分屏顯示

  eg; cat>1.c //就可以把代碼粘帖到1.c文件里,按ctrl+d 保存代碼。

  cat 1.c 或more 1.c //都可以查看里面的內(nèi)容。

  gcc -o 1 1.c //將1.c編譯成.exe文件,我們可以用此命編譯出代碼。

  8.chmod 命令 權(quán)限修改 用法:chmod 一位8進(jìn)制數(shù) filename。

  eg: chmod u+x filenmame //只想給自己運(yùn)行,別人只能讀

  //u表示文件主人, g 表示文件文件所在組。 o 表示其他人 ;r 表可讀,w 表可寫(xiě),x 表可以運(yùn)行

  chmod g+x filename //同組的人來(lái)執(zhí)行

  9. clear,date命令

  clear:清屏,相當(dāng)與DOS下的cls;date:顯示當(dāng)前時(shí)間。

  10. mount 加載一個(gè)硬件設(shè)備

  用法:mount [參數(shù)] 要加載的設(shè)備 載入點(diǎn)

  eg: mount /dev/cdrom

  cd /mnt/cdrom //進(jìn)入光盤(pán)目錄

  11. su 在不退出登陸的情況下,切換到另外一個(gè)人的身份

  用法: su -l 用戶名(如果用戶名缺省,則切換到root狀態(tài))

  eg:su -l netseek (切換到netseek這個(gè)用戶,將提示輸入密碼)

  12.whoami,whereis,which,id

  //whoami:確認(rèn)自己身份

  //whereis:查詢命令所在目錄以及幫助文檔所在目錄

  //which:查詢?cè)撁钏谀夸?類似whereis)

  //id:打印出自己的UID以及GID。(UID:用戶身份唯一標(biāo)識(shí)。GID:用戶組身份唯一標(biāo)識(shí)。每一個(gè)用戶只能有一個(gè)唯一的UID和 GID)

  eg: whoami //顯示你自已登陸的用戶名

  whereis bin 顯示bin所在的目錄,將顯示為:/usr/local/bin

  which bin

  13. grep,find

  grep:文本內(nèi)容搜索;find:文件或者目錄名以及權(quán)限屬主等匹配搜索

  eg: grep success *    /*查找當(dāng)前目錄下面所有文件里面含有success字符的文件

  14. kill 可以殺死某個(gè)正在進(jìn)行或者已經(jīng)是dest狀態(tài)的進(jìn)程

  eg; ps ax

  15. passwd 可以設(shè)置口令

  16. history 用戶用過(guò)的命令

  eg: history //可以顯示用戶過(guò)去使用的命令

  17. !! 執(zhí)行最近一次的命令

  18. mkdir命令

  eg: mkdir netseek //創(chuàng)建netseek這個(gè)目錄

  19. tar 解壓命令

  eg: tar -zxvf nmap-3.45.tgz //將這個(gè)解壓到nmap-3.45這個(gè)目錄里

  20. finger 可以讓使用者查詢一些其他使用者的資料

  eg: finger //查看所用用戶的使用資料

  finger root //查看root的資料

  關(guān)于指令

  cat cd

  chmod chown

  cp cut

  名稱:cat

  使用權(quán)限:所有使用者

  使用方式:cat [-AbeEnstTuv] [--help] [--version] fileName

  說(shuō)明:把檔案串連接后傳到基本輸出(螢?zāi)换蚣?> fileName 到另一個(gè)檔案)

  參數(shù):

  -n 或 --number 由 1 開(kāi)始對(duì)所有輸出的行數(shù)編號(hào)

  -b 或 --number-nonblank 和 -n 相似,只不過(guò)對(duì)于空白行不編號(hào)

  -s 或 --squeeze-blank 當(dāng)遇到有連續(xù)兩行以上的空白行,就代換為一行的空白行

  -v 或 --show-nonprinting

  范例:

  cat -n textfile1 > textfile2 把 textfile1 的檔案內(nèi)容加上行號(hào)后輸入 textfile2 這個(gè)檔案里

  cat -b textfile1 textfile2 >> textfile3 把 textfile1 和 textfile2 的檔案內(nèi)容加上行號(hào)(空白行不加)之后將內(nèi)容附加到 textfile3

  名稱 : cd

  使用權(quán)限 : 所有使用者

  使用方式 : cd [dirName]

  說(shuō)明 : 變換工作目錄至 dirName。 其中 dirName 表示法可為絕對(duì)路徑或相對(duì)路徑。若目錄名稱省略,則變換至使用者的 home directory (也就是剛 login 時(shí)所在的目錄)。

  另外,"~" 也表示為 home directory 的意思,"." 則是表示目前所在的目錄,".." 則表示目前目錄位置的上一層目錄。

  范例 : 跳到 /usr/bin/ :

  cd /usr/bin

  跳到自己的 home directory :

  cd ~

  跳到目前目錄的上上兩層 :

  cd ../..

  指令名稱 : chmod

  使用權(quán)限 : 所有使用者

  使用方式 : chmod [-cfvR] [--help] [--version] mode file...

  說(shuō)明 : Linux/Unix 的檔案存取權(quán)限分為三級(jí) : 檔案擁有者、群組、其他。利用 chmod 可以藉以控制檔案如何被他人所存取。

  把計(jì) :

  mode : 權(quán)限設(shè)定字串,格式如下 : [ugoa...][[+-=][rwxX]...][,...],其中u 表示該檔案的擁有者,g 表示與該檔案的擁有者屬于同一個(gè)群體(group)者,o 表示其他以外的人,a 表示這三者皆是。

  + 表示增加權(quán)限、- 表示取消權(quán)限、= 表示唯一設(shè)定權(quán)限。

  r 表示可讀取,w 表示可寫(xiě)入,x 表示可執(zhí)行,X 表示只有當(dāng)該檔案是個(gè)子目錄或者該檔案已經(jīng)被設(shè)定過(guò)為可執(zhí)行。

  -c : 若該檔案權(quán)限確實(shí)已經(jīng)更改,才顯示其更改動(dòng)作

  -f : 若該檔案權(quán)限無(wú)法被更改也不要顯示錯(cuò)誤訊息

  -v : 顯示權(quán)限變更的詳細(xì)資料

  -R : 對(duì)目前目錄下的所有檔案與子目錄進(jìn)行相同的權(quán)限變更(即以遞回的方式逐個(gè)變更)

  --help : 顯示輔助說(shuō)明

  --version : 顯示版本

  范例 :將檔案 file1.txt 設(shè)為所有人皆可讀取 :

  chmod ugo+r file1.txt

  將檔案 file1.txt 設(shè)為所有人皆可讀取 :

  chmod a+r file1.txt

  將檔案 file1.txt 與 file2.txt 設(shè)為該檔案擁有者,與其所屬同一個(gè)群體者可寫(xiě)入,但其他以外的人則不可寫(xiě)入 :

  chmod ug+w,o-w file1.txt file2.txt

  將 ex1.py 設(shè)定為只有該檔案擁有者可以執(zhí)行 :

  chmod u+x ex1.py

  將目前目錄下的所有檔案與子目錄皆設(shè)為任何人可讀取 :

  chmod -R a+r *

  此外chmod也可以用數(shù)字來(lái)表示權(quán)限如 chmod 777 file

  語(yǔ)法為:chmod abc file

  其中a,b,c各為一個(gè)數(shù)字,分別表示User、Group、及Other的權(quán)限。

  r=4,w=2,x=1

  若要rwx屬性則4+2+1=7;

  若要rw-屬性則4+2=6;

  若要r-x屬性則4+1=7。

  范例:

  chmod a=rwx file

  和

  chmod 777 file

  效果相同

  chmod ug=rwx,o=x file

  和

  chmod 771 file

  效果相同

  若用chmod 4755 filename可使此程式具有root的權(quán)限

  指令名稱 : chown

  使用權(quán)限 : root

  使用方式 : chmod [-cfhvR] [--help] [--version] user[:group] file...

  說(shuō)明 : Linux/Unix 是多人多工作業(yè)系統(tǒng),所有的檔案皆有擁有者。利用 chown 可以將檔案的擁有者加以改變。一般來(lái)說(shuō),這個(gè)指令只有是由系統(tǒng)管理者(root)所使用,一般使用者沒(méi)有權(quán)限可以改變別人的檔案擁有者,也沒(méi)有權(quán)限可以自己的檔案擁有者改設(shè)為別人。只有系統(tǒng)管理者(root)才有這樣的權(quán)限。

  把計(jì) :

  user : 新的檔案擁有者的使用者 IDgroup : 新的檔案擁有者的使用者群體(group)-c : 若該檔案擁有者確實(shí)已經(jīng)更改,才顯示其更改動(dòng)作-f : 若該檔案擁有者無(wú)法被更改也不要顯示錯(cuò)誤訊息-h : 只對(duì)于連結(jié)(link)進(jìn)行變更,而非該 link 真正指向的檔案-v : 顯示擁有者變更的詳細(xì)資料-R : 對(duì)目前目錄下的所有檔案與子目錄進(jìn)行相同的擁有者變更(即以遞回的方式逐個(gè)變更)--help : 顯示輔助說(shuō)明--version : 顯示版本

  范例 :

  將檔案 file1.txt 的擁有者設(shè)為 users 群體的使用者 jessie :

  chown jessie:users file1.txt

  將目前目錄下的所有檔案與子目錄的擁有者皆設(shè)為 users 群體的使用者 lamport :

  chmod -R lamport:users *

  名稱:cp

  使用權(quán)限:所有使用者

  使用方式:

  cp [options] source dest

  cp [options] source... directory

  說(shuō)明:將一個(gè)檔案拷貝至另一檔案,或?qū)?shù)個(gè)檔案拷貝至另一目錄。

  把計(jì)?

  -a 盡可能將檔案狀態(tài)、權(quán)限等資料都照原狀予以復(fù)制。

  -r 若 source 中含有目錄名,則將目錄下之檔案亦皆依序拷貝至目的地。

  -f 若目的地已經(jīng)有相同檔名的檔案存在,則在復(fù)制前先予以刪除再行復(fù)制。

  范例:

  將檔案 aaa 復(fù)制(已存在),并命名為 bbb :

  cp aaa bbb

  將所有的C語(yǔ)言程式拷貝至 Finished 子目錄中 :

  cp *.c Finished

  名稱:cut

  使用權(quán)限:所有使用者

  用法:cut -cnum1-num2 filename

  說(shuō)明:顯示每行從開(kāi)頭算起 num1 到 num2 的文字。

  范例:

  shell>> cat example

  test2

  this is test1

  shell>> cut -c0-6 example ## print 開(kāi)頭算起前 6 個(gè)字元

  test2

  this i

  名稱 : find

  用法 : find

  使用說(shuō)明 :

  將檔案系統(tǒng)內(nèi)符合 expression 的檔案列出來(lái)。你可以指要檔案的名稱、類別、時(shí)間、大小、權(quán)限等不同資訊的組合,只有完全相符的才會(huì)被列出來(lái)。

  find 根據(jù)下列規(guī)則判斷 path 和 expression,在命令列上第一個(gè) - ( ) , ! 之前的部份為 path,之后的是 expression。如果 path 是空字串則使用目前路徑,如果 expression 是空字串則使用 -print 為預(yù)設(shè) expression?

  expression 中可使用的選項(xiàng)有二三十個(gè)之多,在此只介紹最常用的部份。

  -mount, -xdev : 只檢查和指定目錄在同一個(gè)檔案系統(tǒng)下的檔案,避免列出其它檔案系統(tǒng)中的檔案

  -amin n : 在過(guò)去 n 分鐘內(nèi)被讀取過(guò)

  -anewer file : 比檔案 file 更晚被讀取過(guò)的檔案

  -atime n : 在過(guò)去 n 天過(guò)讀取過(guò)的檔案

  -cmin n : 在過(guò)去 n 分鐘內(nèi)被修改過(guò)

  -cnewer file :比檔案 file 更新的檔案

  -ctime n : 在過(guò)去 n 天過(guò)修改過(guò)的檔案

  -empty : 空的檔案-gid n or -group name : gid 是 n 或是 group 名稱是 name

  -ipath p, -path p : 路徑名稱符合 p 的檔案,ipath 會(huì)忽略大小寫(xiě)

  -name name, -iname name : 檔案名稱符合 name 的檔案。iname 會(huì)忽略大小寫(xiě)

  -size n : 檔案大小 是 n 單位,b 代表 512 位元組的區(qū)塊,c 表示字元數(shù),k 表示 kilo bytes,w 是二個(gè)位元組。-type c : 檔案類型是 c 的檔案。

  d: 目錄

  c: 字型裝置檔案

  b: 區(qū)塊裝置檔案

  p: 具名貯列

  f: 一般檔案

  l: 符號(hào)連結(jié)

  s: socket

  -pid n : process id 是 n 的檔案

  你可以使用 ( ) 將運(yùn)算式分隔,并使用下列運(yùn)算。

  exp1 -and exp2

  ! expr

  -not expr

  exp1 -or exp2

  exp1, exp2

  范例:

  將目前目錄及其子目錄下所有延伸檔名是 c 的檔案列出來(lái)。

  # find . -name "*.c"

  將目前目錄其其下子目錄中所有一般檔案列出

  # find . -ftype f

  將目前目錄及其子目錄下所有最近 20 分鐘內(nèi)更新過(guò)的檔案列出

  # find . -ctime -20

  名稱:less

  使用權(quán)限:所有使用者

  使用方式:

  less [Option] filename

  說(shuō)明:

  less 的作用與 more 十分相似,都可以用來(lái)瀏覽文字檔案的內(nèi)容,不同的是 less 允許使用者往回卷動(dòng)

  以瀏覽已經(jīng)看過(guò)的部份,同時(shí)因?yàn)?less 并未在一開(kāi)始就讀入整個(gè)檔案,因此在遇上大型檔案的開(kāi)啟時(shí),會(huì)比一般的文書(shū)編輯器(如 vi)來(lái)的快速。

  范例:

  指令名稱 : ln

  使用權(quán)限 : 所有使用者

  使用方式 : ln [options] source dist,其中 option 的格式為 :

  [-bdfinsvF] [-S backup-suffix] [-V {numbered,existing,simple}]

  [--help] [--version] [--]

  說(shuō)明 : Linux/Unix 檔案系統(tǒng)中,有所謂的連結(jié)(link),我們可以將其視為檔案的別名,而連結(jié)又可分為兩種 : 硬連結(jié)(hard link)與軟連結(jié)(symbolic link),硬連結(jié)的意思是一個(gè)檔案可以有多個(gè)名稱,而軟連結(jié)的方式則是產(chǎn)生一個(gè)特殊的檔案,該檔案的內(nèi)容是指向另一個(gè)檔案的位置。硬連結(jié)是存在同一個(gè)檔案系統(tǒng)中,而軟連結(jié)卻可以跨越不同的檔案系統(tǒng)。

  ln source dist 是產(chǎn)生一個(gè)連結(jié)(dist)到 source,至于使用硬連結(jié)或軟鏈結(jié)則由參數(shù)決定。

  不論是硬連結(jié)或軟鏈結(jié)都不會(huì)將原本的檔案復(fù)制一份,只會(huì)占用非常少量的磁碟空間。

  -f : 鏈結(jié)時(shí)先將與 dist 同檔名的檔案刪除-d : 允許系統(tǒng)管理者硬鏈結(jié)自己的目錄-i : 在刪除與 dist 同檔名的檔案時(shí)先進(jìn)行詢問(wèn)-n : 在進(jìn)行軟連結(jié)時(shí),將 dist 視為一般的檔案-s : 進(jìn)行軟鏈結(jié)(symbolic link)-v : 在連結(jié)之前顯示其檔名-b : 將在鏈結(jié)時(shí)會(huì)被覆寫(xiě)或刪除的檔案進(jìn)行備份-S SUFFIX : 將備份的檔案都加上 SUFFIX 的字尾-V METHOD : 指定備份的方式--help : 顯示輔助說(shuō)明--version : 顯示版本

  范例 :

  將檔案 yy 產(chǎn)生一個(gè) symbolic link : zz

  ln -s yy zz

  將檔案 yy 產(chǎn)生一個(gè) hard link : zz

  ln yy xx

  名稱:locate

  使用權(quán)限:所有使用者

  使用方式: locate [-q] [-d ] [--database=]

  locate [-r ] [--regexp=]

  locate [-qv] [-o ] [--output=]

  locate [-e ] [-f ] <[-l ] [-c]

  <[-U ] [-u]>

  locate [-Vh] [--version] [--help]

  說(shuō)明:

  locate 讓使用者可以很快速的搜尋檔案系統(tǒng)內(nèi)是否有指定的檔案。其方法是先建立一個(gè)包括系統(tǒng)內(nèi)所有檔案名稱及路徑的資料庫(kù),之后當(dāng)尋找時(shí)就只需查詢這個(gè)資料庫(kù),而不必實(shí)際深入檔案系統(tǒng)之中了。

  在一般的 distribution 之中,資料庫(kù)的建立都被放在 contab 中自動(dòng)執(zhí)行。一般使用者在使用時(shí)只要用

  # locate your_file_name

  的型式就可以了。 參數(shù):

  -u

  -U

  建立資料庫(kù),-u 會(huì)由根目錄開(kāi)始,-U 則可以指定開(kāi)始的位置。

  -e

  將

  排除在尋找的范圍之外。

  -l

  如果 是 1.則啟動(dòng)安全模式。在安全模式下,使用者不會(huì)看到權(quán)限無(wú)法看到的檔案。這會(huì)始速度減慢,因?yàn)?locate 必須至實(shí)際的檔案系統(tǒng)中取得檔案的權(quán)限資料。

  -f

  將特定的檔案系統(tǒng)排除在外,例如我們沒(méi)有到理要把 proc 檔案系統(tǒng)中的檔案放在資料庫(kù)中。

  -q

  安靜模式,不會(huì)顯示任何錯(cuò)誤訊息。

  -n

  至多顯示 個(gè)輸出。

  -r

  使用正規(guī)運(yùn)算式 做尋找的條件。

  -o

  指定資料庫(kù)存的名稱。

  -d

  指定資料庫(kù)的路徑

  -h

  顯示輔助訊息

  -v

  顯示更多的訊息

  -V

  顯示程式的版本訊息 范例:

  locate chdrv : 尋找所有叫 chdrv 的檔案

  locate -n 100 a.out : 尋找所有叫 a.out 的檔案,但最多只顯示 100 個(gè)

  locate -u : 建立資料庫(kù)

  名稱 : ls

  使用權(quán)限 : 所有使用者

  使用方式 : ls [-alrtAFR] [name...]

  說(shuō)明 : 顯示指定工作目錄下之內(nèi)容(列出目前工作目錄所含之檔案及子目錄)。

  -a 顯示所有檔案及目錄 (ls內(nèi)定將檔案名或目錄名稱開(kāi)頭為"."的視為隱藏檔,不會(huì)列出)

  -l 除檔案名稱外,亦將檔案型態(tài)、權(quán)限、擁有者、檔案大小等資訊詳細(xì)列出

  -r 將檔案以相反次序顯示(原定依英文字母次序)

  -t 將檔案依建立時(shí)間之先后次序列出

  -A 同 -a ,但不列出 "." (目前目錄) 及 ".." (父目錄)

  -F 在列出的檔案名稱后加一符號(hào);例如可執(zhí)行檔則加 "*", 目錄則加 "/"

  -R 若目錄下有檔案,則以下之檔案亦皆依序列出

  范例:

  列出目前工作目錄下所有名稱是 s 開(kāi)頭的檔案,愈新的排愈后面 :

  ls -ltr s*

  將 /bin 目錄以下所有目錄及檔案詳細(xì)資料列出 :

  ls -lR /bin

  列出目前工作目錄下所有檔案及目錄;目錄于名稱后加 "/", 可執(zhí)行檔于名稱后加 "*" :

  ls -AF

  名稱:more

  使用權(quán)限:所有使用者

  使用方式:more [-dlfpcsu] [-num] [+/pattern] [+linenum] [fileNames..]

  說(shuō)明:類似 cat ,不過(guò)會(huì)以一頁(yè)一頁(yè)的顯示方便使用者逐頁(yè)閱讀,而最基本的指令就是按空白鍵(space)就往下一頁(yè)顯示,按 b 鍵就會(huì)往回(back)一頁(yè)顯示,而且還有搜尋字串的功能(與 vi 相似),使用中的說(shuō)明文件,請(qǐng)按 h 。

  參數(shù):-num 一次顯示的行數(shù)

  -d 提示使用者,在畫(huà)面下方顯示 [Press space to continue, q to quit.] ,如果使用者按錯(cuò)鍵,則會(huì)顯示 [Press h for instructions.] 而不是 嗶 聲

  -l 取消遇見(jiàn)特殊字元 ^L(送紙字元)時(shí)會(huì)暫停的功能

  -f 計(jì)算行數(shù)時(shí),以實(shí)際上的行數(shù),而非自動(dòng)換行過(guò)后的行數(shù)(有些單行字?jǐn)?shù)太長(zhǎng)的會(huì)被擴(kuò)展為兩行或兩行以上)

  -p 不以卷動(dòng)的方式顯示每一頁(yè),而是先清除螢?zāi)缓笤亠@示內(nèi)容

  -c 跟 -p 相似,不同的是先顯示內(nèi)容再清除其他舊資料

  -s 當(dāng)遇到有連續(xù)兩行以上的空白行,就代換為一行的空白行

  -u 不顯示下引號(hào) (根據(jù)環(huán)境變數(shù) TERM 指定的 terminal 而有所不同)

  +/ 在每個(gè)檔案顯示前搜尋該字串(pattern),然后從該字串之后開(kāi)始顯示

  +num 從第 num 行開(kāi)始顯示

  fileNames 欲顯示內(nèi)容的檔案,可為復(fù)數(shù)個(gè)數(shù)

  范例:

  more -s testfile 逐頁(yè)顯示 testfile 之檔案內(nèi)容,如有連續(xù)兩行以上空白行則以一行空白行顯示。

  more +20 testfile 從第 20 行開(kāi)始顯示 testfile 之檔案內(nèi)容。

  名稱:mv

  使用權(quán)限:所有使用者

  使用方式:

  mv [options] source dest

  mv [options] source... directory

  說(shuō)明:將一個(gè)檔案移至另一檔案,或?qū)?shù)個(gè)檔案移至另一目錄。

  參數(shù):-i 若目的地已有同名檔案,則先詢問(wèn)是否覆蓋舊檔。

  范例:

  將檔案 aaa 更名為 bbb :

  mv aaa bbb

  將所有的C語(yǔ)言程式移至 Finished 子目錄中 :

  mv -i *.c

  名稱:rm

  使用權(quán)限:所有使用者

  使用方式:rm [options] name...

  說(shuō)明:刪除檔案及目錄。

  把計(jì)?

  -i 刪除前逐一詢問(wèn)確認(rèn)。

  -f 即使原檔案屬性設(shè)為唯讀,亦直接刪除,無(wú)需逐一確認(rèn)。

  -r 將目錄及以下之檔案亦逐一刪除。

  范例:

  刪除所有C語(yǔ)言程式檔;刪除前逐一詢問(wèn)確認(rèn) :

  rm -i *.c

  將 Finished 子目錄及子目錄中所有檔案刪除 :

  rm -r Finished

  名稱:rmdir

  使用權(quán)限:于目前目錄有適當(dāng)權(quán)限的所有使用者

  使用方式: rmdir [-p] dirName

  說(shuō)明: 刪除空的目錄。

  參數(shù): -p 是當(dāng)子目錄被刪除后使它也成為空目錄的話,則順便一并刪除。

  范例:

  將工作目錄下,名為 AAA 的子目錄刪除 :

  rmdir AAA

  在工作目錄下的 BBB 目錄中,刪除名為 Test 的子目錄。若 Test 刪除后,BBB 目錄成為空目錄,則 BBB 亦予刪除。

  rmdir -p BBB/Test

  名稱:split

  使用權(quán)限:所有使用者

  使用方式:split [OPTION] [INPUT [PREFIX]]

  說(shuō)明:

  將一個(gè)檔案分割成數(shù)個(gè)。而從 INPUT 分割輸出成固定大小的檔案,其檔名依序?yàn)?PREFIXaa, PREFIXab...;PREFIX 預(yù)設(shè)值為 `x。若沒(méi)有 INPUT 檔或?yàn)?`-,則從標(biāo)準(zhǔn)輸入讀進(jìn)資料。

  匡兜?

  -b, --bytes=SIZE

  SIZE 值為每一輸出檔案的大小,單位為 byte。

  -C, --line-bytes=SIZE

  每一輸出檔中,單行的最大 byte 數(shù)。

  -l, --lines=NUMBER

  NUMBER 值為每一輸出檔的列數(shù)大小。

  -NUMBER

  與 -l NUMBER 相同。

  --verbose

  于每個(gè)輸出檔被開(kāi)啟前,列印出偵錯(cuò)資訊到標(biāo)準(zhǔn)錯(cuò)誤輸出。

  --help

  顯示輔助資訊然后離開(kāi)。

  --version

  列出版本資訊然后離開(kāi)。

  SIZE 可加入單位: b 代表 512, k 代表 1K, m 代表 1 Meg。

  范例:

  PostgresSQL 大型資料庫(kù)備份與回存:

  因 Postgres 允許表格大過(guò)你系統(tǒng)檔案的最大容量,所以要將表格 dump 到單一的檔案可能會(huì)有問(wèn)題,使用 split進(jìn)行檔案分割。

  % pg_dump dbname | split -b 1m - filename.dump.

  重新載入

  % createdb dbname

  % cat filename.dump.* | pgsql dbname

  名稱:touch

  使用權(quán)限:所有使用者

  使用方式:

  touch [-acfm]

  [-r reference-file] [--file=reference-file]

  [-t MMDDhhmm[[CC]YY][.ss]]

  [-d time] [--date=time] [--time={atime,access,use,mtime,modify}]

  [--no-create] [--help] [--version]

  file1 [file2 ...]

  說(shuō)明:

  touch 指令改變檔案的時(shí)間記錄。 ls -l 可以顯示檔案的時(shí)間記錄。

  參數(shù):

  a 改變檔案的讀取時(shí)間記錄。

  m 改變檔案的修改時(shí)間記錄。

  c 假如目的檔案不存在,不會(huì)建立新的檔案。與 --no-create 的效果一樣。

  f 不使用,是為了與其他 unix 系統(tǒng)的相容性而保留。

  r 使用參考檔的時(shí)間記錄,與 --file 的效果一樣。

  d 設(shè)定時(shí)間與日期,可以使用各種不同的格式。

  t 設(shè)定檔案的時(shí)間記錄,格式與 date 指令相同。

  --no-create 不會(huì)建立新檔案。

  --help 列出指令格式。

  --version 列出版本訊息。

  范例:

  最簡(jiǎn)單的使用方式,將檔案的時(shí)候記錄改為現(xiàn)在的時(shí)間。若檔案不存在,系統(tǒng)會(huì)建立一個(gè)新的檔案。

  touch file

  touch file1 file2

  將 file 的時(shí)間記錄改為 5 月 6 日 18 點(diǎn) 3 分,公元兩千年。時(shí)間的格式可以參考 date 指令,至少需輸入 MMDDHHmm ,就是月日時(shí)與分。

  touch -c -t 05061803 file

  touch -c -t 050618032000 file

  將 file 的時(shí)間記錄改變成與 referencefile 一樣。

  touch -r referencefile file

  將 file 的時(shí)間記錄改成 5 月 6 日 18 點(diǎn) 3 分,公元兩千年。時(shí)間可以使用 am, pm 或是 24 小時(shí)的格式,日期可以使用其他格式如 6 May 2000 。

  touch -d "6:03pm" file

  touch -d "05/06/2000" file

  touch -d "6:03pm 05/06/2000" file

  Linux 指令大全(1)

  cat cd

  chmod chown

  cp cut

  名稱:cat

  使用權(quán)限:所有使用者

  使用方式:cat [-AbeEnstTuv] [--help] [--version] fileName

  說(shuō)明:把檔案串連接后傳到基本輸出(螢?zāi)换蚣?> fileName 到另一個(gè)檔案)

  參數(shù):

  -n 或 --number 由 1 開(kāi)始對(duì)所有輸出的行數(shù)編號(hào)

  -b 或 --number-nonblank 和 -n 相似,只不過(guò)對(duì)于空白行不編號(hào)

  -s 或 --squeeze-blank 當(dāng)遇到有連續(xù)兩行以上的空白行,就代換為一行的空白行

  -v 或 --show-nonprinting

  范例:

  cat -n textfile1 > textfile2 把 textfile1 的檔案內(nèi)容加上行號(hào)后輸入 textfile2 這個(gè)檔案里

  cat -b textfile1 textfile2 >> textfile3 把 textfile1 和 textfile2 的檔案內(nèi)容加上行號(hào)(空白行不加)之后將內(nèi)容附加到 textfile3

  名稱 : cd

  使用權(quán)限 : 所有使用者

  使用方式 : cd [dirName]

  說(shuō)明 : 變換工作目錄至 dirName。 其中 dirName 表示法可為絕對(duì)路徑或相對(duì)路徑。若目錄名稱省略,則變換至使用者的 home directory (也就是剛 login 時(shí)所在的目錄)。

  另外,"~" 也表示為 home directory 的意思,"." 則是表示目前所在的目錄,".." 則表示目前目錄位置的上一層目錄。

  范例 : 跳到 /usr/bin/ :

  cd /usr/bin

  跳到自己的 home directory :

  cd ~

  跳到目前目錄的上上兩層 :

  cd ../..

  指令名稱 : chmod

  使用權(quán)限 : 所有使用者

  使用方式 : chmod [-cfvR] [--help] [--version] mode file...

  說(shuō)明 : Linux/Unix 的檔案存取權(quán)限分為三級(jí) : 檔案擁有者、群組、其他。利用 chmod 可以藉以控制檔案如何被他人所存取。

  把計(jì) :

  mode : 權(quán)限設(shè)定字串,格式如下 : [ugoa...][[+-=][rwxX]...][,...],其中u 表示該檔案的擁有者,g 表示與該檔案的擁有者屬于同一個(gè)群體(group)者,o 表示其他以外的人,a 表示這三者皆是。

  + 表示增加權(quán)限、- 表示取消權(quán)限、= 表示唯一設(shè)定權(quán)限。

  r 表示可讀取,w 表示可寫(xiě)入,x 表示可執(zhí)行,X 表示只有當(dāng)該檔案是個(gè)子目錄或者該檔案已經(jīng)被設(shè)定過(guò)為可執(zhí)行。

  -c : 若該檔案權(quán)限確實(shí)已經(jīng)更改,才顯示其更改動(dòng)作

  -f : 若該檔案權(quán)限無(wú)法被更改也不要顯示錯(cuò)誤訊息

  -v : 顯示權(quán)限變更的詳細(xì)資料

  -R : 對(duì)目前目錄下的所有檔案與子目錄進(jìn)行相同的權(quán)限變更(即以遞回的方式逐個(gè)變更)

  --help : 顯示輔助說(shuō)明

  --version : 顯示版本

  范例 :將檔案 file1.txt 設(shè)為所有人皆可讀取 :

  chmod ugo+r file1.txt

  將檔案 file1.txt 設(shè)為所有人皆可讀取 :

  chmod a+r file1.txt

  將檔案 file1.txt 與 file2.txt 設(shè)為該檔案擁有者,與其所屬同一個(gè)群體者可寫(xiě)入,但其他以外的人則不可寫(xiě)入 :

  chmod ug+w,o-w file1.txt file2.txt

  將 ex1.py 設(shè)定為只有該檔案擁有者可以執(zhí)行 :

  chmod u+x ex1.py

  將目前目錄下的所有檔案與子目錄皆設(shè)為任何人可讀取 :

  chmod -R a+r *

  此外chmod也可以用數(shù)字來(lái)表示權(quán)限如 chmod 777 file

  語(yǔ)法為:chmod abc file

  其中a,b,c各為一個(gè)數(shù)字,分別表示User、Group、及Other的權(quán)限。

  r=4,w=2,x=1

  若要rwx屬性則4+2+1=7;

  若要rw-屬性則4+2=6;

  若要r-x屬性則4+1=7。

  范例:

  chmod a=rwx file

  和

  chmod 777 file

  效果相同

  chmod ug=rwx,o=x file

  和

  chmod 771 file

  效果相同

  若用chmod 4755 filename可使此程式具有root的權(quán)限

  指令名稱 : chown

  使用權(quán)限 : root

  使用方式 : chmod [-cfhvR] [--help] [--version] user[:group] file...

  說(shuō)明 : Linux/Unix 是多人多工作業(yè)系統(tǒng),所有的檔案皆有擁有者。利用 chown 可以將檔案的擁有者加以改變。一般來(lái)說(shuō),這個(gè)指令只有是由系統(tǒng)管理者(root)所使用,一般使用者沒(méi)有權(quán)限可以改變別人的檔案擁有者,也沒(méi)有權(quán)限可以自己的檔案擁有者改設(shè)為別人。只有系統(tǒng)管理者(root)才有這樣的權(quán)限。

  把計(jì) :

  user : 新的檔案擁有者的使用者 IDgroup : 新的檔案擁有者的使用者群體(group)-c : 若該檔案擁有者確實(shí)已經(jīng)更改,才顯示其更改動(dòng)作-f : 若該檔案擁有者無(wú)法被更改也不要顯示錯(cuò)誤訊息-h : 只對(duì)于連結(jié)(link)進(jìn)行變更,而非該 link 真正指向的檔案-v : 顯示擁有者變更的詳細(xì)資料-R : 對(duì)目前目錄下的所有檔案與子目錄進(jìn)行相同的擁有者變更(即以遞回的方式逐個(gè)變更)--help : 顯示輔助說(shuō)明--version : 顯示版本

  范例 :

  將檔案 file1.txt 的擁有者設(shè)為 users 群體的使用者 jessie :

  chown jessie:users file1.txt

  將目前目錄下的所有檔案與子目錄的擁有者皆設(shè)為 users 群體的使用者 lamport :

  chmod -R lamport:users *

  名稱:cp

  使用權(quán)限:所有使用者

  使用方式:

  cp [options] source dest

  cp [options] source... directory

  說(shuō)明:將一個(gè)檔案拷貝至另一檔案,或?qū)?shù)個(gè)檔案拷貝至另一目錄。

  把計(jì)?

  -a 盡可能將檔案狀態(tài)、權(quán)限等資料都照原狀予以復(fù)制。

  -r 若 source 中含有目錄名,則將目錄下之檔案亦皆依序拷貝至目的地。

  -f 若目的地已經(jīng)有相同檔名的檔案存在,則在復(fù)制前先予以刪除再行復(fù)制。

  范例:

  將檔案 aaa 復(fù)制(已存在),并命名為 bbb :

  cp aaa bbb

  將所有的C語(yǔ)言程式拷貝至 Finished 子目錄中 :

  cp *.c Finished

  名稱:cut

  使用權(quán)限:所有使用者

  用法:cut -cnum1-num2 filename

  說(shuō)明:顯示每行從開(kāi)頭算起 num1 到 num2 的文字。

  范例:

  shell>> cat example

  test2

  this is test1

  shell>> cut -c0-6 example ## print 開(kāi)頭算起前 6 個(gè)字元

  test2

  this i

  名稱 : find

  用法 : find

  使用說(shuō)明 :

  將檔案系統(tǒng)內(nèi)符合 expression 的檔案列出來(lái)。你可以指要檔案的名稱、類別、時(shí)間、大小、權(quán)限等不同資訊的組合,只有完全相符的才會(huì)被列出來(lái)。

  find 根據(jù)下列規(guī)則判斷 path 和 expression,在命令列上第一個(gè) - ( ) , ! 之前的部份為 path,之后的是 expression。如果 path 是空字串則使用目前路徑,如果 expression 是空字串則使用 -print 為預(yù)設(shè) expression?

  expression 中可使用的選項(xiàng)有二三十個(gè)之多,在此只介紹最常用的部份。

  -mount, -xdev : 只檢查和指定目錄在同一個(gè)檔案系統(tǒng)下的檔案,避免列出其它檔案系統(tǒng)中的檔案

  -amin n : 在過(guò)去 n 分鐘內(nèi)被讀取過(guò)

  -anewer file : 比檔案 file 更晚被讀取過(guò)的檔案

  -atime n : 在過(guò)去 n 天過(guò)讀取過(guò)的檔案

  -cmin n : 在過(guò)去 n 分鐘內(nèi)被修改過(guò)

  -cnewer file :比檔案 file 更新的檔案

  -ctime n : 在過(guò)去 n 天過(guò)修改過(guò)的檔案

  -empty : 空的檔案-gid n or -group name : gid 是 n 或是 group 名稱是 name

  -ipath p, -path p : 路徑名稱符合 p 的檔案,ipath 會(huì)忽略大小寫(xiě)

  -name name, -iname name : 檔案名稱符合 name 的檔案。iname 會(huì)忽略大小寫(xiě)

  -size n : 檔案大小 是 n 單位,b 代表 512 位元組的區(qū)塊,c 表示字元數(shù),k 表示 kilo bytes,w 是二個(gè)位元組。-type c : 檔案類型是 c 的檔案。

  d: 目錄

  c: 字型裝置檔案

  b: 區(qū)塊裝置檔案

  p: 具名貯列

  f: 一般檔案

  l: 符號(hào)連結(jié)

  s: socket

  -pid n : process id 是 n 的檔案

  你可以使用 ( ) 將運(yùn)算式分隔,并使用下列運(yùn)算。

  exp1 -and exp2

  ! expr

  -not expr

  exp1 -or exp2

  exp1, exp2

  范例:

  將目前目錄及其子目錄下所有延伸檔名是 c 的檔案列出來(lái)。

  # find . -name "*.c"

  將目前目錄其其下子目錄中所有一般檔案列出

  # find . -ftype f

  將目前目錄及其子目錄下所有最近 20 分鐘內(nèi)更新過(guò)的檔案列出

  # find . -ctime -20

  名稱:less

  使用權(quán)限:所有使用者

  使用方式:

  less [Option] filename

  說(shuō)明:

  less 的作用與 more 十分相似,都可以用來(lái)瀏覽文字檔案的內(nèi)容,不同的是 less 允許使用者往回卷動(dòng)

  以瀏覽已經(jīng)看過(guò)的部份,同時(shí)因?yàn)?less 并未在一開(kāi)始就讀入整個(gè)檔案,因此在遇上大型檔案的開(kāi)啟時(shí),會(huì)比一般的文書(shū)編輯器(如 vi)來(lái)的快速。

  范例:

  指令名稱 : ln

  使用權(quán)限 : 所有使用者

  使用方式 : ln [options] source dist,其中 option 的格式為 :

  [-bdfinsvF] [-S backup-suffix] [-V {numbered,existing,simple}]

  [--help] [--version] [--]

  說(shuō)明 : Linux/Unix 檔案系統(tǒng)中,有所謂的連結(jié)(link),我們可以將其視為檔案的別名,而連結(jié)又可分為兩種 : 硬連結(jié)(hard link)與軟連結(jié)(symbolic link),硬連結(jié)的意思是一個(gè)檔案可以有多個(gè)名稱,而軟連結(jié)的方式則是產(chǎn)生一個(gè)特殊的檔案,該檔案的內(nèi)容是指向另一個(gè)檔案的位置。硬連結(jié)是存在同一個(gè)檔案系統(tǒng)中,而軟連結(jié)卻可以跨越不同的檔案系統(tǒng)。

  ln source dist 是產(chǎn)生一個(gè)連結(jié)(dist)到 source,至于使用硬連結(jié)或軟鏈結(jié)則由參數(shù)決定。

  不論是硬連結(jié)或軟鏈結(jié)都不會(huì)將原本的檔案復(fù)制一份,只會(huì)占用非常少量的磁碟空間。

  -f : 鏈結(jié)時(shí)先將與 dist 同檔名的檔案刪除-d : 允許系統(tǒng)管理者硬鏈結(jié)自己的目錄-i : 在刪除與 dist 同檔名的檔案時(shí)先進(jìn)行詢問(wèn)-n : 在進(jìn)行軟連結(jié)時(shí),將 dist 視為一般的檔案-s : 進(jìn)行軟鏈結(jié)(symbolic link)-v : 在連結(jié)之前顯示其檔名-b : 將在鏈結(jié)時(shí)會(huì)被覆寫(xiě)或刪除的檔案進(jìn)行備份-S SUFFIX : 將備份的檔案都加上 SUFFIX 的字尾-V METHOD : 指定備份的方式--help : 顯示輔助說(shuō)明--version : 顯示版本

  范例 :

  將檔案 yy 產(chǎn)生一個(gè) symbolic link : zz

  ln -s yy zz

  將檔案 yy 產(chǎn)生一個(gè) hard link : zz

  ln yy xx

  名稱:locate

  使用權(quán)限:所有使用者

  使用方式: locate [-q] [-d ] [--database=]

  locate [-r ] [--regexp=]

  locate [-qv] [-o ] [--output=]

  locate [-e ] [-f ] <[-l ] [-c]

  <[-U ] [-u]>

  locate [-Vh] [--version] [--help]

  說(shuō)明:

  locate 讓使用者可以很快速的搜尋檔案系統(tǒng)內(nèi)是否有指定的檔案。其方法是先建立一個(gè)包括系統(tǒng)內(nèi)所有檔案名稱及路徑的資料庫(kù),之后當(dāng)尋找時(shí)就只需查詢這個(gè)資料庫(kù),而不必實(shí)際深入檔案系統(tǒng)之中了。

  在一般的 distribution 之中,資料庫(kù)的建立都被放在 contab 中自動(dòng)執(zhí)行。一般使用者在使用時(shí)只要用

  # locate your_file_name

  的型式就可以了。 參數(shù):

  -u

  -U

  建立資料庫(kù),-u 會(huì)由根目錄開(kāi)始,-U 則可以指定開(kāi)始的位置。

  -e

  將

  排除在尋找的范圍之外。

  -l

  如果 是 1.則啟動(dòng)安全模式。在安全模式下,使用者不會(huì)看到權(quán)限無(wú)法看到的檔案。這會(huì)始速度減慢,因?yàn)?locate 必須至實(shí)際的檔案系統(tǒng)中取得檔案的權(quán)限資料。

  -f

  將特定的檔案系統(tǒng)排除在外,例如我們沒(méi)有到理要把 proc 檔案系統(tǒng)中的檔案放在資料庫(kù)中。

  -q

  安靜模式,不會(huì)顯示任何錯(cuò)誤訊息。

  -n

  至多顯示 個(gè)輸出。

  -r

  使用正規(guī)運(yùn)算式 做尋找的條件。

  -o

  指定資料庫(kù)存的名稱。

  -d

  指定資料庫(kù)的路徑

  -h

  顯示輔助訊息

  -v

  顯示更多的訊息

  -V

  顯示程式的版本訊息 范例:

  locate chdrv : 尋找所有叫 chdrv 的檔案

  locate -n 100 a.out : 尋找所有叫 a.out 的檔案,但最多只顯示 100 個(gè)

  locate -u : 建立資料庫(kù)

  名稱 : ls

  使用權(quán)限 : 所有使用者

  使用方式 : ls [-alrtAFR] [name...]

  說(shuō)明 : 顯示指定工作目錄下之內(nèi)容(列出目前工作目錄所含之檔案及子目錄)。

  -a 顯示所有檔案及目錄 (ls內(nèi)定將檔案名或目錄名稱開(kāi)頭為"."的視為隱藏檔,不會(huì)列出)

  -l 除檔案名稱外,亦將檔案型態(tài)、權(quán)限、擁有者、檔案大小等資訊詳細(xì)列出

  -r 將檔案以相反次序顯示(原定依英文字母次序)

  -t 將檔案依建立時(shí)間之先后次序列出

  -A 同 -a ,但不列出 "." (目前目錄) 及 ".." (父目錄)

  -F 在列出的檔案名稱后加一符號(hào);例如可執(zhí)行檔則加 "*", 目錄則加 "/"

  -R 若目錄下有檔案,則以下之檔案亦皆依序列出

  范例:

  列出目前工作目錄下所有名稱是 s 開(kāi)頭的檔案,愈新的排愈后面 :

  ls -ltr s*

  將 /bin 目錄以下所有目錄及檔案詳細(xì)資料列出 :

  ls -lR /bin

  列出目前工作目錄下所有檔案及目錄;目錄于名稱后加 "/", 可執(zhí)行檔于名稱后加 "*" :

  ls -AF

  名稱:more

  使用權(quán)限:所有使用者

  使用方式:more [-dlfpcsu] [-num] [+/pattern] [+linenum] [fileNames..]

  說(shuō)明:類似 cat ,不過(guò)會(huì)以一頁(yè)一頁(yè)的顯示方便使用者逐頁(yè)閱讀,而最基本的指令就是按空白鍵(space)就往下一頁(yè)顯示,按 b 鍵就會(huì)往回(back)一頁(yè)顯示,而且還有搜尋字串的功能(與 vi 相似),使用中的說(shuō)明文件,請(qǐng)按 h 。

  參數(shù):-num 一次顯示的行數(shù)

  -d 提示使用者,在畫(huà)面下方顯示 [Press space to continue, q to quit.] ,如果使用者按錯(cuò)鍵,則會(huì)顯示 [Press h for instructions.] 而不是 嗶 聲

  -l 取消遇見(jiàn)特殊字元 ^L(送紙字元)時(shí)會(huì)暫停的功能

  -f 計(jì)算行數(shù)時(shí),以實(shí)際上的行數(shù),而非自動(dòng)換行過(guò)后的行數(shù)(有些單行字?jǐn)?shù)太長(zhǎng)的會(huì)被擴(kuò)展為兩行或兩行以上)

  -p 不以卷動(dòng)的方式顯示每一頁(yè),而是先清除螢?zāi)缓笤亠@示內(nèi)容

  -c 跟 -p 相似,不同的是先顯示內(nèi)容再清除其他舊資料

  -s 當(dāng)遇到有連續(xù)兩行以上的空白行,就代換為一行的空白行

  -u 不顯示下引號(hào) (根據(jù)環(huán)境變數(shù) TERM 指定的 terminal 而有所不同)

  +/ 在每個(gè)檔案顯示前搜尋該字串(pattern),然后從該字串之后開(kāi)始顯示

  +num 從第 num 行開(kāi)始顯示

  fileNames 欲顯示內(nèi)容的檔案,可為復(fù)數(shù)個(gè)數(shù)

  范例:

  more -s testfile 逐頁(yè)顯示 testfile 之檔案內(nèi)容,如有連續(xù)兩行以上空白行則以一行空白行顯示。

  more +20 testfile 從第 20 行開(kāi)始顯示 testfile 之檔案內(nèi)容。

  名稱:mv

  使用權(quán)限:所有使用者

  使用方式:

  mv [options] source dest

  mv [options] source... directory

  說(shuō)明:將一個(gè)檔案移至另一檔案,或?qū)?shù)個(gè)檔案移至另一目錄。

  參數(shù):-i 若目的地已有同名檔案,則先詢問(wèn)是否覆蓋舊檔。

  范例:

  將檔案 aaa 更名為 bbb :

  mv aaa bbb

  將所有的C語(yǔ)言程式移至 Finished 子目錄中 :

  mv -i *.c

  名稱:rm

  使用權(quán)限:所有使用者

  使用方式:rm [options] name...

  說(shuō)明:刪除檔案及目錄。

  把計(jì)?

  -i 刪除前逐一詢問(wèn)確認(rèn)。

  -f 即使原檔案屬性設(shè)為唯讀,亦直接刪除,無(wú)需逐一確認(rèn)。

  -r 將目錄及以下之檔案亦逐一刪除。

  范例:

  刪除所有C語(yǔ)言程式檔;刪除前逐一詢問(wèn)確認(rèn) :

  rm -i *.c

  將 Finished 子目錄及子目錄中所有檔案刪除 :

  rm -r Finished

  名稱:rmdir

  使用權(quán)限:于目前目錄有適當(dāng)權(quán)限的所有使用者

  使用方式: rmdir [-p] dirName

  說(shuō)明: 刪除空的目錄。

  參數(shù): -p 是當(dāng)子目錄被刪除后使它也成為空目錄的話,則順便一并刪除。

  范例:

  將工作目錄下,名為 AAA 的子目錄刪除 :

  rmdir AAA

  在工作目錄下的 BBB 目錄中,刪除名為 Test 的子目錄。若 Test 刪除后,BBB 目錄成為空目錄,則 BBB 亦予刪除。

  rmdir -p BBB/Test

  名稱:split

  使用權(quán)限:所有使用者

  使用方式:split [OPTION] [INPUT [PREFIX]]

  說(shuō)明:

  將一個(gè)檔案分割成數(shù)個(gè)。而從 INPUT 分割輸出成固定大小的檔案,其檔名依序?yàn)?PREFIXaa, PREFIXab...;PREFIX 預(yù)設(shè)值為 `x。若沒(méi)有 INPUT 檔或?yàn)?`-,則從標(biāo)準(zhǔn)輸入讀進(jìn)資料。

  匡兜?

  -b, --bytes=SIZE

  SIZE 值為每一輸出檔案的大小,單位為 byte。

  -C, --line-bytes=SIZE

  每一輸出檔中,單行的最大 byte 數(shù)。

  -l, --lines=NUMBER

  NUMBER 值為每一輸出檔的列數(shù)大小。

  -NUMBER

  與 -l NUMBER 相同。

  --verbose

  于每個(gè)輸出檔被開(kāi)啟前,列印出偵錯(cuò)資訊到標(biāo)準(zhǔn)錯(cuò)誤輸出。

  --help

  顯示輔助資訊然后離開(kāi)。

  --version

  列出版本資訊然后離開(kāi)。

  SIZE 可加入單位: b 代表 512, k 代表 1K, m 代表 1 Meg。

  范例:

  PostgresSQL 大型資料庫(kù)備份與回存:

  因 Postgres 允許表格大過(guò)你系統(tǒng)檔案的最大容量,所以要將表格 dump 到單一的檔案可能會(huì)有問(wèn)題,使用 split進(jìn)行檔案分割。

  % pg_dump dbname | split -b 1m - filename.dump.

  重新載入

  % createdb dbname

  % cat filename.dump.* | pgsql dbname

  名稱:touch

  使用權(quán)限:所有使用者

  使用方式:

  touch [-acfm]

  [-r reference-file] [--file=reference-file]

  [-t MMDDhhmm[[CC]YY][.ss]]

  [-d time] [--date=time] [--time={atime,access,use,mtime,modify}]

  [--no-create] [--help] [--version]

  file1 [file2 ...]

  說(shuō)明:

  touch 指令改變檔案的時(shí)間記錄。 ls -l 可以顯示檔案的時(shí)間記錄。

  參數(shù):

  a 改變檔案的讀取時(shí)間記錄。

  m 改變檔案的修改時(shí)間記錄。

  c 假如目的檔案不存在,不會(huì)建立新的檔案。與 --no-create 的效果一樣。

  f 不使用,是為了與其他 unix 系統(tǒng)的相容性而保留。

  r 使用參考檔的時(shí)間記錄,與 --file 的效果一樣。

  d 設(shè)定時(shí)間與日期,可以使用各種不同的格式。

  t 設(shè)定檔案的時(shí)間記錄,格式與 date 指令相同。

  --no-create 不會(huì)建立新檔案。

  --help 列出指令格式。

  --version 列出版本訊息。

  范例:

  最簡(jiǎn)單的使用方式,將檔案的時(shí)候記錄改為現(xiàn)在的時(shí)間。若檔案不存在,系統(tǒng)會(huì)建立一個(gè)新的檔案。

  touch file

  touch file1 file2

  將 file 的時(shí)間記錄改為 5 月 6 日 18 點(diǎn) 3 分,公元兩千年。時(shí)間的格式可以參考 date 指令,至少需輸入 MMDDHHmm ,就是月日時(shí)與分。

  touch -c -t 05061803 file

  touch -c -t 050618032000 file

  將 file 的時(shí)間記錄改變成與 referencefile 一樣。

  touch -r referencefile file

  將 file 的時(shí)間記錄改成 5 月 6 日 18 點(diǎn) 3 分,公元兩千年。時(shí)間可以使用 am, pm 或是 24 小時(shí)的格式,日期可以使用其他格式如 6 May 2000 。

  touch -d "6:03pm" file

  touch -d "05/06/2000" file

  touch -d "6:03pm 05/06/2000" file

  名稱 : at

  使用權(quán)限 : 所有使用者

  使用方式 : at -V [-q queue] [-f file] [-mldbv] TIME

  說(shuō)明 : at 可以讓使用者指定在 TIME 這個(gè)特定時(shí)刻執(zhí)行某個(gè)程式或指令,TIME 的格式是 HH:MM其中的 HH 為小時(shí),MM 為分鐘,甚至你也可以指定 am, pm, midnight, noon, teatime(就是下午 4 點(diǎn)鍾)等口語(yǔ)詞。

  如果想要指定超過(guò)一天內(nèi)的時(shí)間,則可以用 MMDDYY 或者 MM/DD/YY 的格式,其中 MM 是分鐘,DD 是第幾日,YY 是指年份。另外,使用者甚至也可以使用像是 now + 時(shí)間間隔來(lái)彈性指定時(shí)間,其中的時(shí)間間隔可以是 minutes, hours, days, weeks?

  另外,使用者也可指定 today 或 tomorrow 來(lái)表示今天或明天。當(dāng)指定了時(shí)間并按下 enter 之后,at 會(huì)進(jìn)入交談模式并要求輸入指令或程式,當(dāng)你輸入完后按下 ctrl+D 即可完成所有動(dòng)作,至于執(zhí)行的結(jié)果將會(huì)寄回你的帳號(hào)中。

  把計(jì) :

  -V : 印出版本編號(hào)

  -q : 使用指定的佇列(Queue)來(lái)儲(chǔ)存,at 的資料是存放在所謂的 queue 中,使用者可以同時(shí)使用多個(gè) queue,而 queue 的編號(hào)為 a, b, c... z 以及 A, B, ... Z 共 52 個(gè)

  -m : 即使程式/指令執(zhí)行完成后沒(méi)有輸出結(jié)果, 也要寄封信給使用者

  -f file : 讀入預(yù)先寫(xiě)好的命令檔。使用者不一定要使用交談模式來(lái)輸入,可以先將所有的指定先寫(xiě)入檔案后再一次讀入

  -l : 列出所有的指定 (使用者也可以直接使用 atq 而不用 at -l)

  -d : 刪除指定 (使用者也可以直接使用 atrm 而不用 at -d)

  -v : 列出所有已經(jīng)完成但尚未刪除的指定

  例子 :

  三天后的下午 5 點(diǎn)鍾執(zhí)行 /bin/ls :

  at 5pm + 3 days /bin/ls

  三個(gè)星期后的下午 5 點(diǎn)鍾執(zhí)行 /bin/ls :

  at 5pm + 2 weeks /bin/ls

  明天的 17:20 執(zhí)行 /bin/date :

  at 17:20 tomorrow /bin/date

  1999 年的最后一天的最后一分鐘印出 the end of world !

  at 23:59 12/31/1999 echo the end of world !

  名稱:cal

  使用權(quán)限:所有使用者

  使用方式:cal [-mjy] [month [year]]

  說(shuō)明:

  顯示日歷。若只有一個(gè)參數(shù),則代表年份(1-9999),顯示該年的年歷。年份必須全部寫(xiě)出:``cal 89\ 將不會(huì)是顯示 1989 年的年歷。使用兩個(gè)參數(shù),則表示月份及年份。若沒(méi)有參數(shù)則顯示這個(gè)月的月歷。

  1752 年 9 月第 3 日起改用西洋新歷,因這時(shí)大部份的國(guó)家都采用新歷,有 10 天被去除,所以該月份的月歷有些不同。在此之前為西洋舊歷。

  匡兜?

  -m : 以星期一為每周的第一天方式顯示。

  -j : 以凱撒歷顯示,即以一月一日起的天數(shù)顯示。

  -y : 顯示今年年歷。

  范例:

  cal : 顯示本月的月歷。

  [root@mylinux /root]# date

  Tue Aug 15 08:00:18 CST 2000

  [root@mylinux /root]# cal

  August 2000

  Su Mo Tu We Th Fr Sa

  1 2 3 4 5

  6 7 8 9 10 11 12

  13 14 15 16 17 18 19

  20 21 22 23 24 25 26

  27 28 29 30 31

  [root@mylinux /root]#

  cal 2001 : 顯示公元 2001 年年歷。

  [root@mylinux /root]# cal 2001

  2001

  January February March

  Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa

  1 2 3 4 5 6 1 2 3 1 2 3

  7 8 9 10 11 12 13 4 5 6 7 8 9 10 4 5 6 7 8 9 10

  14 15 16 17 18 19 20 11 12 13 14 15 16 17 11 12 13 14 15 16 17

  21 22 23 24 25 26 27 18 19 20 21 22 23 24 18 19 20 21 22 23 24

  28 29 30 31 25 26 27 28 25 26 27 28 29 30 31

  April May June

  Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa

  1 2 3 4 5 6 7 1 2 3 4 5 1 2

  8 9 10 11 12 13 14 6 7 8 9 10 11 12 3 4 5 6 7 8 9

  15 16 17 18 19 20 21 13 14 15 16 17 18 19 10 11 12 13 14 15 16

  22 23 24 25 26 27 28 20 21 22 23 24 25 26 17 18 19 20 21 22 23

  29 30 27 28 29 30 31 24 25 26 27 28 29 30

  July August September

  Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa

  1 2 3 4 5 6 7 1 2 3 4 1

  8 9 10 11 12 13 14 5 6 7 8 9 10 11 2 3 4 5 6 7 8

  15 16 17 18 19 20 21 12 13 14 15 16 17 18 9 10 11 12 13 14 15

  22 23 24 25 26 27 28 19 20 21 22 23 24 25 16 17 18 19 20 21 22

  29 30 31 26 27 28 29 30 31 23 24 25 26 27 28 29

  30

  October November December

  Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa

  1 2 3 4 5 6 1 2 3 1

  7 8 9 10 11 12 13 4 5 6 7 8 9 10 2 3 4 5 6 7 8

  14 15 16 17 18 19 20 11 12 13 14 15 16 17 9 10 11 12 13 14 15

  21 22 23 24 25 26 27 18 19 20 21 22 23 24 16 17 18 19 20 21 22

  28 29 30 31 25 26 27 28 29 30 23 24 25 26 27 28 29

  30 31

  [root@mylinux /root]#

  cal 5 2001 : 顯示公元 2001 年 5 月月歷。

  [root@mylinux /root]# cal 5 2001

  May 2001

  Su Mo Tu We Th Fr Sa

  1 2 3 4 5

  6 7 8 9 10 11 12

  13 14 15 16 17 18 19

  20 21 22 23 24 25 26

  27 28 29 30 31

  [root@mylinux /root]#

  cal -m : 以星期一為每周的第一天方式,顯示本月的月歷。

  [root@mylinux /root]# cal -m

  August 2000

  Mo Tu We Th Fr Sa Su

  1 2 3 4 5 6

  7 8 9 10 11 12 13

  14 15 16 17 18 19 20

  21 22 23 24 25 26 27

  28 29 30 31

  [root@mylinux /root]#

  cal -jy : 以一月一日起的天數(shù)顯示今年的年歷。

  [root@mylinux /root]# cal -jy

  2000

  January February

  Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat

  1 32 33 34 35 36

  2 3 4 5 6 7 8 37 38 39 40 41 42 43

  9 10 11 12 13 14 15 44 45 46 47 48 49 50

  16 17 18 19 20 21 22 51 52 53 54 55 56 57

  23 24 25 26 27 28 29 58 59 60

  30 31

  March April

  Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat

  61 62 63 64 92

  65 66 67 68 69 70 71 93 94 95 96 97 98 99

  72 73 74 75 76 77 78 100 101 102 103 104 105 106

  79 80 81 82 83 84 85 107 108 109 110 111 112 113

  86 87 88 89 90 91 114 115 116 117 118 119 120

  121

  May June

  Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat

  122 123 124 125 126 127 153 154 155

  128 129 130 131 132 133 134 156 157 158 159 160 161 162

  135 136 137 138 139 140 141 163 164 165 166 167 168 169

  142 143 144 145 146 147 148 170 171 172 173 174 175 176

  149 150 151 152 177 178 179 180 181 182

  July August

  Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat

  183 214 215 216 217 218

  184 185 186 187 188 189 190 219 220 221 222 223 224 225

  191 192 193 194 195 196 197 226 227 228 229 230 231 232

  198 199 200 201 202 203 204 233 234 235 236 237 238 239

  205 206 207 208 209 210 211 240 241 242 243 244

  212 213

  September October

  Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat

  245 246 275 276 277 278 279 280 281

  247 248 249 250 251 252 253 282 283 284 285 286 287 288

  254 255 256 257 258 259 260 289 290 291 292 293 294 295

  261 262 263 264 265 266 267 296 297 298 299 300 301 302

  268 269 270 271 272 273 274 303 304 305

  November December

  Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat

  306 307 308 309 336 337

  310 311 312 313 314 315 316 338 339 340 341 342 343 344

  317 318 319 320 321 322 323 345 346 347 348 349 350 351

  324 325 326 327 328 329 330 352 353 354 355 356 357 358

  331 332 333 334 335 359 360 361 362 363 364 365

  366

  [root@mylinux /root]#

  名稱 : crontab

  使用權(quán)限 : 所有使用者

  使用方式 :

  crontab [ -u user ] filecrontab [ -u user ] { -l | -r | -e }

  說(shuō)明 :

  crontab 是用來(lái)讓使用者在固定時(shí)間或固定間隔執(zhí)行程式之用,換句話說(shuō),也就是類似使用者的時(shí)程表。-u user 是指設(shè)定指定 user 的時(shí)程表,這個(gè)前提是你必須要有其權(quán)限(比如說(shuō)是 root)才能夠指定他人的時(shí)程表。如果不使用 -u user 的話,就是表示設(shè)定自己的時(shí)程表。

  餐數(shù) :

  -e : 執(zhí)行文字編輯器來(lái)設(shè)定時(shí)程表,內(nèi)定的文字編輯器是 VI,如果你想用別的文字編輯器,則請(qǐng)先設(shè)定 VISUAL 環(huán)境變數(shù)來(lái)指定使用那個(gè)文字編輯器(比如說(shuō) setenv VISUAL joe)

  -r : 刪除目前的時(shí)程表

  -l : 列出目前的時(shí)程表

  時(shí)程表的格式如下 :

  f1 f2 f3 f4 f5 program

  其中 f1 是表示分鐘,f2 表示小時(shí),f3 表示一個(gè)月份中的第幾日,f4 表示月份,f5 表示一個(gè)星期中的第幾天。program 表示要執(zhí)行的程式。

  當(dāng) f1 為 * 時(shí)表示每分鐘都要執(zhí)行 program,f2 為 * 時(shí)表示每小時(shí)都要執(zhí)行程式,其余類推

  當(dāng) f1 為 a-b 時(shí)表示從第 a 分鐘到第 b 分鐘這段時(shí)間內(nèi)要執(zhí)行,f2 為 a-b 時(shí)表示從第 a 到第 b 小時(shí)都要執(zhí)行,其余類推

  當(dāng) f1 為 */n 時(shí)表示每 n 分鐘個(gè)時(shí)間間隔執(zhí)行一次,f2 為 */n 表示每 n 小時(shí)個(gè)時(shí)間間隔執(zhí)行一次,其余類推

  當(dāng) f1 為 a, b, c,... 時(shí)表示第 a, b, c,... 分鐘要執(zhí)行,f2 為 a, b, c,... 時(shí)表示第 a, b, c...個(gè)小時(shí)要執(zhí)行,其余類推

  使用者也可以將所有的設(shè)定先存放在檔案 file 中,用 crontab file 的方式來(lái)設(shè)定時(shí)程表。

  例子 :

  每月每天每小時(shí)的第 0 分鐘執(zhí)行一次 /bin/ls :

  0 7 * * * /bin/ls

  在 12 月內(nèi), 每天的早上 6 點(diǎn)到 12 點(diǎn)中,每隔 20 分鐘執(zhí)行一次 /usr/bin/backup :

  0 6-12/3 * 12 * /usr/bin/backup

  周一到周五每天下午 5:00 寄一封信給 alex@domain.name :

  0 17 * * 1-5 mail -s "hi" alex@domain.name < /tmp/maildata

  每月每天的午夜 0 點(diǎn) 20 分, 2 點(diǎn) 20 分, 4 點(diǎn) 20 分....執(zhí)行 echo "haha"

  20 0-23/2 * * * echo "haha"

  注意 :

  當(dāng)程式在你所指定的時(shí)間執(zhí)行后,系統(tǒng)會(huì)寄一封信給你,顯示該程式執(zhí)行的內(nèi)容,若是你不希望收到這樣的信,請(qǐng)?jiān)诿恳恍锌找桓裰蠹由?> /dev/null 2>&1 即可。

  名稱 : date

  使用權(quán)限 : 所有使用者

  使用方式 :

  date [-u] [-d datestr] [-s datestr] [--utc] [--universal] [--date=datestr] [--set=datestr] [--help] [--version] [+FORMAT] [MMDDhhmm[[CC]YY][.ss]]

  說(shuō)明 :

  date 可以用來(lái)顯示或設(shè)定系統(tǒng)的日期與時(shí)間,在顯示方面,使用者可以設(shè)定欲顯示的格式,格式設(shè)定為一個(gè)加號(hào)后接數(shù)個(gè)標(biāo)記,其中可用的標(biāo)記列表如下 :

  時(shí)間方面 :

  % : 印出 %

  %n : 下一行

  %t : 跳格

  %H : 小時(shí)(00..23)

  %I : 小時(shí)(01..12)

  %k : 小時(shí)(0..23)

  %l : 小時(shí)(1..12)

  %M : 分鐘(00..59)

  %p : 顯示本地 AM 或 PM

  %r : 直接顯示時(shí)間 (12 小時(shí)制,格式為 hh:mm:ss [AP]M)

  %s : 從 1970 年 1 月 1 日 00:00:00 UTC 到目前為止的秒數(shù)

  %S : 秒(00..61)

  %T : 直接顯示時(shí)間 (24 小時(shí)制)

  %X : 相當(dāng)于 %H:%M:%S

  %Z : 顯示時(shí)區(qū)

  日期方面 :

  %a : 星期幾 (Sun..Sat)

  %A : 星期幾 (Sunday..Saturday)

  %b : 月份 (Jan..Dec)

  %B : 月份 (January..December)

  %c : 直接顯示日期與時(shí)間

  %d : 日 (01..31)

  %D : 直接顯示日期 (mm/dd/yy)

  %h : 同 %b

  %j : 一年中的第幾天 (001..366)

  %m : 月份 (01..12)

  %U : 一年中的第幾周 (00..53) (以 Sunday 為一周的第一天的情形)

  %w : 一周中的第幾天 (0..6)

  %W : 一年中的第幾周 (00..53) (以 Monday 為一周的第一天的情形)

  %x : 直接顯示日期 (mm/dd/yy)

  %y : 年份的最后兩位數(shù)字 (00.99)

  %Y : 完整年份 (0000..9999)

  若是不以加號(hào)作為開(kāi)頭,則表示要設(shè)定時(shí)間,而時(shí)間格式為 MMDDhhmm[[CC]YY][.ss],其中 MM 為月份,DD 為日,hh 為小時(shí),mm 為分鐘,CC 為年份前兩位數(shù)字,YY 為年份后兩位數(shù)字,ss 為秒數(shù)

  把計(jì) :

  -d datestr : 顯示 datestr 中所設(shè)定的時(shí)間 (非系統(tǒng)時(shí)間)

  --help : 顯示輔助訊息

  -s datestr : 將系統(tǒng)時(shí)間設(shè)為 datestr 中所設(shè)定的時(shí)間

  -u : 顯示目前的格林威治時(shí)間

  --version : 顯示版本編號(hào)

  例子 :

  顯示時(shí)間后跳行,再顯示目前日期 :

  date +%T%n%D

  顯示月份與日數(shù) :

  date +%B %d

  顯示日期與設(shè)定時(shí)間(12:34:56) :

  date --date 12:34:56

  注意 :

  當(dāng)你不希望出現(xiàn)無(wú)意義的 0 時(shí)(比如說(shuō) 1999/03/07),則可以在標(biāo)記中插入 - 符號(hào),比如說(shuō) date +%-H:%-M:%-S 會(huì)把時(shí)分秒中無(wú)意義的 0 給去掉,像是原本的 08:09:04 會(huì)變?yōu)?8:9:4。另外,只有取得權(quán)限者(比如說(shuō) root)才能設(shè)定系統(tǒng)時(shí)間。

  當(dāng)你以 root 身分更改了系統(tǒng)時(shí)間之后,請(qǐng)記得以 clock -w 來(lái)將系統(tǒng)時(shí)間寫(xiě)入 CMOS 中,這樣下次重新開(kāi)機(jī)時(shí)系統(tǒng)時(shí)間才會(huì)持續(xù)抱持最新的正確值。

  名稱 : sleep

  使用權(quán)限 : 所有使用者

  使用方式 : sleep [--help] [--version] number[smhd]

  說(shuō)明 : sleep 可以用來(lái)將目前動(dòng)作延遲一段時(shí)間

  參數(shù)說(shuō)明 :

  --help : 顯示輔助訊息

  --version : 顯示版本編號(hào)

  number : 時(shí)間長(zhǎng)度,后面可接 s、m、h 或 d

  其中 s 為秒,m 為 分鐘,h 為小時(shí),d 為日數(shù)

  例子 :

  顯示目前時(shí)間后延遲 1 分鐘,之后再次顯示時(shí)間 :

  date;sleep 1m;date

  名稱: time

  使用權(quán)限: 所有使用者

  使用方式: time [options] COMMAND [arguments]

  說(shuō)明: time 指令的用途,在于量測(cè)特定指令執(zhí)行時(shí)所需消耗的時(shí)間及系統(tǒng)資源等資訊。例如 CPU 時(shí)間、記憶體、輸入輸出等等。需要特別注意的是,部分資訊在 Linux 上顯示不出來(lái)。這是因?yàn)樵?Linux 上部分資源的分配函式與 time 指令所預(yù)設(shè)的方式并不相同,以致于 time 指令無(wú)法取得這些資料。

  把計(jì)?

  -o or --output=FILE

  設(shè)定結(jié)果輸出檔。這個(gè)選項(xiàng)會(huì)將 time 的輸出寫(xiě)入 所指定的檔案中。如果檔案已經(jīng)存在,系統(tǒng)將覆寫(xiě)其內(nèi)容。

  -a or --append

  配合 -o 使用,會(huì)將結(jié)果寫(xiě)到檔案的末端,而不會(huì)覆蓋掉原來(lái)的內(nèi)容。

  -f FORMAT or --format=FORMAT

  以 FORMAT 字串設(shè)定顯示方式。當(dāng)這個(gè)選項(xiàng)沒(méi)有被設(shè)定的時(shí)候,會(huì)用系統(tǒng)預(yù)設(shè)的格式。不過(guò)你可以用環(huán)境變數(shù) time 來(lái)設(shè)定這個(gè)格式,如此一來(lái)就不必每次登入系統(tǒng)都要設(shè)定一次。

  一般設(shè)定上,你可以用

  \t

  表示跳欄,或者是用

  \n

  表示換行。每一項(xiàng)資料要用 % 做為前導(dǎo)。如果要在字串中使用百分比符號(hào),就用 。(學(xué)過(guò) C 語(yǔ)言的人大概會(huì)覺(jué)得很熟悉)

  time 指令可以顯示的資源有四大項(xiàng),分別是:

  Time resources

  Memory resources

  IO resources

  Command info

  詳細(xì)的內(nèi)容如下:

  Time Resources

  E 執(zhí)行指令所花費(fèi)的時(shí)間,格式是:[hour]:minute:second。請(qǐng)注意這個(gè)數(shù)字并不代表實(shí)際的 CPU 時(shí)間。

  e 執(zhí)行指令所花費(fèi)的時(shí)間,單位是秒。請(qǐng)注意這個(gè)數(shù)字并不代表實(shí)際的 CPU 時(shí)間。

  S 指令執(zhí)行時(shí)在核心模式(kernel mode)所花費(fèi)的時(shí)間,單位是秒。

  U 指令執(zhí)行時(shí)在使用者模式(user mode)所花費(fèi)的時(shí)間,單位是秒。

  P 執(zhí)行指令時(shí) CPU 的占用比例。其實(shí)這個(gè)數(shù)字就是核心模式加上使用者模式的 CPU 時(shí)間除以總時(shí)間。

  Memory Resources

  M 執(zhí)行時(shí)所占用的實(shí)體記憶體的最大值。單位是 KB

  t 執(zhí)行時(shí)所占用的實(shí)體記憶體的平均值,單位是 KB

  K 執(zhí)行程序所占用的記憶體總量(stack+data+text)的平均大小,單位是 KB

  D 執(zhí)行程序的自有資料區(qū)(unshared data area)的平均大小,單位是 KB

  p 執(zhí)行程序的自有堆疊(unshared stack)的平均大小,單位是 KB

  X 執(zhí)行程序間共享內(nèi)容(shared text)的平均值,單位是 KB

  Z 系統(tǒng)記憶體頁(yè)的大小,單位是 byte。對(duì)同一個(gè)系統(tǒng)來(lái)說(shuō)這是個(gè)常數(shù)

  IO Resources

  F 此程序的主要記憶體頁(yè)錯(cuò)誤發(fā)生次數(shù)。所謂的主要記憶體頁(yè)錯(cuò)誤是指某一記憶體頁(yè)已經(jīng)置換到置換檔(swap file)中,而且已經(jīng)分配給其他程序。此時(shí)該頁(yè)的內(nèi)容必須從置換檔里再讀出來(lái)。

  R 此程序的次要記憶體頁(yè)錯(cuò)誤發(fā)生次數(shù)。所謂的次要記憶體頁(yè)錯(cuò)誤是指某一記憶體頁(yè)雖然已經(jīng)置換到置換檔中,但尚未分配給其他程序。此時(shí)該頁(yè)的內(nèi)容并未被破壞,不必從置換檔里讀出來(lái)

  W 此程序被交換到置換檔的次數(shù)

  c 此程序被強(qiáng)迫中斷(像是分配到的 CPU 時(shí)間耗盡)的次數(shù)

  w 此程序自愿中斷(像是在等待某一個(gè) I/O 執(zhí)行完畢,像是磁碟讀取等等)的次數(shù)

  I 此程序所輸入的檔案數(shù)

  O 此程序所輸出的檔案數(shù)

  r 此程序所收到的 Socket Message

  s 此程序所送出的 Socket Message

  k 此程序所收到的信號(hào) ( Signal )數(shù)量

  Command Info

  C 執(zhí)行時(shí)的參數(shù)以及指令名稱

  x 指令的結(jié)束代碼 ( Exit Status )

  -p or --portability

  這個(gè)選項(xiàng)會(huì)自動(dòng)把顯示格式設(shè)定成為:

  real %e

  user %U

  sys %S

  這么做的目的是為了與 POSIX 規(guī)格相容。

  -v or --verbose

  這個(gè)選項(xiàng)會(huì)把所有程式中用到的資源通通列出來(lái),不但如一般英文語(yǔ)句,還有說(shuō)明。對(duì)不想花時(shí)間去熟習(xí)格式設(shè)定或是剛剛開(kāi)始接觸這個(gè)指令的人相當(dāng)有用。

  范例:

  利用下面的指令

  time -v ps -aux

  我們可以獲得執(zhí)行 ps -aux 的結(jié)果和所花費(fèi)的系統(tǒng)資源。如下面所列的資料:

  USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

  root 1 0.0 0.4 1096 472 ? S Apr19 0:04 init

  root 2 0.0 0.0 0 0 ? SW Apr19 0:00 [kflushd]

  root 3 0.0 0.0 0 0 ? SW Apr19 0:00 [kpiod]

  ......

  root 24269 0.0 1.0 2692 996 pts/3 R 12:16 0:00 ps -aux

  Command being timed: "ps -aux"

  User time (seconds): 0.05

  System time (seconds): 0.06

  Percent of CPU this job got: 68%

  Elapsed (wall clock) time (h:mm:ss or m:ss): 0:00.16

  Average shared text size (kbytes): 0

  Average unshared data size (kbytes): 0

  Average stack size (kbytes): 0

  Average total size (kbytes): 0

  Maximum resident set size (kbytes): 0

  Average resident set size (kbytes): 0

  Major (requiring I/O) page faults: 238

  Minor (reclaiming a frame) page faults: 46

  Voluntary context switches: 0

  Involuntary context switches: 0

  Swaps: 0

  File system inputs: 0

  File system outputs: 0

  Socket messages sent: 0

  Socket messages received: 0

  Signals delivered: 0

  Page size (bytes): 4096

  Exit status: 0

  名稱: uptime

  使用權(quán)限: 所有使用者

  使用方式: uptime [-V]

  說(shuō)明: uptime 提供使用者下面的資訊,不需其他參數(shù):

  現(xiàn)在的時(shí)間

  系統(tǒng)開(kāi)機(jī)運(yùn)轉(zhuǎn)到現(xiàn)在經(jīng)過(guò)的時(shí)間

  連線的使用者數(shù)量

  最近一分鐘,五分鐘和十五分鐘的系統(tǒng)負(fù)載

  參數(shù): -V 顯示版本資訊。

  范例: uptime

  其結(jié)果為:

  10:41am up 5 days, 10 min, 1 users, load average: 0.00, 0.00, 1.99

  名稱:chfn

  使用權(quán)限:所有使用者

  用法:shell>> chfn

  說(shuō)明:提供使用者更改個(gè)人資訊,用于 finger and mail username

  范例:

  shell>> chfn

  Changing finger information for user

  Password: [del]

  Name[]:Johnney Huang ### 提供 finger 時(shí)的資料

  Office[]:NCCU

  Office Phone[]: [del]

  Home Phone[]: [del]

  名稱:chsh

  使用權(quán)限:所有使用者

  用法:shell>> chsh

  說(shuō)明:更改使用者 shell 設(shè)定

  范例:

  shell>> chsh

  Changing fihanging shell for user1

  Password: [del]

  New shell [/bin/tcsh]: ### [是目前使用的 shell]

  [del]

  shell>> chsh -l ### 展示 /etc/shells 檔案內(nèi)容

  /bin/bash

  /bin/sh

  /bin/ash

  /bin/bsh

  /bin/tcsh

  /bin/csh

  ” finger [返回]

  名稱: finger

  使用權(quán)限: 所有使用者

  使用方式: finger [options] user[@address]

  說(shuō)明:finger 可以讓使用者查詢一些其他使用者的資料。會(huì)列出來(lái)的資料有:

  Login Name

  User Name

  Home directory

  Shell

  Login status

  mail status

  .plan

  .project

  .forward

  其中 .plan ,.project 和 .forward 就是使用者在他的 Home Directory 里的 .plan , .project 和 .forward 等檔案里的資料。如果沒(méi)有就沒(méi)有。finger 指令并不限定于在同一伺服器上查詢,也可以尋找某一個(gè)遠(yuǎn)端伺服器上的使用者。只要給一個(gè)像是 E-mail address 一般的地址即可。

  把計(jì)?

  -l

  多行顯示。

  -s

  單行顯示。這個(gè)選項(xiàng)只顯示登入名稱,真實(shí)姓名,終端機(jī)名稱,閑置時(shí)間,登入時(shí)間,辦公室號(hào)碼及電話號(hào)碼。如果所查詢的使用者是遠(yuǎn)端伺服器的使用者,這個(gè)選項(xiàng)無(wú)效。

  范例:下列指令可以查詢本機(jī)管理員的資料:

  finger root

  其結(jié)果如下:

  Login: root Name: root

  Directory: /root Shell: /bin/bash

  Never logged in.

  No mail.

  No Plan.

  名稱:last

  使用權(quán)限:所有使用者

  使用方式:shell>> last [options]

  說(shuō)明:顯示系統(tǒng)開(kāi)機(jī)以來(lái)獲是從每月初登入者的訊息

  把計(jì)?

  -R 省略 hostname 的欄位

  -num 展示前 num 個(gè)

  username 展示 username 的登入訊息

  tty 限制登入訊息包含終端機(jī)代號(hào)

  范例:

  shell>> last -R -2

  johnney pts/1 Mon Aug 14 20:42 still logged in

  johnney pts/0 Mon Aug 14 19:59 still logged in

  wtmp begins Tue Aug 1 09:01:10 2000 ### /var/log/wtmp

  shell>> last -2 minery

  minery pts/0 140.119.217.115 Mon Aug 14 18:37 - 18:40 (00:03)

  minery pts/0 140.119.217.115 Mon Aug 14 17:22 - 17:24 (00:02)

  wtmp begins Tue Aug 1 09:01:10 2000

  名稱:login

  這個(gè)命令都不會(huì)就不要干算了!呵呵我也不在這里多費(fèi)筆墨耽誤大家美好青春了^_^

  名稱:passwd

  使用權(quán)限:所有使用者

  使用方式:passwd [-k] [-l] [-u [-f]] [-d] [-S] [username]

  說(shuō)明:用來(lái)更改使用者的密碼

  參數(shù):

  -k

  -l

  -u

  -f

  -d 關(guān)閉使用者的密碼認(rèn)證功能, 使用者在登入時(shí)將可以不用輸入密碼, 只有具備 root 權(quán)限的使用者方可使用.

  -S 顯示指定使用者的密碼認(rèn)證種類, 只有具備 root 權(quán)限的使用者方可使用.

  [username] 指定帳號(hào)名稱.

  名稱 : who

  使用權(quán)線 : 所有使用者都可使用

  使用方式 : who - [husfV] [user]

  說(shuō)明 : 顯示系統(tǒng)中有那些使用者正在上面,顯示的資料包含了使用者 ID,使用的終端機(jī),從那邊連上來(lái)的,上線時(shí)間,呆滯時(shí)間,CPU 使用量,動(dòng)作等等。

  把計(jì) :

  -h : 不要顯示標(biāo)題列

  -u : 不要顯示使用者的動(dòng)作/工作

  -s : 使用簡(jiǎn)短的格式來(lái)顯示

  -f : 不要顯示使用者的上線位置

  -V : 顯示程式版本

  名稱:/etc/aliases

  使用權(quán)限:系統(tǒng)管理者

  使用方式: 請(qǐng)用 newaliases 更新資料庫(kù)

  說(shuō)明:

  sendmail 會(huì)使用一個(gè)在 /etc/aliases 中的檔案做使用者名稱轉(zhuǎn)換的動(dòng)作。當(dāng) sendmail 收到一個(gè)要送給 xxx 的信時(shí),它會(huì)依據(jù) aliases檔的內(nèi)容送給另一個(gè)使用者。這個(gè)功能可以創(chuàng)造一個(gè)只有在信件系統(tǒng)內(nèi)才有效的使用者。例如 mailing list 就會(huì)用到這個(gè)功能,在 mailinglist 中,我們可能會(huì)創(chuàng)造一個(gè)叫 redlinux@link.ece.uci.edu 的

  mailinglist,但實(shí)際上并沒(méi)有一個(gè)叫 redlinux 的使用者。實(shí)際 aliases 檔的內(nèi)容是將送給這個(gè)使用者的信都收給 mailing list 處理程式負(fù)責(zé)分送的工作。

  /etc/aliases 是一個(gè)文字模式的檔案,sendmail 需要一個(gè)二進(jìn)位格式的 /etc/aliases.db。newaliases 的功能傳是將 /etc/aliases 轉(zhuǎn)換成一個(gè) sendmail 所能了解的資料庫(kù)。范例:

  # newaliases

  下面命令會(huì)做相同的事,

  # sendmail -bi

  相關(guān)命令:

  mail, mailq, newaliases, sendmail

  ” mail [返回]

  名稱:mail

  使用權(quán)限:所有使用者

  使用方式:mail [-iInv] [-s subject] [-c cc-addr] [-b bcc-addr] user1 [user 2 ...]

  說(shuō)明:

  mail 不僅只是一個(gè)指令, mail 還是一個(gè)電子郵件程式,不過(guò)利用 mail 來(lái)讀信的人應(yīng)該很少吧!對(duì)于系統(tǒng)管理者來(lái)說(shuō) mail 就很有用,因?yàn)楣芾碚呖梢杂?mail 寫(xiě)成 script ,定期寄一些備忘錄提醒系統(tǒng)的使用者。

  參數(shù):

  i 忽略 tty 的中斷訊號(hào)。 (interrupt)

  I 強(qiáng)迫設(shè)成互動(dòng)模式。 (Interactive)

  v 列印出訊息,例如送信的地點(diǎn)、狀態(tài)等等。 (verbose)

  n 不讀入 mail.rc 設(shè)定檔。

  s 郵件標(biāo)題。

  c cc 郵件地址。

  b bcc 郵件地址。

  范例:

  將信件送給一個(gè)或以上的電子郵件地址,由于沒(méi)有加入其他的選項(xiàng),使用者必須輸入標(biāo)題與信件的內(nèi)容等。而 user2 沒(méi)有主機(jī)位置,就會(huì)送給郵件伺服器的 user2 使用者。

  mail user1@email.address

  mail user1@email.address user2

  將 mail.txt 的內(nèi)容寄給 user2 同時(shí) cc 給 user1 。如果將這一行指令設(shè)成 cronjob 就可以定時(shí)將備忘錄寄給系統(tǒng)使用者。

  mail -s 標(biāo)題 -c user1 user2 < mail.txt

  指令:mesg

  使用權(quán)限 : 所有使用者

  使用方式 : mesg [y|n]

  說(shuō)明 : 決定是否允許其他人傳訊息到自己的終端機(jī)介面

  把計(jì) ?

  y : 允許訊息傳到終端機(jī)介面上。

  n : 不允許訊息傳到終端機(jī)介面上 。

  如果沒(méi)有設(shè)定,則訊息傳遞與否則由終端機(jī)界面目前狀態(tài)而定。

  例子 :

  改變目前訊息設(shè)定,改成不允許訊息傳到終端機(jī)介面上 :

  mesg n

  與 mesg 相關(guān)的指令有: talk,write,wall。

  名稱:/etc/aliases

  使用權(quán)限:系統(tǒng)管理者

  使用方式: newaliases

  說(shuō)明:

  sendmail 會(huì)使用一個(gè)在 /etc/aliases 中的檔案做使用者名稱轉(zhuǎn)換的動(dòng)作。當(dāng) sendmail 收到一個(gè)要送給 xxx 的信時(shí),它會(huì)依據(jù) aliases檔的內(nèi)容送給另一個(gè)使用者。這個(gè)功能可以創(chuàng)造一個(gè)只有在信件系統(tǒng)內(nèi)才有效的使用者。例如 mailing list 就會(huì)用到這個(gè)功能,在 mailinglist 中,我們可能會(huì)創(chuàng)造一個(gè)叫 redlinux@link.ece.uci.edu 的

  mailinglist,但實(shí)際上并沒(méi)有一個(gè)叫 redlinux 的使用者。實(shí)際 aliases 檔的內(nèi)容是將送給這個(gè)使用者的信都收給 mailing list 處理程式負(fù)責(zé)分送的工作。

  /etc/aliases 是一個(gè)文字模式的檔案,sendmail 需要一個(gè)二進(jìn)位格式的 /etc/aliases.db。newaliases 的功能傳是將 /etc/aliases 轉(zhuǎn)換成一個(gè) sendmail 所能了解的資料庫(kù)。

  參數(shù):沒(méi)有任何參數(shù)。 范例:

  # newaliases

  下面命令會(huì)做相同的事,

  # sendmail -bi

  相關(guān)命令:

  mail, mailq, newaliases, sendmail

  名稱 : talk

  使用權(quán)限 : 所有使用者

  使用方式 :

  talk person [ttyname]

  說(shuō)明 : 與其他使用者對(duì)談

  把計(jì) :

  person : 預(yù)備對(duì)談的使用者帳號(hào),如果該使用者在其他機(jī)器上,則可輸入 person@machine.name

  ttyname : 如果使用者同時(shí)有兩個(gè)以上的 tty 連線,可以自行選擇合適的 tty 傳訊息

  例子.1 :

  與現(xiàn)在機(jī)器上的使用者Rollaend對(duì)談,此時(shí) Rollaend 只有一個(gè)連線 :

  talk Rollaend

  接下來(lái)就是等Rollaend回應(yīng),若Rollaend接受,則Rollaend輸入 `talk jzlee`即可開(kāi)始對(duì)談,結(jié)束請(qǐng)按 ctrl+c

  例子.2 :與linuxfab.cx上的使用者Rollaend對(duì)談,使用pts/2來(lái)對(duì)談 :

  talk Rollaend@linuxfab.cx pts/2

  接下來(lái)就是等Rollaend回應(yīng),若Rollaend接受,則Rollaend輸入 `talk jzlee@jzlee.home`即可開(kāi)始對(duì)談,結(jié)束請(qǐng)按

  ctrl+c

  注意 : 若螢?zāi)坏淖謺?huì)出現(xiàn)不正常的字元,試著按 ctrl+l 更新螢?zāi)划?huà)面。

  名稱 : wall

  使用權(quán)限 : 所有使用者

  使用方式 :

  wall [ message ]

  使用說(shuō)明:

  wall 會(huì)將訊息傳給每一個(gè) mesg 設(shè)定為 yes 的上線使用者。當(dāng)使用終端機(jī)介面做為標(biāo)準(zhǔn)傳入時(shí), 訊息結(jié)束時(shí)需加上 EOF (通常用 Ctrl+D)?

  例子 :

  傳訊息"hi" 給每一個(gè)使用者 :

  wall hi

  名稱 : write

  使用權(quán)限 : 所有使用者

  使用方式 :

  write user [ttyname]

  說(shuō)明 : 傳訊息給其他使用者

  把計(jì) :

  user : 預(yù)備傳訊息的使用者帳號(hào)

  ttyname : 如果使用者同時(shí)有兩個(gè)以上的 tty 連線,可以自行選擇合適的 tty 傳訊息

  例子.1 :

  傳訊息給 Rollaend,此時(shí) Rollaend 只有一個(gè)連線 :

  write Rollaend

  接下來(lái)就是將訊息打上去,結(jié)束請(qǐng)按 ctrl+c

  例子.2 :傳訊息給 Rollaend,Rollaend 的連線有 pts/2,pts/3 :

  write Rollaend pts/2

  接下來(lái)就是將訊息打上去,結(jié)束請(qǐng)按 ctrl+c

  注意 : 若對(duì)方設(shè)定 mesg n,則此時(shí)訊席將無(wú)法傳給對(duì)方

  名稱:kill

  使用權(quán)限:所有使用者

  使用方式:

  kill [ -s signal | -p ] [ -a ] pid ...

  kill -l [ signal ]

  說(shuō)明:kill 送出一個(gè)特定的信號(hào) (signal) 給行程 id 為 pid 的行程根據(jù)該信號(hào)而做特定的動(dòng)作, 若沒(méi)有指定, 預(yù)設(shè)是送出終止 (TERM) 的信號(hào)

  把計(jì)?

  -s (signal) : 其中可用的訊號(hào)有 HUP (1), KILL (9), TERM (15), 分別代表著重跑, 砍掉, 結(jié)束; 詳細(xì)的信號(hào)可以用 kill -l

  -p : 印出 pid , 并不送出信號(hào)

  -l (signal) : 列出所有可用的信號(hào)名稱

  范例:

  將 pid 為 323 的行程砍掉 (kill) :

  kill -9 323

  將 pid 為 456 的行程重跑 (restart) :

  kill -HUP 456

  名稱:nice

  使用權(quán)限:所有使用者

  使用方式:nice [-n adjustment] [-adjustment] [--adjustment=adjustment] [--help] [--version] [command [arg...]]

  說(shuō)明:以更改過(guò)的優(yōu)先序來(lái)執(zhí)行程式, 如果未指定程式, 則會(huì)印出目前的排程優(yōu)先序, 內(nèi)定的 adjustment 為 10, 范圍為 -20 (最高優(yōu)先序) 到 19 (最低優(yōu)先序)

  把計(jì)?

  -n adjustment, -adjustment, --adjustment=adjustment 皆為將該原有優(yōu)先序的增加 adjustment

  --help 顯示求助訊息

  --version 顯示版本資訊

  范例:

  將 ls 的優(yōu)先序加 1 并執(zhí)行 :

  nice -n 1 ls

  將 ls 的優(yōu)先序加 10 并執(zhí)行 :

  nice ls將 ls 的優(yōu)先序加 10 并執(zhí)行

  注意 : 優(yōu)先序 (priority) 為作業(yè)系統(tǒng)用來(lái)決定 CPU 分配的參數(shù),Linux 使用『回合制(round-robin)』的演算法來(lái)做 CPU 排程,優(yōu)先序越高,所可能獲得的 CPU時(shí)間就越多。

  名稱:ps

  使用權(quán)限:所有使用者

  使用方式:ps [options] [--help]

  說(shuō)明:顯示瞬間行程 (process) 的動(dòng)態(tài)

  參數(shù):

  ps 的參數(shù)非常多, 在此僅列出幾個(gè)常用的參數(shù)并大略介紹含義

  -A 列出所有的行程

  -w 顯示加寬可以顯示較多的資訊

  -au 顯示較詳細(xì)的資訊

  -aux 顯示所有包含其他使用者的行程

  au(x) 輸出格式 :

  USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

  USER: 行程擁有者

  PID: pid

  %CPU: 占用的 CPU 使用率

  %MEM: 占用的記憶體使用率

  VSZ: 占用的虛擬記憶體大小

  RSS: 占用的記憶體大小

  TTY: 終端的次要裝置號(hào)碼 (minor device number of tty)

  STAT: 該行程的狀態(tài):

  D: 不可中斷的靜止 (通悸□□縝b進(jìn)行 I/O 動(dòng)作)

  R: 正在執(zhí)行中

  S: 靜止?fàn)顟B(tài)

  T: 暫停執(zhí)行

  Z: 不存在但暫時(shí)無(wú)法消除

  W: 沒(méi)有足夠的記憶體分頁(yè)可分配

  <: 高優(yōu)先序的行程

  N: 低優(yōu)先序的行程

  L: 有記憶體分頁(yè)分配并鎖在記憶體內(nèi) (即時(shí)系統(tǒng)或捱A I/O)

  START: 行程開(kāi)始時(shí)間

  TIME: 執(zhí)行的時(shí)間

  COMMAND:所執(zhí)行的指令

  范例:

  ps

  PID TTY TIME CMD

  2791 ttyp0 00:00:00 tcsh

  3092 ttyp0 00:00:00 ps

  % ps -A

  PID TTY TIME CMD

  1 ? 00:00:03 init

  2 ? 00:00:00 kflushd

  3 ? 00:00:00 kpiod

  4 ? 00:00:00 kswapd

  5 ? 00:00:00 mdrecoveryd

  .......

  % ps -aux

  USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

  root 1 0.0 0.7 1096 472 ? S Sep10 0:03 init [3]

  root 2 0.0 0.0 0 0 ? SW Sep10 0:00 [kflushd]

  root 3 0.0 0.0 0 0 ? SW Sep10 0:00 [kpiod]

  root 4 0.0 0.0 0 0 ? SW Sep10 0:00 [kswapd]

  ........

  名稱:pstree

  使用權(quán)限:所有使用者

  使用方式:

  pstree [-a] [-c] [-h|-Hpid] [-l] [-n] [-p] [-u] [-G|-U] [pid|user]

  pstree -V

  說(shuō)明:將所有行程以樹(shù)狀圖顯示, 樹(shù)狀圖將會(huì)以 pid (如果有指定) 或是以 init 這個(gè)基本行程為根 (root) ,如果有指定使用者 id , 則樹(shù)狀圖會(huì)只顯示該使用者所擁有的行程

  參數(shù):

  -a 顯示該行程的完整指令及參數(shù), 如果是被記憶體置換出去的行程則會(huì)加上括號(hào)

  -c 如果有重覆的行程名, 則分開(kāi)列出 (預(yù)設(shè)值是會(huì)在前面加上 *

  范例:

  pstree

  init-+-amd

  |-apmd

  |-atd

  |-httpd---10*[httpd]

  %pstree -p

  init(1)-+-amd(447)

  |-apmd(105)

  |-atd(339)

  %pstree -c

  init-+-amd

  |-apmd

  |-atd

  |-httpd-+-httpd

  | |-httpd

  | |-httpd

  | |-httpd

  ....

  名稱:renice

  使用權(quán)限:所有使用者

  使用方式:renice priority [[-p] pid ...] [[-g] pgrp ...] [[-u] user ...]

  說(shuō)明:重新指定一個(gè)或多個(gè)行程(Process)的優(yōu)先序(一個(gè)或多個(gè)將根據(jù)所下的參數(shù)而定)

  把計(jì)?

  -p pid 重新指定行程的 id 為 pid 的行程的優(yōu)先序

  -g pgrp 重新指定行程群組(process group)的 id 為 pgrp 的行程 (一個(gè)或多個(gè)) 的優(yōu)先序

  -u user 重新指定行程擁有者為 user 的行程的優(yōu)先序

  范例:

  將行程 id 為 987 及 32 的行程與行程擁有者為 daemon 及 root 的優(yōu)先序號(hào)碼加 1 :

  renice +1 987 -u daemon root -p 32

  注意 : 每一個(gè)行程(Process)都有一個(gè)唯一的 (unique) id?

  名稱:top

  使用權(quán)限:所有使用者

  使用方式:top [-] [d delay] [q] [c] [S] [s] [i] [n]

  說(shuō)明:即時(shí)顯示 process 的動(dòng)態(tài)

  把計(jì)?

  d : 改變顯示的更新速度,或是在交談式指令列( interactive command)按 s

  q : 沒(méi)有任何延遲的顯示速度,如果使用者是有 superuser 的權(quán)限,則 top 將會(huì)以最高的優(yōu)先序執(zhí)行

  c : 切換顯示模式,共有兩種模式,一是只顯示執(zhí)行檔的名稱,另一種是顯示完整的路徑與名稱S : 累積模式,會(huì)將己完成或消失的子行程 ( dead child process ) 的 CPU time 累積起來(lái)

  s : 安全模式,將交談式指令取消, 避免潛在的危機(jī)

  i : 不顯示任何閑置 (idle) 或無(wú)用 (zombie) 的行程

  n : 更新的次數(shù),完成后將會(huì)退出 top

  b : 批次檔模式,搭配 "n" 參數(shù)一起使用,可以用來(lái)將 top 的結(jié)果輸出到檔案內(nèi)

  范例:

  顯示更新十次后退出 ;

  top -n 10

  使用者將不能利用交談式指令來(lái)對(duì)行程下命令 :

  top -s

  將更新顯示二次的結(jié)果輸入到名稱為 top.log 的檔案里 :

  top -n 2 -b < top.log

  名稱:skill

  使用權(quán)限:所有使用者

  使用方式: skill [signal to send] [options] 選擇程序的規(guī)則

  說(shuō)明:

  送個(gè)訊號(hào)給正在執(zhí)行的程序,預(yù)設(shè)的訊息為 TERM (中斷) , 較常使用的訊息為 HUP , INT , KILL , STOP , CONT ,和 0

  訊息有三種寫(xiě)法:分別為 -9 , -SIGKILL , -KILL , 可以使用 -l 或 -L 已列出可使用的訊息。

  一般參數(shù):

  -f 快速模式/尚未完成

  -i 互動(dòng)模式/ 每個(gè)動(dòng)作將要被確認(rèn)

  -v 詳細(xì)輸出/ 列出所選擇程序的資訊

  -w 智能警告訊息/ 尚未完成

  -n 沒(méi)有動(dòng)作/ 顯示程序代號(hào)

  參數(shù):選擇程序的規(guī)則可以是, 終端機(jī)代號(hào),使用者名稱,程序代號(hào),命令名稱。

  -t 終端機(jī)代號(hào) ( tty 或 pty )

  -u 使用者名稱

  -p 程序代號(hào) ( pid )

  -c 命令名稱 可使用的訊號(hào):

  以下列出已知的訊號(hào)名稱,訊號(hào)代號(hào),功能。

  名稱 (代號(hào)) 功能/ 描述

  ALRM 14 離開(kāi)

  HUP 1 離開(kāi)

  INT 2 離開(kāi)

  KILL 9 離開(kāi)/ 強(qiáng)迫關(guān)閉

  PIPE 13 離開(kāi)

  POLL 離開(kāi)

  PROF 離開(kāi)

  TERM 15 離開(kāi)

  USR1 離開(kāi)

  USR2 離開(kāi)

  VTALRM 離開(kāi)

  STKFLT 離開(kāi)/ 只適用于i386, m68k, arm 和 ppc 硬體

  UNUSED 離開(kāi)/ 只適用于i386, m68k, arm 和 ppc 硬體

  TSTP 停止 /產(chǎn)生與內(nèi)容相關(guān)的行為

  TTIN 停止 /產(chǎn)生與內(nèi)容相關(guān)的行為

  TTOU 停止 /產(chǎn)生與內(nèi)容相關(guān)的行為

  STOP 停止 /強(qiáng)迫關(guān)閉

  CONT 從新啟動(dòng) /如果在停止?fàn)顟B(tài)則從新啟動(dòng),否則忽略

  PWR 忽略 /在某些系統(tǒng)中會(huì)離開(kāi)

  WINCH 忽略

  CHLD 忽略

  ABRT 6 核心

  FPE 8 核心

  ILL 4 核心

  QUIT 3 核心

  SEGV 11 核心

  TRAP 5 核心

  SYS 核心 /或許尚未實(shí)作

  EMT 核心 /或許尚未實(shí)作

  BUS 核心 /核心失敗

  XCPU 核心 /核心失敗

  XFSZ 核心 /核心失敗

  范例:

  停止所有在 PTY 裝置上的程序

  skill -KILL -v pts/*

  停止三個(gè)使用者 user1 , user2 , user3

  skill -STOP user1 user2 user3

  其他相關(guān)的命令: kill

  名稱:expr

  使用權(quán)限:所有使用者

  ### 字串長(zhǎng)度

  shell>> expr length "this is a test"

  14

  ### 數(shù)字商數(shù)

  shell>> expr 14 % 9

  5

  ### 從位置處抓取字串

  shell>> expr substr "this is a test" 3 5

  is is

  ### 數(shù)字串 only the first character

  shell>> expr index "testforthegame" e

  2

  ### 字串真實(shí)重現(xiàn)

  shell>> expr quote thisisatestformela

  thisisatestformela

  名稱: tr

  ### 1.比方說(shuō)要把目錄下所有的大寫(xiě)檔名換為小寫(xiě)檔名?

  似乎有很多方式,"tr"是其中一種:

  #!/bin/sh

  dir="/tmp/testdir";

  files=`find $dir -type f`;

  for i in $files

  do

  dir_name=`dirname $i`;

  ori_filename=`basename $i`

  new_filename=`echo $ori_filename | tr [:upper:] [:lower:]` > /dev/null;

  #echo $new_filename;

  mv $dir_name/$ori_filename $dir_name/$new_filename

  done

  ### 2.自己試驗(yàn)中...lowercase to uppercase

  tr abcdef...[del] ABCDE...[del]

  tr a-z A-Z

  tr [:lower:] [:upper:]

  shell>> echo "this is a test" | tr a-z A-Z > www

  shell>> cat www

  THIS IS A TEST

  ### 3.去掉不想要的字串

  shell>> tr -d this ### 去掉有關(guān) t.e.s.t

  this

  man

  man

  test

  e

  ### 4.取代字串

  shell>> tr -s "this" "TEST"

  this

  TEST

  th

  TE

  指令:clear

  用途:清除螢?zāi)挥谩?/p>

  使用方法:在 console 上輸入 clear。

  名稱: reset, tset

  使用方法: tset [-IQqrs] [-] [-e ch] [-i ch] [-k ch] [-m mapping] [terminal]

  使用說(shuō)明:

  reset 其實(shí)和 tset 是一同個(gè)命令,它的用途是設(shè)定終端機(jī)的狀態(tài)。一般而言,這個(gè)命令會(huì)自動(dòng)的從環(huán)境變數(shù)、命令列或是其它的組態(tài)檔決定目前終端機(jī)的型態(tài)。如果指定型態(tài)是 ? 的話,這個(gè)程式會(huì)要求使用者輸入終端機(jī)的型別。

  由于這個(gè)程式會(huì)將終端機(jī)設(shè)回原始的狀態(tài),除了在 login 時(shí)使用外,當(dāng)系統(tǒng)終端機(jī)因?yàn)槌淌讲徽?zhí)行而進(jìn)入一些奇怪的狀態(tài)時(shí),你也可以用它來(lái)重設(shè)終端機(jī)o 例如不小心把二進(jìn)位檔用 cat 指令進(jìn)到終端機(jī),常會(huì)有終端機(jī)不再回應(yīng)鍵盤(pán)輸入,或是回應(yīng)一些奇怪字元的問(wèn)題。此時(shí)就可以用 reset 將終端機(jī)回復(fù)至原始狀態(tài)。選項(xiàng)說(shuō)明:

  -p

  將終端機(jī)類別顯示在螢?zāi)簧?,但不做設(shè)定的動(dòng)作。這個(gè)命令可以用來(lái)取得目前終端機(jī)的類別。

  -e ch

  將 erase 字元設(shè)成 ch

  -i ch

  將中斷字元設(shè)成 ch

  -k ch

  將刪除一行的字元設(shè)成 ch

  -I

  不要做設(shè)定的動(dòng)作,如果沒(méi)有使用選項(xiàng) -Q 的話,erase、中斷及刪除字元的目前值依然會(huì)送到螢?zāi)簧稀?/p>

  -Q

  不要顯示 erase、中斷及刪除字元的值到螢?zāi)簧稀?/p>

  -r

  將終端機(jī)類別印在螢?zāi)簧稀?/p>

  -s

  將設(shè)定 TERM 用的命令用字串的型式送到終端機(jī)中,通常在 .login 或 .profile 中用

  范例:

  讓使用者輸入一個(gè)終端機(jī)型別并將終端機(jī)設(shè)到該型別的預(yù)設(shè)狀態(tài)。

  # reset ?

  將 erase 字元設(shè)定 control-h

  # reset -e ^B

  將設(shè)定用的字串顯示在螢?zāi)簧?/p>

  # reset -s

Erase is control-B (^ .

  Kill is control-U (^U).

  Interrupt is control-C (^C).

  TERM=xterm;

  名稱:compress

  使用權(quán)限:所有使用者

  使用方式:compress [-dfvcV] [-b maxbits]

  下載地址

  說(shuō)明:

  compress 是一個(gè)相當(dāng)古老的 unix 檔案壓縮指令,壓縮后的檔案會(huì)加上一個(gè) .Z 延伸檔名以區(qū)別未壓縮的檔案,壓縮后的檔案可以以 uncompress 解壓。若要將數(shù)個(gè)檔案壓成一個(gè)壓縮檔,必須先將檔案 tar 起來(lái)再壓縮。由于 gzip 可以產(chǎn)生更理想的壓縮比例,一般人多已改用 gzip 為檔案壓縮工具。

  參數(shù):

  c 輸出結(jié)果至標(biāo)準(zhǔn)輸出設(shè)備(一般指熒幕)

  f 強(qiáng)迫寫(xiě)入檔案,若目的檔已經(jīng)存在,則會(huì)被覆蓋 (force)

  v 將程式執(zhí)行的訊息印在熒幕上 (verbose)

  b 設(shè)定共同字串?dāng)?shù)的上限,以位元計(jì)算,可以設(shè)定的值為 9 至 16 bits 。由于值越大,能使用的共同字串就 越多,壓縮比例就越大,所以一般使用預(yù)設(shè)值 16 bits (bits)

  d 將壓縮檔解壓縮

  V 列出版本訊息

  范例:

  將 source.dat 壓縮成 source.dat.Z ,若 source.dat.Z 已經(jīng)存在,內(nèi)容則會(huì)被壓縮檔覆蓋。

  compress -f source.dat

  將 source.dat 壓縮成 source.dat.Z ,并列印出壓縮比例。

  -v 與 -f 可以一起使用

  compress -vf source.dat

  將壓縮后的資料輸出后再導(dǎo)入 target.dat.Z 可以改變壓縮檔名。

  compress -c source.dat > target.dat.Z

  -b 的值越大,壓縮比例就越大,范圍是 9-16 ,預(yù)設(shè)值是 16 。

  compress -b 12 source.dat

  將 source.dat.Z 解壓成 source.dat ,若檔案已經(jīng)存在,使用者按 y 以確定覆蓋檔案,若使用 -df 程式則會(huì)自動(dòng)覆蓋檔案。由于系統(tǒng)會(huì)自動(dòng)加入 .Z 為延伸檔名,所以 source.dat 會(huì)自動(dòng)當(dāng)作 source.dat.Z 處理。

  compress -d source.dat

  compress -d source.dat.Z

  名稱: lpd

  使用權(quán)限: 所有使用者

  使用方式:lpd [-l] [#port]

  lpd 是一個(gè)常駐的印表機(jī)管理程式,它會(huì)根據(jù) /etc/printcap 的內(nèi)容來(lái)管理本地或遠(yuǎn)端的印表機(jī)。/etc/printcap 中定義的每一個(gè)印表機(jī)必須在 /var/lpd 中有一個(gè)相對(duì)應(yīng)的目錄,目錄中以 cf 開(kāi)頭的檔案表示一個(gè)等待送到適當(dāng)裝置的印表工作。這個(gè)檔案通常是由 lpr 所產(chǎn)生。

  lpr 和 lpd 組成了一個(gè)可以離線工作的系統(tǒng),當(dāng)你使用 lpr 時(shí),印表機(jī)不需要能立即可用,甚至不用存在。lpd 會(huì)自動(dòng)監(jiān)視印表機(jī)的狀況,當(dāng)印表機(jī)上線后,便立即將檔案送交處理。這個(gè)得所有的應(yīng)用程式不必等待印表機(jī)完成前一工作。

  參數(shù):

  -l: 將一些除錯(cuò)訊息顯示在標(biāo)準(zhǔn)輸出上。

  #port: 一般而言,lpd 會(huì)使用 getservbyname 取得適當(dāng)?shù)?TCP/IP port,你可以使用這個(gè)參數(shù)強(qiáng)迫 lpd 使用指定的 port。

  范例:

  這個(gè)程式通常是由 /etc/rc.d 中的程式在系統(tǒng)啟始階段執(zhí)行。

  名稱 lpq

  -- 顯示列表機(jī)貯列中未完成的工作 用法

  lpq [l] [P] [user]

  說(shuō)明

  lpq 會(huì)顯示由 lpd 所管理的列表機(jī)貯列中未完成的項(xiàng)目。

  范例

  范例 1. 顯示所有在 lp 列表機(jī)貯列中的工作

  # lpq -PlpRank Owner Job Files Total Size1st root 238 (standard input) 1428646 bytes

  相關(guān)函數(shù)

  lpr,lpc,lpd

  名稱: lpr

  使用權(quán)限: 所有使用者

  使用方式:lpr [ -P printer ]

  將檔案或是由標(biāo)準(zhǔn)輸入送進(jìn)來(lái)的資料送到印表機(jī)貯列之中,印表機(jī)管理程式 lpd 會(huì)在稍后將這個(gè)檔案送給適當(dāng)?shù)某淌交蜓b置處理。lpr 可以用來(lái)將料資送給本地或是遠(yuǎn)端的主機(jī)來(lái)處理。

  參數(shù):

  -p Printer: 將資料送至指定的印表機(jī) Printer,預(yù)設(shè)值為 lp。

  范例:

  將 www.c 和 kkk.c 送到印表機(jī) lp。

  lpr -Plp www.c kkk.c

  名稱: lprm

  -- 將一個(gè)工作由印表機(jī)貯列中移除 用法

  /usr/bin/lprm [P]

  下載地址

  說(shuō)明

  尚未完成的印表機(jī)工作會(huì)被放在印表機(jī)貯列之中,這個(gè)命令可用來(lái)將常未送到印表機(jī)的工作取消。由于每一個(gè)印表機(jī)都有一個(gè)獨(dú)立的貯列,你可以用 -P 這個(gè)命令設(shè)定想要作用的印列機(jī)。如果沒(méi)有設(shè)定的話,會(huì)使用系統(tǒng)預(yù)設(shè)的印表機(jī)。

  這個(gè)命令會(huì)檢查使用者是否有足夠的權(quán)限刪除指定的檔案,一般而言,只有檔案的擁有者或是系統(tǒng)管理員才有這個(gè)權(quán)限。

  范例

  將印表機(jī) hpprinter 中的第 1123 號(hào)工作移除

  lprm -Phpprinter 1123

  將第 1011 號(hào)工作由預(yù)設(shè)印表機(jī)中移除

  lprm 1011

  名稱: fdformat

  使用權(quán)限: 所有使用者

  使用方式:fdformat [-n] device

  使用說(shuō)明 :

  對(duì)指定的軟碟機(jī)裝置進(jìn)行低階格式化。使用這個(gè)指令對(duì)軟碟格式化的時(shí)候,最好指定像是下面的裝置:

  /dev/fd0d360 磁碟機(jī) A: ,磁片為 360KB 磁碟

  /dev/fd0h1440 磁碟機(jī) A: ,磁片為 1.4MB 磁碟

  /dev/fd1h1200 磁碟機(jī) B: ,磁片為 1.2MB 磁碟

  如果使用像是 /dev/fd0 之類的裝置,如果里面的磁碟不是標(biāo)準(zhǔn)容量,格式化可能會(huì)失敗。在這種情況之下,使用者可以用 setfdprm 指令先行指定必要參數(shù)。

  參數(shù):

  -n 關(guān)閉確認(rèn)功能。這個(gè)選項(xiàng)會(huì)關(guān)閉格式化之后的確認(rèn)步驟。

  范例:

  fdformat -n /dev/fd0h1440

  將磁碟機(jī) A 的磁片格式化成 1.4MB 的磁片。并且省略確認(rèn)的步驟。

  名稱: mformat

  使用權(quán)限: 所有使用者

  使用方式:

  mformat [-t cylinders] [-h heads] [-s sectors] [-l volume_label] [-F] [-I fsVer-sion] [-S sizecode] [-2 sectorserials_on_track_0] [-M software_sector_size] [-a] [-X] [-C] [-H hidden_sectors] [-r root_sectors] [-B boot_sector] [-0 rate_on_track_0] [-A rate_on_other_tracks]

  [-1] [-k] drive:

  在已經(jīng)做過(guò)低階格式化的磁片上建立 DOS 檔案系統(tǒng)。如果在編譯 mtools 的時(shí)候把 USE_2M 的參數(shù)打開(kāi),部分與 2M 格式相關(guān)的參數(shù)就會(huì)發(fā)生作用。否則這些參數(shù)(像是 S,2,1,M)不會(huì)發(fā)生作用。

  參數(shù):

  -t 磁柱(synlider)數(shù)

  -h 磁頭(head)數(shù)

  -s 每一磁軌的磁區(qū)數(shù)

  -l 標(biāo)簽

  -F 將磁碟格式化為 FAT32 格式,不過(guò)這個(gè)參數(shù)還在實(shí)驗(yàn)中。

  -I 設(shè)定 FAT32 中的版本號(hào)。這當(dāng)然也還在實(shí)驗(yàn)中。

  -S 磁區(qū)大小代碼,計(jì)算方式為 sector = 2^(大小代碼+7)

  -c 磁叢(cluster)的磁區(qū)數(shù)。如果所給定的數(shù)字會(huì)導(dǎo)致磁叢數(shù)超過(guò) FAT 表的限制,mformat 會(huì)自動(dòng)放大磁區(qū)數(shù)。

  -s

  -M 軟體磁區(qū)大小。這個(gè)數(shù)字就是系統(tǒng)回報(bào)的磁區(qū)大小。通常是和實(shí)際的大小相同。

  -a 如果加上這個(gè)參數(shù),mformat 會(huì)產(chǎn)生一組 Atari 系統(tǒng)的序號(hào)給這塊軟碟。

  -X 將軟碟格式化成 XDF 格式。使用前必須先用 xdfcopy 指令對(duì)軟碟作低階格式化的動(dòng)作。

  -C 產(chǎn)生一個(gè)可以安裝 MS-DOS 檔案系統(tǒng)的磁碟影像檔(disk image)。當(dāng)然對(duì)一個(gè)實(shí)體磁碟機(jī)下這個(gè)參數(shù)是沒(méi)有意義的。

  -H 隱藏磁區(qū)的數(shù)目。這通常適用在格式化硬碟的分割區(qū)時(shí),因?yàn)橥ǔR粋€(gè)分割區(qū)的前面還有分割表。這個(gè)參數(shù)未經(jīng)測(cè)試,能不用就不用。

  -n 磁碟序號(hào)

  -r 根目錄的大小,單位是磁區(qū)數(shù)。這個(gè)參數(shù)只對(duì) FAT12 和 FAT16 有效。

  -B 使用所指定的檔案或是設(shè)備的開(kāi)機(jī)磁區(qū)做為這片磁片或分割區(qū)的開(kāi)機(jī)磁區(qū)。當(dāng)然當(dāng)中的硬體參數(shù)會(huì)隨之更動(dòng)。

  -k 盡量保持原有的開(kāi)機(jī)磁區(qū)。

  -0 第 0 軌的資料傳輸率

  -A 第 0 軌以外的資料傳輸率

  -2 使用 2m 格式

  -1 不使用 2m 格式

  范例:

  mformat a:

  這樣會(huì)用預(yù)設(shè)值把 a: (就是 /dev/fd0)里的磁碟片格式化。

  名稱: mkdosfs

  使用權(quán)限: 所有使用者

  使用方式: mkdosfs [ -c | -l filename ]

  [ -f number_of_FATs ]

  [ -F FAT_size ]

  [ -i volume_id ]

  [ -m message_file ]

  [ -n volume_name ]

  [ -r root_dir_entry ]

  [ -s sector_per_cluster ]

  [ -v ]

  device

  [ block_count ]

  說(shuō)明: 建立 DOS 檔案系統(tǒng)。 device 指你想要建立 DOS 檔案系統(tǒng)的裝置代號(hào)。像是 /dev/hda1 等等。 block_count 則是你希望配置的區(qū)塊數(shù)。如果 block_count 沒(méi)有指定則系統(tǒng)會(huì)自動(dòng)替你計(jì)算符合該裝置大小的區(qū)塊數(shù)。

  參數(shù):

  -c 建立檔案系統(tǒng)之前先檢查是否有壞軌。

  -l 從得定的檔案中讀取壞軌記錄。

  -f 指定檔案配置表(FAT , File Allocation Table)的數(shù)量。預(yù)設(shè)值為 2 。目前 Linux 的 FAT 檔案系統(tǒng)不支援超過(guò) 2 個(gè) FAT 表。通常這個(gè)不需要改。

  -F 指定 FAT 表的大小,通常是 12 或是 16 個(gè)位元組。12 位元組通常用于磁碟片,16 位元組用于一般硬碟的分割區(qū),也就是所謂的 FAT16 格式。這個(gè)值通常系統(tǒng)會(huì)自己選定適當(dāng)?shù)闹?。在磁碟片上?FAT16 通常不會(huì)發(fā)生作用,反之在硬碟上用 FAT12 亦然。

  -i 指定 Volume ID。一般是一個(gè) 4 個(gè)位元組的數(shù)字,像是 2e203a47 。如果不給系統(tǒng)會(huì)自己產(chǎn)生。

  -m 當(dāng)使用者試圖用這片磁片或是分割區(qū)開(kāi)機(jī),而上面沒(méi)有作業(yè)系統(tǒng)時(shí),系統(tǒng)會(huì)給使用者一段警告訊息。這個(gè)參數(shù)就是用來(lái)變更這個(gè)訊息的。你可以先用檔案編輯好,然后用這個(gè)參數(shù)指定,或是用

  -m -

  這樣系統(tǒng)會(huì)要求你直接輸入這段文字。要特別注意的是,檔案里的字串長(zhǎng)度不要超過(guò) 418 個(gè)字,包括展開(kāi)的跳欄符號(hào)(TAB)和換行符號(hào)(換行符號(hào)在 DOS 底下算兩個(gè)字元!)

  -n 指定 Volume Name,就是磁碟標(biāo)簽。如同在 DOS 底下的 format 指令一樣,給不給都可以。沒(méi)有預(yù)設(shè)值。

  -r 指定根目錄底下的最大檔案數(shù)。這里所謂的檔案數(shù)包括目錄。預(yù)設(shè)值是在軟碟上是 112 或是 224 ,在硬碟上是 512。沒(méi)事不要改這個(gè)數(shù)字。

  -s 每一個(gè)磁叢(cluster)的磁區(qū)數(shù)。必須是 2 的次方數(shù)。不過(guò)除非你知道你在作什么,這個(gè)值不要亂給。

  -v 提供額外的訊息

  范例:

  mkdosfs -n Tester /dev/fd0 將 A 槽里的磁碟片格式化為 DOS 格式,并將標(biāo)簽設(shè)為 Teste

  LINUX網(wǎng)絡(luò)通信類命令大全

  ytalk

  功能說(shuō)明:與其他用戶交談。

  語(yǔ)  法:ytalk [-isxY][-h<主機(jī)名稱IP地址>][用戶名稱...]

  補(bǔ)充說(shuō)明:通過(guò)ytalk指令,你可以和其他用戶線上交談,如果想和其他主機(jī)的用戶交談,在用戶名稱后加上其主機(jī)名稱或IP地址即可。

  參  數(shù):

  -h<主機(jī)名稱IP地址> 指定交談對(duì)象所在的遠(yuǎn)端主機(jī)。

  -i 用提醒聲響代替顯示信息。

  -s 在指令提示符號(hào)先開(kāi)啟ytalk交談窗。

  -x 關(guān)閉圖形界面。

  -Y 所有必須回應(yīng)yes或no的問(wèn)題,都必須用大寫(xiě)英文字母"Y"或"N"回答。

  write

  功能說(shuō)明:傳送信息。

  語(yǔ)  法:write [用戶名稱][終端機(jī)編號(hào)]

  補(bǔ)充說(shuō)明:通過(guò)write指令可傳遞信息給另一位登入系統(tǒng)的用戶,當(dāng)輸入完畢后,鍵入EOF表示信息結(jié)束,write指令就會(huì)將信息傳給對(duì)方。如果接收信息的用戶不只登入本地主機(jī)一次,你可以指定接收信息的終端機(jī)編號(hào)。

  wall(write all)

  功能說(shuō)明:傳送信息。

  語(yǔ)  法:wall [公告信息]

  補(bǔ)充說(shuō)明:通過(guò)wall指令可將信息發(fā)送給每位同意接收公眾信息的終端機(jī)用戶,若不給予其信息內(nèi)容,則wall指令會(huì)從標(biāo)準(zhǔn)輸入設(shè)備讀取數(shù)據(jù),然后再把所得到的數(shù)據(jù)傳送給所有終端機(jī)用戶。

  uux

  功能說(shuō)明:在遠(yuǎn)端的UUCP主機(jī)上執(zhí)行指令。

  語(yǔ)  法:uux [-bcCIjlnrvz][-a<地址>][-g<等級(jí)>][-s<文件>][-x<層級(jí)>][--help][指令]

  補(bǔ)充說(shuō)明:uux可在遠(yuǎn)端的UUCP主機(jī)上執(zhí)行指令或是執(zhí)行本機(jī)上的指令,但在執(zhí)行時(shí)會(huì)使用遠(yuǎn)端電腦的文件。

  參  數(shù):

  -或-p或--stdin 直接從鍵盤(pán)讀取要執(zhí)行的指令。

  -a<地址>或--requestor<地址> 執(zhí)行郵件地址,以便寄送狀態(tài)信息。

  -b或--erturn-stdin 在屏幕上顯示狀態(tài)信息。

  -c或--nocopy 不用將文件復(fù)制到緩沖區(qū)。

  -C或--copy 將文件復(fù)制到緩沖區(qū)。

  -g<等級(jí)>或--grade<等級(jí)> 指定文件傳送作業(yè)的優(yōu)先順序。

  -I或--config file 指定uux配置文件。

  -j或--jobid 顯示作業(yè)編號(hào)。

  -l或--link 將本機(jī)上的文件連接到緩沖區(qū)。

  -n或--notification=no 無(wú)論發(fā)生任何狀態(tài),都不寄郵件通知用戶。

  -r或--nouucico 不要立即啟動(dòng)uucico服務(wù)程序,僅將作業(yè)送到隊(duì)列中,然后再執(zhí)行。

  -s<文件>或--status<文件> 將完成狀態(tài)保存為指定的文件。

  -v或--version 顯示版本信息。

  -x<層級(jí)>或--debug<層級(jí)> 指定排錯(cuò)層級(jí)。

  -z或--notification=error 若發(fā)生錯(cuò)誤,則以郵件來(lái)通知用戶。

  --help 顯示幫助。

  uustat

  功能說(shuō)明:顯示UUCP目前的狀況。

  語(yǔ)  法:uustat [-aeiKmMNpqQRv][-B<行數(shù)>][-c<指令>][-C<指令>][-I<配置文件 >][-k<工作>][-o<小時(shí)>][-r<工作>][-s<主機(jī)>][-S<主機(jī) >][-u<用戶>][-U<用戶>][-W<附注>][-y<小時(shí)>][-x<層級(jí) >][--help]

  補(bǔ)充說(shuō)明:執(zhí)行uucp與uux指令后,會(huì)先將工作送到隊(duì)列,再由uucico來(lái)執(zhí)行工作。uustat可顯示,刪除或啟動(dòng)隊(duì)列中等待執(zhí)行的工作。

  參  數(shù):

  -a或-all 顯示全部的UUCP工作。

  -B<行數(shù)>或--mail-lines<行數(shù)> 與-M或-N參數(shù)一并使用,用來(lái)指定郵件中要包含多少行的信息。

  -c<指令>或--command<指令> 顯示與<指令>有關(guān)的工作。

  -C<指令>或--not-command<指令> 顯示與<指令>無(wú)關(guān)的工作。

  -e或--executions 僅顯示待執(zhí)行的工作。

  -i或--prompt 針對(duì)隊(duì)列中的每項(xiàng)工作,詢問(wèn)使用是否要?jiǎng)h除工作。

  -I<配置文件>或--config<配置文件> 指定配置文件。

  -k<工作>或--kill<工作> 刪除指定的工作。

  -m或--status 刪除全部的工作。

  -M或-mail 將狀態(tài)信息郵寄給UUCP管理員。

  -N或--notify 將狀態(tài)信息分別郵寄給提出該項(xiàng)工作的用戶。

  -o<小時(shí)>或--older-than<小時(shí)> 顯示超過(guò)指定時(shí)數(shù)的工作。

  -p或--ps 顯示負(fù)責(zé)UUCP鎖定的程序。

  -q或--list 顯示每臺(tái)遠(yuǎn)端主機(jī)上所要執(zhí)行工作的狀態(tài)。

  -Q或--no-list 不顯示工作。

  -r<工作>或--rejuvenate<工作> 重新啟動(dòng)指定的工作。

  -R或--rejuvenate-all 重新啟動(dòng)全部的工作。

  -s<主機(jī)>或--system<主機(jī)> 顯示與<主機(jī)>有關(guān)的工作。

  -S<主機(jī)>或--not-system<主機(jī)> 顯示與<主機(jī)>無(wú)關(guān)的工作。

  -v或--version 顯示版本信息。

  -u<用戶>或--user<用戶> 顯示與<用戶>有關(guān)的工作。

  -U<用戶>或--not-user<用戶> 顯示與<用戶>無(wú)關(guān)的工作。

  -W<附注>或--comment<附注> 要放在郵件信息中的附注。

  -y<小時(shí)>或--younger-than<小時(shí)> 顯示低于指定時(shí)數(shù)的工作。

  -x<層級(jí)>或--debug<層級(jí)> 指定排錯(cuò)層級(jí)。

  --help 顯示幫助。

  statserial(status ofserial port)

  功能說(shuō)明:顯示串口狀態(tài)。

  語(yǔ)  法:statserial [-dnx][串口設(shè)備名稱]

  補(bǔ)充說(shuō)明:statserial可顯示各個(gè)接腳的狀態(tài),常用來(lái)判斷串口是否正常。

  參  數(shù):

  -d 以10進(jìn)制數(shù)字來(lái)表示串口的狀態(tài)。

  -n 僅顯示一次串口的狀態(tài)后即結(jié)束程序。

  -x 與-n參數(shù)類似,但是以16進(jìn)制來(lái)表示。

  talk

  功能說(shuō)明:與其他用戶交談。

  語(yǔ)  法:talk [用戶名稱][終端機(jī)編號(hào)]

  補(bǔ)充說(shuō)明:通過(guò)talk指令,你可以和另一個(gè)用戶線上交談。

  smbd(samba daemon)

  功能說(shuō)明:Samba服務(wù)器程序。

  語(yǔ)  法:smbd [-aDhoP][-d<排錯(cuò)層級(jí)>][-i<范圍>][-l<記錄文件>][-O<連接槽選項(xiàng)>][-p<連接端口編號(hào)>][-s<配置文件>]

  補(bǔ)充說(shuō)明:smbd為Samba服務(wù)器程序,可分享文件與打印機(jī)等網(wǎng)絡(luò)資源供Windows相關(guān)的用戶端程序存取。

  參  數(shù):

  -a 所有的連線記錄都會(huì)加到記錄文件中。

  -d<排錯(cuò)層級(jí)> 指定記錄文件所記載事件的詳細(xì)程度。

  -D 使用此參數(shù)時(shí),smbd會(huì)以服務(wù)程序的方式在后臺(tái)執(zhí)行。

  -h 顯示幫助。

  -i<范圍> 指定NetBIOS名稱的范圍。

  -l<記錄文件> 指定記錄文件的名稱。

  -o 每次啟動(dòng)時(shí),會(huì)覆蓋原有的記錄文件。

  -O<連接槽選項(xiàng)> 設(shè)置連接槽選項(xiàng)。

  -p<連接端口編號(hào)> 設(shè)置連接端口編號(hào)。

  -P 僅用來(lái)測(cè)試smbd程序的正確性。

  -s<配置文件> 指定smbd的設(shè)置文件。

  smbclient(samba client)

  功能說(shuō)明:可存取SMB/CIFS服務(wù)器的用戶端程序。

  語(yǔ)  法:smbclient [網(wǎng)絡(luò)資源][密碼][-EhLN][-B<IP地址>][-d<排錯(cuò)層級(jí)>][-i<范圍>][-I<IP 地址>][-l<記錄文件>][-M<NetBIOS名稱>][-n<NetBIOS名稱>][-O< 連接槽選項(xiàng)>][-p<TCP連接端口>][-R<名稱解析順序>][-s<目錄>][-t<服務(wù)器字碼>][-T<tar選項(xiàng)>][-U<用戶名稱>][-W<工作群組>]

  補(bǔ)充說(shuō)明:SMB與CIFS為服務(wù)器通信協(xié)議,常用于Windows95/98/NT等系統(tǒng)。smbclient可讓Linux系統(tǒng)存取Windows系統(tǒng)所分享的資源。

  參  數(shù):

  [網(wǎng)絡(luò)資源] [網(wǎng)絡(luò)資源]的格式為//服務(wù)器名稱/資源分享名稱。

  [密碼] 輸入存取網(wǎng)絡(luò)資源所需的密碼。

  -B<IP地址> 傳送廣播數(shù)據(jù)包時(shí)所用的IP地址。

  -d<排錯(cuò)層級(jí)> 指定記錄文件所記載事件的詳細(xì)程度。

  -E 將信息送到標(biāo)準(zhǔn)錯(cuò)誤輸出設(shè)備。

  -h 顯示幫助。

  -i<范圍> 設(shè)置NetBIOS名稱范圍。

  -I<IP地址> 指定服務(wù)器的IP地址。

  -l<記錄文件> 指定記錄文件的名稱。

  -L 顯示服務(wù)器端所分享出來(lái)的所有資源。

  -M<NetBIOS名稱> 可利用WinPopup協(xié)議,將信息送給選項(xiàng)中所指定的主機(jī)。

  -n<NetBIOS名稱> 指定用戶端所要使用的NetBIOS名稱。

  -N 不用詢問(wèn)密碼。

  -O<連接槽選項(xiàng)> 設(shè)置用戶端TCP連接槽的選項(xiàng)。

  -p<TCP連接端口> 指定服務(wù)器端TCP連接端口編號(hào)。

  -R<名稱解析順序> 設(shè)置NetBIOS名稱解析的順序。

  -s<目錄> 指定smb.conf所在的目錄。

  -t<服務(wù)器字碼> 設(shè)置用何種字符碼來(lái)解析服務(wù)器端的文件名稱。

  -T<tar選項(xiàng)> 備份服務(wù)器端分享的全部文件,并打包成tar格式的文件。

  -U<用戶名稱> 指定用戶名稱。

  -W<工作群組> 指定工作群組名稱。

  tcpdump

  功能說(shuō)明:傾倒網(wǎng)絡(luò)傳輸數(shù)據(jù)。

  語(yǔ)  法:tcpdump [-adeflnNOpqStvx][-c<數(shù)據(jù)包數(shù)目>][-dd][-ddd][-F<表達(dá)文件>][-i<網(wǎng)絡(luò)界面 >][-r<數(shù)據(jù)包文件>][-s<數(shù)據(jù)包大小>][-tt][-T<數(shù)據(jù)包類型>][-vv][- w<數(shù)據(jù)包文件>][輸出數(shù)據(jù)欄位]

  補(bǔ)充說(shuō)明:執(zhí)行tcpdump指令可列出經(jīng)過(guò)指定網(wǎng)絡(luò)界面的數(shù)據(jù)包文件頭,在Linux操作系統(tǒng)中,你必須是系統(tǒng)管理員。

  參  數(shù):

  -a 嘗試將網(wǎng)絡(luò)和廣播地址轉(zhuǎn)換成名稱。

  -c<數(shù)據(jù)包數(shù)目> 收到指定的數(shù)據(jù)包數(shù)目后,就停止進(jìn)行傾倒操作。

  -d 把編譯過(guò)的數(shù)據(jù)包編碼轉(zhuǎn)換成可閱讀的格式,并傾倒到標(biāo)準(zhǔn)輸出。

  -dd 把編譯過(guò)的數(shù)據(jù)包編碼轉(zhuǎn)換成C語(yǔ)言的格式,并傾倒到標(biāo)準(zhǔn)輸出。

  -ddd 把編譯過(guò)的數(shù)據(jù)包編碼轉(zhuǎn)換成十進(jìn)制數(shù)字的格式,并傾倒到標(biāo)準(zhǔn)輸出。

  -e 在每列傾倒資料上顯示連接層級(jí)的文件頭。

  -f 用數(shù)字顯示網(wǎng)際網(wǎng)絡(luò)地址。

  -F<表達(dá)文件> 指定內(nèi)含表達(dá)方式的文件。

  -i<網(wǎng)絡(luò)界面> 使用指定的網(wǎng)絡(luò)截面送出數(shù)據(jù)包。

  -l 使用標(biāo)準(zhǔn)輸出列的緩沖區(qū)。

  -n 不把主機(jī)的網(wǎng)絡(luò)地址轉(zhuǎn)換成名字。

  -N 不列出域名。

  -O 不將數(shù)據(jù)包編碼最佳化。

  -p 不讓網(wǎng)絡(luò)界面進(jìn)入混雜模式。

  -q 快速輸出,僅列出少數(shù)的傳輸協(xié)議信息。

  -r<數(shù)據(jù)包文件> 從指定的文件讀取數(shù)據(jù)包數(shù)據(jù)。

  -s<數(shù)據(jù)包大小> 設(shè)置每個(gè)數(shù)據(jù)包的大小。

  -S 用絕對(duì)而非相對(duì)數(shù)值列出TCP關(guān)聯(lián)數(shù)。

  -t 在每列傾倒資料上不顯示時(shí)間戳記。

  -tt 在每列傾倒資料上顯示未經(jīng)格式化的時(shí)間戳記。

  -T<數(shù)據(jù)包類型> 強(qiáng)制將表達(dá)方式所指定的數(shù)據(jù)包轉(zhuǎn)譯成設(shè)置的數(shù)據(jù)包類型。

  -v 詳細(xì)顯示指令執(zhí)行過(guò)程。

  -vv 更詳細(xì)顯示指令執(zhí)行過(guò)程。

  -x 用十六進(jìn)制字碼列出數(shù)據(jù)包資料。

  -w<數(shù)據(jù)包文件> 把數(shù)據(jù)包數(shù)據(jù)寫(xiě)入指定的文件。

  shapecfg(shaper configuration)

  功能說(shuō)明:管制網(wǎng)絡(luò)設(shè)備的流量。

  語(yǔ)  法:shapecfg attach [流量管制器][網(wǎng)絡(luò)設(shè)備] 或 shapecfg speed [流量管制器][帶寬]

  補(bǔ)充說(shuō)明:自Linux-2.15開(kāi)始,便支持流量管制的功能。

  參  數(shù):

  attach 將流量管制器與實(shí)際的網(wǎng)絡(luò)設(shè)備結(jié)合。

  speed 設(shè)置流量管制器的對(duì)外傳輸帶寬。

  setserial

  功能說(shuō)明:設(shè)置或顯示串口的相關(guān)信息。

  語(yǔ)  法:setserial [-abgGqvVz][設(shè)備][串口參數(shù)]

  補(bǔ)充說(shuō)明:setserial可用來(lái)設(shè)置串口或顯示目前的設(shè)置。

  參  數(shù):

  -a 顯示詳細(xì)信息。

  -b 顯示摘要信息。

  -g 顯示串口的相關(guān)信息。

  -G 以指令列表的格式來(lái)顯示信息。

  -q 執(zhí)行時(shí)顯示較少的信息。

  -v 執(zhí)行時(shí)顯示較多的信息。

  -V 顯示版本信息。

  -z 設(shè)置前,先將所有的標(biāo)記歸零。

  samba

  功能說(shuō)明:Samba服務(wù)器控制。

  語(yǔ)  法:samba [start][stop][status][restart]

  補(bǔ)充說(shuō)明:samba為script文件,可啟動(dòng),停止Samba服務(wù)器或回報(bào)目前的狀態(tài)。

  參  數(shù):

  start 啟動(dòng)Samba服務(wù)器的服務(wù)。

  stop 停止Samba服務(wù)器的服務(wù)。

  status 顯示Samba服務(wù)器目前的狀態(tài)。

  restart 重新啟動(dòng)Samba服務(wù)器。

  pppstats(point to point protocol status)

  功能說(shuō)明:顯示PPP連線狀態(tài)。

  語(yǔ)  法:pppstats [-adrv][-c<執(zhí)行次數(shù)>][-w<間隔秒數(shù)>][網(wǎng)絡(luò)界面]

  補(bǔ)充說(shuō)明:利用pppstats指令可讓你得知PPP連接網(wǎng)絡(luò)的相關(guān)信息。

  參  數(shù):

  -a 顯示絕對(duì)統(tǒng)計(jì)值。

  -c<執(zhí)行次數(shù)> 設(shè)置回報(bào)狀況的次數(shù)。

  -d 顯示相對(duì)統(tǒng)計(jì)值。

  -r 顯示數(shù)據(jù)包壓縮比率的統(tǒng)計(jì)值。

  -v 顯示VJTCP文件頭的壓縮效率統(tǒng)計(jì)值。

  -w<間隔秒數(shù)> 設(shè)置顯示統(tǒng)計(jì)信息的間隔時(shí)間。

  pppsetup

  功能說(shuō)明:設(shè)置PPP連線。

  語(yǔ)  法:pppsetup

  補(bǔ)充說(shuō)明:這是Slackware發(fā)行版內(nèi)附程序,它具有互動(dòng)式的問(wèn)答界面,讓用戶輕易完成PPP的連線設(shè)置。

  ppp-off

  功能說(shuō)明:關(guān)閉ppp連線。

  語(yǔ)  法:ppp-of

  補(bǔ)充說(shuō)明:這是Slackware發(fā)行版內(nèi)附的程序,讓用戶切斷PPP的網(wǎng)絡(luò)連線。

  ping

  功能說(shuō)明:檢測(cè)主機(jī)。

  語(yǔ)  法:ping [-dfnqrRv][-c<完成次數(shù)>][-i<間隔秒數(shù)>][-I<網(wǎng)絡(luò)界面>][-l<前置載入 >][-p<范本樣式>][-s<數(shù)據(jù)包大小>][-t<存活數(shù)值>][主機(jī)名稱或IP地址]

  補(bǔ)充說(shuō)明:執(zhí)行ping指令會(huì)使用ICMP傳輸協(xié)議,發(fā)出要求回應(yīng)的信息,若遠(yuǎn)端主機(jī)的網(wǎng)絡(luò)功能沒(méi)有問(wèn)題,就會(huì)回應(yīng)該信息,因而得知該主機(jī)運(yùn)作正常。

  參  數(shù):

  -d 使用Socket的SO_DEBUG功能。

  -c<完成次數(shù)> 設(shè)置完成要求回應(yīng)的次數(shù)。

  -f 極限檢測(cè)。

  -i<間隔秒數(shù)> 指定收發(fā)信息的間隔時(shí)間。

  -I<網(wǎng)絡(luò)界面> 使用指定的網(wǎng)絡(luò)界面送出數(shù)據(jù)包。

  -l<前置載入> 設(shè)置在送出要求信息之前,先行發(fā)出的數(shù)據(jù)包。

  -n 只輸出數(shù)值。

  -p<范本樣式> 設(shè)置填滿數(shù)據(jù)包的范本樣式。

  -q 不顯示指令執(zhí)行過(guò)程,開(kāi)頭和結(jié)尾的相關(guān)信息除外。

  -r 忽略普通的Routing Table,直接將數(shù)據(jù)包送到遠(yuǎn)端主機(jī)上。

  -R 記錄路由過(guò)程。

  -s<數(shù)據(jù)包大小> 設(shè)置數(shù)據(jù)包的大小。

  -t<存活數(shù)值> 設(shè)置存活數(shù)值TTL的大小。

  -v 詳細(xì)顯示指令的執(zhí)行過(guò)程。

  uuname

  功能說(shuō)明:顯示全部的UUCP遠(yuǎn)端主機(jī)。

  語(yǔ)  法:uuname [-alv][-I<配置文件>][--help]

  補(bǔ)充說(shuō)明:uuname可顯示UUCP遠(yuǎn)端主機(jī)。

  參  數(shù):

  -a或--aliases 顯示別名。

  -I<配置文件>或--config<配置文件> 指定程序的配置文件。

  -l或--local 顯示本機(jī)名稱。

  -v或--version 顯示版本信息。

  --help 顯示幫助。

  uulog

  功能說(shuō)明:顯示UUCP記錄文件。

  語(yǔ)  法:uulog [-DFISv][-<行數(shù)>][-f<主機(jī)>][-I<配置文件>][-n<行數(shù)>][-s<主機(jī)>][-u<用戶>][-X<層級(jí)>][--help]

  補(bǔ)充說(shuō)明:uulog可用來(lái)顯示UUCP記錄文件中記錄。

  參  數(shù):

  -D或--debuglog 顯示排錯(cuò)記錄。

  -f<主機(jī)>或--follow<主機(jī)> 與-F參數(shù)類似,但僅顯示與指定主機(jī)相關(guān)的記錄。

  -I<配置文件>或--config<配置文件> 指定程序的配置文件。

  -<行數(shù)>,-n<行數(shù)>或--lines<行數(shù)> 顯示記錄文件中,從最后算起指定行數(shù)的數(shù)值。

  -s<主機(jī)> 僅顯示記錄文件中,與指定文件相關(guān)的記錄。

  -S或--statslog 顯示統(tǒng)計(jì)記錄。

  -u<用戶>或--suer<用戶> 僅顯示記錄文件中,與指定用戶相關(guān)的記錄。

  -v或--version 顯示版本信息。

  -X<層級(jí)>或--debug<層級(jí)> 設(shè)定排錯(cuò)層級(jí)。

  --help 顯示幫助。

  tty(teletypewriter)

  功能說(shuō)明:顯示終端機(jī)連接標(biāo)準(zhǔn)輸入設(shè)備的文件名稱。

  語(yǔ)  法:tty [-s][--help][--version]

  補(bǔ)充說(shuō)明:在Linux操作系統(tǒng)中,所有外圍設(shè)備都有其名稱與代號(hào),這些名稱代號(hào)以特殊文件的類型存放于/dev目錄下。你可以執(zhí)行tty指令查詢目前使用的終端機(jī)的文件名稱。

  參  數(shù):

  -s或--silent或--quiet 不顯示任何信息,只回傳狀態(tài)代碼。

  --help 在線幫助。

  --version 顯示版本信息。

  traceroute

  功能說(shuō)明:顯示數(shù)據(jù)包到主機(jī)間的路徑。

  語(yǔ)  法:traceroute [-dFlnrvx][-f<存活數(shù)值>][-g<網(wǎng)關(guān)>...][-i<網(wǎng)絡(luò)界面>][-m<存活數(shù)值 >][-p<通信端口>][-s<來(lái)源地址>][-t<服務(wù)類型>][-w<超時(shí)秒數(shù)>][主機(jī)名稱或IP地址][數(shù)據(jù)包大小]

  補(bǔ)充說(shuō)明:traceroute指令讓你追蹤網(wǎng)絡(luò)數(shù)據(jù)包的路由途徑,預(yù)設(shè)數(shù)據(jù)包大小是40Bytes,用戶可另行設(shè)置。

  參  數(shù):

  -d 使用Socket層級(jí)的排錯(cuò)功能。

  -f<存活數(shù)值> 設(shè)置第一個(gè)檢測(cè)數(shù)據(jù)包的存活數(shù)值TTL的大小。

  -F 設(shè)置勿離斷位。

  -g<網(wǎng)關(guān)> 設(shè)置來(lái)源路由網(wǎng)關(guān),最多可設(shè)置8個(gè)。

  -i<網(wǎng)絡(luò)界面> 使用指定的網(wǎng)絡(luò)界面送出數(shù)據(jù)包。

  -I 使用ICMP回應(yīng)取代UDP資料信息。

  -m<存活數(shù)值> 設(shè)置檢測(cè)數(shù)據(jù)包的最大存活數(shù)值TTL的大小。

  -n 直接使用IP地址而非主機(jī)名稱。

  -p<通信端口> 設(shè)置UDP傳輸協(xié)議的通信端口。

  -r 忽略普通的Routing Table,直接將數(shù)據(jù)包送到遠(yuǎn)端主機(jī)上。

  -s<來(lái)源地址> 設(shè)置本地主機(jī)送出數(shù)據(jù)包的IP地址。

  -t<服務(wù)類型> 設(shè)置檢測(cè)數(shù)據(jù)包的TOS數(shù)值。

  -v 詳細(xì)顯示指令的執(zhí)行過(guò)程。

  -w<超時(shí)秒數(shù)> 設(shè)置等待遠(yuǎn)端主機(jī)回報(bào)的時(shí)間。

  -x 開(kāi)啟或關(guān)閉數(shù)據(jù)包的正確性檢驗(yàn)。

  testparm(test parameter)

  功能說(shuō)明:測(cè)試Samba的設(shè)置是否正確無(wú)誤。

  語(yǔ)  法:testparm [-s][配置文件][<主機(jī)名稱><IP地址>]

  補(bǔ)充說(shuō)明:執(zhí)行testparm指令可以簡(jiǎn)單測(cè)試Samba的配置文件,假如測(cè)試結(jié)果無(wú)誤,Samba常駐服務(wù)就能正確載入該設(shè)置值,但并不保證其后的操作如預(yù)期般一切正常。

  參  數(shù):

  -s 不顯示提示符號(hào)等待用戶按下Enter鍵,就直接列出Samba服務(wù)定義信息。

  telnet

  功能說(shuō)明:遠(yuǎn)端登入。

  語(yǔ)  法:telnet [-8acdEfFKLrx][-b<主機(jī)別名>][-e<脫離字符>][-k<域名>][-l<用戶名稱 >][-n<記錄文件>][-S<服務(wù)類型>][-X<認(rèn)證形態(tài)>][主機(jī)名稱或IP地址<通信端口 >]

  補(bǔ)充說(shuō)明:執(zhí)行telnet指令開(kāi)啟終端機(jī)階段作業(yè),并登入遠(yuǎn)端主機(jī)。

  參  數(shù):

  -8 允許使用8位字符資料,包括輸入與輸出。

  -a 嘗試自動(dòng)登入遠(yuǎn)端系統(tǒng)。

  -b<主機(jī)別名> 使用別名指定遠(yuǎn)端主機(jī)名稱。

  -c 不讀取用戶專屬目錄里的.telnetrc文件。

  -d 啟動(dòng)排錯(cuò)模式。

  -e<脫離字符> 設(shè)置脫離字符。

  -E 濾除脫離字符。

  -f 此參數(shù)的效果和指定"-F"參數(shù)相同。

  -F 使用Kerberos V5認(rèn)證時(shí),加上此參數(shù)可把本地主機(jī)的認(rèn)證數(shù)據(jù)上傳到遠(yuǎn)端主機(jī)。

  -k<域名> 使用Kerberos認(rèn)證時(shí),加上此參數(shù)讓遠(yuǎn)端主機(jī)采用指定的領(lǐng)域名,而非該主機(jī)的域名。

  -K 不自動(dòng)登入遠(yuǎn)端主機(jī)。

  -l<用戶名稱> 指定要登入遠(yuǎn)端主機(jī)的用戶名稱。

  -L 允許輸出8位字符資料。

  -n<記錄文件> 指定文件記錄相關(guān)信息。

  -r 使用類似rlogin指令的用戶界面。

  -S<服務(wù)類型> 設(shè)置telnet連線所需的IP TOS信息。

  -x 假設(shè)主機(jī)有支持?jǐn)?shù)據(jù)加密的功能,就使用它。

  -X<認(rèn)證形態(tài)> 關(guān)閉指定的認(rèn)證形態(tài)。

  netstat

  功能說(shuō)明:顯示網(wǎng)絡(luò)狀態(tài)。

  語(yǔ)  法:netstat [-acCeFghilMnNoprstuvVwx][-A<網(wǎng)絡(luò)類型>][--ip]

  補(bǔ)充說(shuō)明:利用netstat指令可讓你得知整個(gè)Linux系統(tǒng)的網(wǎng)絡(luò)情況。

  參  數(shù):

  -a或--all 顯示所有連線中的Socket。

  -A<網(wǎng)絡(luò)類型>或--<網(wǎng)絡(luò)類型> 列出該網(wǎng)絡(luò)類型連線中的相關(guān)地址。

  -c或--continuous 持續(xù)列出網(wǎng)絡(luò)狀態(tài)。

  -C?-cache 顯示路由器配置的快取信息。

  -e或--extend 顯示網(wǎng)絡(luò)其他相關(guān)信息。

  -F或--fib 顯示FIB。

  -g或--groups 顯示多重廣播功能群組組員名單。

  -h或--help 在線幫助。

  -i或--interfaces 顯示網(wǎng)絡(luò)界面信息表單。

  -l或--listening 顯示監(jiān)控中的服務(wù)器的Socket。

  -M或--masquerade 顯示偽裝的網(wǎng)絡(luò)連線。

  -n或--numeric 直接使用IP地址,而不通過(guò)域名服務(wù)器。

  -N或--netlink或--symbolic 顯示網(wǎng)絡(luò)硬件外圍設(shè)備的符號(hào)連接名稱。

  -o或--timers 顯示計(jì)時(shí)器。

  -p或--programs 顯示正在使用Socket的程序識(shí)別碼和程序名稱。

  -r或--route 顯示Routing Table。

  -s或--statistice 顯示網(wǎng)絡(luò)工作信息統(tǒng)計(jì)表。

  -t或--tcp 顯示TCP傳輸協(xié)議的連線狀況。

  -u或--udp 顯示UDP傳輸協(xié)議的連線狀況。

  -v或--verbose 顯示指令執(zhí)行過(guò)程。

  -V或--version 顯示版本信息。

  -w或--raw 顯示RAW傳輸協(xié)議的連線狀況。

  -x或--unix 此參數(shù)的效果和指定"-A unix"參數(shù)相同。

  --ip或--inet 此參數(shù)的效果和指定"-A inet"參數(shù)相同。

  mingetty

  功能說(shuō)明:精簡(jiǎn)版的getty。

  語(yǔ)  法:mingetty [--long-hostname][--noclear][tty]

  補(bǔ)充說(shuō)明:mingetty適用于本機(jī)上的登入程序。

  參  數(shù):

  --long-hostname 顯示完整的主機(jī)名稱。

  --noclear 在詢問(wèn)登入的用戶名稱之前不要清楚屏幕畫(huà)面。

  mesg

  功能說(shuō)明:設(shè)置終端機(jī)的寫(xiě)入權(quán)限。

  語(yǔ)  法:mesg [ny]

  補(bǔ)充說(shuō)明:將mesg設(shè)置y時(shí),其他用戶可利用write指令將信息直接顯示在您的屏幕上。

  參  數(shù):

  n 不允許氣筒用戶將信息直接顯示在你的屏幕上。

  y 允許氣筒用戶將信息直接顯示在你的屏幕上。

  ifconfig

  功能說(shuō)明:顯示或設(shè)置網(wǎng)絡(luò)設(shè)備。

  語(yǔ)  法:ifconfig [網(wǎng)絡(luò)設(shè)備][down up -allmulti -arp -promisc][add<地址>][del<地址>][<hw<網(wǎng)絡(luò)設(shè)備類型><硬件地址 >][io_addr<I/O地址>][irq<IRQ地址>][media<網(wǎng)絡(luò)媒介類型>] [mem_start<內(nèi)存地址>][metric<數(shù)目>][mtu<字節(jié)>][netmask<子網(wǎng)掩碼 >][tunnel<地址>][-broadcast<地址>][-pointopoint<地址>][IP 地址]

  補(bǔ)充說(shuō)明:ifconfig可設(shè)置網(wǎng)絡(luò)設(shè)備的狀態(tài),或是顯示目前的設(shè)置。

  參  數(shù):

  add<地址> 設(shè)置網(wǎng)絡(luò)設(shè)備IPv6的IP地址。

  del<地址> 刪除網(wǎng)絡(luò)設(shè)備IPv6的IP地址。

  down 關(guān)閉指定的網(wǎng)絡(luò)設(shè)備。

  <hw<網(wǎng)絡(luò)設(shè)備類型><硬件地址> 設(shè)置網(wǎng)絡(luò)設(shè)備的類型與硬件地址。

  io_addr<I/O地址> 設(shè)置網(wǎng)絡(luò)設(shè)備的I/O地址。

  irq<IRQ地址> 設(shè)置網(wǎng)絡(luò)設(shè)備的IRQ。

  media<網(wǎng)絡(luò)媒介類型> 設(shè)置網(wǎng)絡(luò)設(shè)備的媒介類型。

  mem_start<內(nèi)存地址> 設(shè)置網(wǎng)絡(luò)設(shè)備在主內(nèi)存所占用的起始地址。

  metric<數(shù)目> 指定在計(jì)算數(shù)據(jù)包的轉(zhuǎn)送次數(shù)時(shí),所要加上的數(shù)目。

  mtu<字節(jié)> 設(shè)置網(wǎng)絡(luò)設(shè)備的MTU。

  netmask<子網(wǎng)掩碼> 設(shè)置網(wǎng)絡(luò)設(shè)備的子網(wǎng)掩碼。

  tunnel<地址> 建立IPv4與IPv6之間的隧道通信地址。

  up 啟動(dòng)指定的網(wǎng)絡(luò)設(shè)備。

  -broadcast<地址> 將要送往指定地址的數(shù)據(jù)包當(dāng)成廣播數(shù)據(jù)包來(lái)處理。

  -pointopoint<地址> 與指定地址的網(wǎng)絡(luò)設(shè)備建立直接連線,此模式具有保密功能。

  -promisc 關(guān)閉或啟動(dòng)指定網(wǎng)絡(luò)設(shè)備的promiscuous模式。

  [IP地址] 指定網(wǎng)絡(luò)設(shè)備的IP地址。

  [網(wǎng)絡(luò)設(shè)備] 指定網(wǎng)絡(luò)設(shè)備的名稱。

  getty(get teletypewriter)

  功能說(shuō)明:設(shè)置終端機(jī)模式,連線速率和管制線路。

  語(yǔ)  法:getty [-h][-d<組態(tài)配置文件>][-r<延遲秒數(shù)>][-t<超時(shí)秒數(shù)>][-w<等待字符串>] [終端機(jī)編號(hào)][連線速率<終端機(jī)類型><管制線路>] 或 getty [-c<定義配置文件>]

  補(bǔ)充說(shuō)明:getty指令是UNIX之類操作系統(tǒng)啟動(dòng)時(shí)所必須的3個(gè)步驟之一。

  參  數(shù):

  -c<定義配置文件> 指定定義配置文件,預(yù)設(shè)為/etc/gettydefs。

  -d<組態(tài)配置文件> 指定組態(tài)配置文件,預(yù)設(shè)為/etc/conf.getty。

  -h 當(dāng)傳輸速率為0時(shí)就強(qiáng)制斷線。

  -r<延遲秒數(shù)> 設(shè)置延遲時(shí)間。

  -t<超時(shí)秒數(shù)> 設(shè)置等待登入的時(shí)間。

  -w<等待字符串> 設(shè)置等待回應(yīng)的字符串。

  efax

  功能說(shuō)明:收發(fā)傳真。

  語(yǔ)  法:efax [-sw][-a<AT指令>][-c<調(diào)制解調(diào)器屬性>][-d<驅(qū)動(dòng)程序>][-f<字體文件>] [-g<指令>][-h<傳真標(biāo)題字符串>][-i<AT指令>][-j<AT指令>][-k< AT指令>][-l<識(shí)別碼>][-o<選項(xiàng)>][-q<錯(cuò)誤次數(shù)>][-r<文件名>][- v<信息類型>][-x<UUCP鎖定文件>][-t<電話號(hào)碼><傳真文件>]

  補(bǔ)充說(shuō)明:支持Class 1與Class 2的調(diào)制解調(diào)器來(lái)收發(fā)傳真。

  參  數(shù):

  -a<AT指令> 以指定的AT指令來(lái)接電話。

  -c<調(diào)制解調(diào)器屬性> 設(shè)置本機(jī)調(diào)制解調(diào)器的屬性。

  -d<驅(qū)動(dòng)程序> 指定調(diào)制解調(diào)器驅(qū)動(dòng)程序。

  -f<字體文件> 使用指定的字體文件來(lái)建立傳真標(biāo)題。

  -g<指令> 若接到的電話為數(shù)據(jù),則執(zhí)行指定的指令。

  -h<傳真標(biāo)題字符串> 指定字符串為每頁(yè)最前端的標(biāo)題。

  -i<AT指令> 在調(diào)制解調(diào)器進(jìn)入傳真模式前,傳送AT指令到調(diào)制解調(diào)器。

  -j<AT指令> 在調(diào)制解調(diào)器進(jìn)入傳真模式后,傳送AT指令到調(diào)制解調(diào)器。

  -k<AT指令> 在調(diào)制解調(diào)器離開(kāi)傳真模式前,傳送AT指令到調(diào)制解調(diào)器。

  -l<識(shí)別碼> 設(shè)置本機(jī)調(diào)制解調(diào)器的識(shí)別碼。

  -o<選項(xiàng)> 使用非標(biāo)準(zhǔn)調(diào)制解調(diào)器時(shí)設(shè)置相關(guān)選項(xiàng)。

  -q<錯(cuò)誤次數(shù)> 接收傳真時(shí),當(dāng)每頁(yè)發(fā)生錯(cuò)誤次數(shù)超過(guò)指定的數(shù)目時(shí),要求對(duì)方重發(fā)。

  -r<文件名> 在接收傳真時(shí),將每頁(yè)分別保存成文件。

  -v<信息類型> 選擇要印出的信息類型。

  -w 不要接聽(tīng)電話,等待OK或CONNECT的信號(hào)。

  -x<UUCP鎖定文件> 使用UUCP格式的鎖定文件來(lái)鎖定調(diào)制解調(diào)器。

  -t<電話號(hào)碼><傳真文件> 以<電話號(hào)碼>中的號(hào)碼來(lái)?yè)芴?hào),并將<傳真文件>傳真出去。

  netconfig

  功能說(shuō)明:設(shè)置網(wǎng)絡(luò)環(huán)境。

  語(yǔ)  法:netconfig

  補(bǔ)充說(shuō)明:這是Slackware發(fā)行版內(nèi)附程序,它具有互動(dòng)式的問(wèn)答界面,讓用戶輕易完成網(wǎng)絡(luò)環(huán)境的設(shè)置。

  netconf

  功能說(shuō)明:設(shè)置各項(xiàng)網(wǎng)絡(luò)功能。

  語(yǔ)  法:netconf

  補(bǔ)充說(shuō)明:netconf是Red Hat Linux發(fā)行版專門(mén)用來(lái)調(diào)整Linux各項(xiàng)設(shè)置的程序。

  nc

  功能說(shuō)明:設(shè)置路由器。

  語(yǔ)  法:nc [-hlnruz][-g<網(wǎng)關(guān)...>][-G<指向器數(shù)目>][-i<延遲秒數(shù)>][-o<輸出文件 >][-p<通信端口>][-s<來(lái)源位址>][-v...][-w<超時(shí)秒數(shù)>][主機(jī)名稱][通信端口...]

  補(bǔ)充說(shuō)明:執(zhí)行本指令可設(shè)置路由器的相關(guān)參數(shù)。

  參  數(shù):

  -g<網(wǎng)關(guān)> 設(shè)置路由器躍程通信網(wǎng)關(guān),最丟哦可設(shè)置8個(gè)。

  -G<指向器數(shù)目> 設(shè)置來(lái)源路由指向器,其數(shù)值為4的倍數(shù)。

  -h 在線幫助。

  -i<延遲秒數(shù)> 設(shè)置時(shí)間間隔,以便傳送信息及掃描通信端口。

  -l 使用監(jiān)聽(tīng)模式,管控傳入的資料。

  -n 直接使用IP地址,而不通過(guò)域名服務(wù)器。

  -o<輸出文件> 指定文件名稱,把往來(lái)傳輸?shù)臄?shù)據(jù)以16進(jìn)制字碼傾倒成該文件保存。

  -p<通信端口> 設(shè)置本地主機(jī)使用的通信端口。

  -r 亂數(shù)指定本地與遠(yuǎn)端主機(jī)的通信端口。

  -s<來(lái)源位址> 設(shè)置本地主機(jī)送出數(shù)據(jù)包的IP地址。

  -u 使用UDP傳輸協(xié)議。

  -v 顯示指令執(zhí)行過(guò)程。

  -w<超時(shí)秒數(shù)> 設(shè)置等待連線的時(shí)間。

  -z 使用0輸入/輸出模式,只在掃描通信端口時(shí)使用。

  cu(call up)

  功能說(shuō)明:連接另一個(gè)系統(tǒng)主機(jī)。

  語(yǔ)  法:cu [dehnotv][-a<通信端口>][-c<電話號(hào)碼>][-E<脫離字符>][-I<設(shè)置文件 >][-l<外圍設(shè)備代號(hào)>][-s<連線速率>][-x<排錯(cuò)模式>][-z<系統(tǒng)主機(jī)>] [--help][-nostop][--parity=none][<系統(tǒng)主機(jī)>/<電話號(hào)碼>]

  補(bǔ)充說(shuō)明:本指令可連接另一臺(tái)主機(jī),并采用類似撥號(hào)終端機(jī)的接口工作,也可執(zhí)行簡(jiǎn)易的文件傳輸作業(yè)。

  參  數(shù):

  -a<通信端口>或-p<通信端口>或--port<通信端口> 使用指定的通信端口進(jìn)行連線。

  -c<電話號(hào)碼>或--phone<電話號(hào)碼> 撥打該電話號(hào)碼。

  -d 進(jìn)入排錯(cuò)模式。

  -e或--parity=even 使用雙同位檢查。

  -E<脫離字符>或--escape<脫離字符> 設(shè)置脫離字符。

  -h或--halfduple 使用半雙工模式。

  -I<配置文件>或--config<配置文件> 指定要使用的配置文件。

  -l<外圍設(shè)備代號(hào)>或--line<外圍設(shè)備代號(hào)> 指定某項(xiàng)外圍設(shè)備,作為連接的設(shè)備。

  -n或--prompt 撥號(hào)時(shí)等待用戶輸入電話號(hào)碼。

  -o或--parity=odd 使用單同位檢查。

  -s<連線速率>或--speed<連線速率>或--baud<連線速率>或-<連線速率> 設(shè)置連線的速率,單位以鮑率計(jì)算。

  -t或--maper 把CR字符置換成LF+CR字符。

  -v或--version 顯示版本信息。

  -x<排錯(cuò)模式>或--debug<排錯(cuò)模式> 使用排錯(cuò)模式。

  -z<系統(tǒng)主機(jī)>或--system<系統(tǒng)主機(jī)> 連接該系統(tǒng)主機(jī)。

  --help 在線幫助。

  --nostop 關(guān)閉Xon/Xoff軟件流量控制。

  --parity=none 不使用同位檢查。

  arpwatch(ARP watcher)

  功能說(shuō)明:監(jiān)聽(tīng)網(wǎng)絡(luò)上ARP的記錄。

  語(yǔ)  法:arpwatch [-d][-f<記錄文件>][-i<接口>][-r<記錄文件>]

  補(bǔ)充說(shuō)明:ARP(Address Resolution Protocol)是用來(lái)解析IP與網(wǎng)絡(luò)裝置硬件地址的協(xié)議。arpwatch可監(jiān)聽(tīng)區(qū)域網(wǎng)絡(luò)中的ARP數(shù)據(jù)包并記錄,同時(shí)將監(jiān)聽(tīng)到的變化通過(guò)E-mail來(lái)報(bào)告。

  參  數(shù):

  -d 啟動(dòng)排錯(cuò)模式。

  -f<記錄文件> 設(shè)置存儲(chǔ)ARP記錄的文件,預(yù)設(shè)為/var/arpwatch/arp.dat。

  -i<接口> 指定監(jiān)聽(tīng)ARP的接口,預(yù)設(shè)的接口為eth0。

  -r<記錄文件> 從指定的文件中讀取ARP記錄,而不是從網(wǎng)絡(luò)上監(jiān)聽(tīng)。

  apachectl(Apache control interface)

  功能說(shuō)明:可用來(lái)控制Apache HTTP服務(wù)器的程序。

  語(yǔ)  法:apachectl [configtest][fullstatus][graceful][help][restart][start][status][stop]

  補(bǔ)充說(shuō)明:apachectl是slackware內(nèi)附Apache HTTP服務(wù)器的script文件,可供管理員控制服務(wù)器,但在其他Linux的Apache HTTP服務(wù)器不一定有這個(gè)文件。

  參  數(shù):

  configtest 檢查設(shè)置文件中的語(yǔ)法是否正確。

  fullstatus 顯示服務(wù)器完整的狀態(tài)信息。

  graceful 重新啟動(dòng)Apache服務(wù)器,但不會(huì)中斷原有的連接。

  help 顯示幫助信息。

  restart 重新啟動(dòng)Apache服務(wù)器。

  start 啟動(dòng)Apache服務(wù)器。

  status 顯示服務(wù)器摘要的狀態(tài)信息。

  stop 停止Apache服務(wù)器。

  minicom

  功能說(shuō)明:調(diào)制解調(diào)器通信程序。

  語(yǔ)  法:minicom [-8lmMostz][-a<on或0ff>][-c<on或off>][-C<取文件>][-d<編號(hào) >][-p<模擬終端機(jī)>][-S<script文件>][配置文件]

  補(bǔ)充說(shuō)明:minicom是一個(gè)相當(dāng)受歡迎的PPP撥號(hào)連線程序。

  參  數(shù):

  -8 不要修改任何8位編碼的字符。

  -a<on或0ff> 設(shè)置終端機(jī)屬性。

  -c<on或off> 設(shè)置彩色模式。

  -C<取文件> 指定取文件,并在啟動(dòng)時(shí)開(kāi)啟取功能。

  -d<編號(hào)> 啟動(dòng)或直接撥號(hào)。

  -l 不會(huì)將所有的字符都轉(zhuǎn)成ASCII碼。

  -m 以Alt或Meta鍵作為指令鍵。

  -M 與-m參數(shù)類似。

  -o 不要初始化調(diào)制解調(diào)器。

  -p <模擬終端機(jī)> 使用模擬終端機(jī)。

  -s 開(kāi)啟程序設(shè)置畫(huà)面。

  -S<script文件> 在啟動(dòng)時(shí),執(zhí)行指定的script文件。

  -t 設(shè)置終端機(jī)的類型。

  -z 在終端機(jī)上顯示狀態(tài)列。

  [配置文件] 指定minicom配置文件。

  dip

  功能說(shuō)明:IP撥號(hào)連接。

  語(yǔ)  法:dip [-aikltv][-m<MTU數(shù)目>][-p<協(xié)議>][撥號(hào)script文件]

  補(bǔ)充說(shuō)明:dip可控制調(diào)制解調(diào)器,以撥號(hào)IP的方式建立對(duì)外的雙向連接。

  參  數(shù):

  -a 詢問(wèn)用戶名稱與密碼。

  -i 啟動(dòng)撥號(hào)服務(wù)器功能。

  -k 刪除執(zhí)行中的dip程序。

  -l 指定要?jiǎng)h除的連線,必須配合-k參數(shù)一起使用。

  -m<MTU數(shù)目> 設(shè)置最大傳輸單位,預(yù)設(shè)值為296。

  -p<協(xié)議> 設(shè)置通信協(xié)議。

  -t 進(jìn)入dip的指令模式。

  -v 執(zhí)行時(shí)顯示詳細(xì)的信息。

  dnsconf(dns configurator)

  功能說(shuō)明:設(shè)置DNS服務(wù)器組態(tài)。

  語(yǔ)  法:dnsconf [--deldomain<域>][--delsecondary<域>][--newdomain<域>][-- set<主機(jī)><IP>][--setcname<CNAME><主機(jī)>][--setmx<域 ><主機(jī)>][--setns<域><主機(jī)>][--unset<主機(jī)>]

  補(bǔ)充說(shuō)明:dnsconf實(shí)際上為linuxconf的符號(hào)連接,提供圖形截面的操作方式,供管理員管理DNS服務(wù)器。

  參  數(shù):

  --deldomain<域> 刪除域。

  --delsecondary<域> 刪除次級(jí)域。

  --newdomain<域> 新增域。

  --set<主機(jī)><IP> 新增主機(jī)記錄。

  --setcname<CNAME><主機(jī)> 設(shè)置<CNAME>。

  --setmx<域><主機(jī)> 指定域的郵件主機(jī)。

  --setns<域><主機(jī)> 指定域的DNS服務(wù)器。

  --unset<主機(jī)> 刪除DNS中某臺(tái)主機(jī)的記錄

666585