真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

linux命令比對(duì)序列,序列的比較運(yùn)算

Linux系統(tǒng)最基本,經(jīng)常用的命令有哪些呢?

Linux必學(xué)的60個(gè)命令(3)-系統(tǒng)管理

創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),林周企業(yè)網(wǎng)站建設(shè),林周品牌網(wǎng)站建設(shè),網(wǎng)站定制,林周網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷,網(wǎng)絡(luò)優(yōu)化,林周網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。

由 zhanjun 在 周四, 2006-04-13 12:41 提交

Linux必學(xué)的60個(gè)命令:系統(tǒng)管理相關(guān)命令

Linux必學(xué)的系統(tǒng)管理命令

作者:曹元其 發(fā)文時(shí)間:2004.10.18

對(duì)于Linux系統(tǒng)來(lái)說(shuō),無(wú)論是中央處理器、內(nèi)存、磁盤(pán)驅(qū)動(dòng)器、鍵盤(pán)、鼠標(biāo),還是用戶等都是文件,Linux系統(tǒng)管理的命令是它正常運(yùn)行的核心。熟悉了Linux常用的文件處理命令以后,這一講介紹對(duì)系統(tǒng)和用戶進(jì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

df

1.作用

df命令用來(lái)檢查文件系統(tǒng)的磁盤(pán)空間占用情況,使用權(quán)限是所有用戶。

2.格式

df [options]

3.主要參數(shù)

-s:對(duì)每個(gè)Names參數(shù)只給出占用的數(shù)據(jù)塊總數(shù)。

-a:遞歸地顯示指定目錄中各文件及子目錄中各文件占用的數(shù)據(jù)塊數(shù)。若既不指定-s,也不指定-a,則只顯示Names中的每一個(gè)目錄及其中的各子目錄所占的磁盤(pán)塊數(shù)。

-k:以1024字節(jié)為單位列出磁盤(pán)空間使用情況。

-x:跳過(guò)在不同文件系統(tǒng)上的目錄不予統(tǒng)計(jì)。

-l:計(jì)算所有的文件大小,對(duì)硬鏈接文件則計(jì)算多次。

-i:顯示inode信息而非塊使用量。

-h(huán):以容易理解的格式印出文件系統(tǒng)大小,例如136KB、254MB、21GB。

-P:使用POSIX輸出格式。

-T:顯示文件系統(tǒng)類型。

4.說(shuō)明

df命令被廣泛地用來(lái)生成文件系統(tǒng)的使用統(tǒng)計(jì)數(shù)據(jù),它能顯示系統(tǒng)中所有的文件系統(tǒng)的信息,包括總?cè)萘?、可用的空閑空間、目前的安裝點(diǎn)等。

超級(jí)權(quán)限用戶使用df命令時(shí)會(huì)發(fā)現(xiàn)這樣的情況:某個(gè)分區(qū)的容量超過(guò)了100%。這是因?yàn)長(zhǎng)inux系統(tǒng)為超級(jí)用戶保留了10%的空間,由其單獨(dú)支配。也就是說(shuō),對(duì)于超級(jí)用戶而言,他所見(jiàn)到的硬盤(pán)容量將是110%。這樣的安排對(duì)于系統(tǒng)管理而言是有好處的,當(dāng)硬盤(pán)被使用的容量接近100%時(shí)系統(tǒng)管理員還可以正常工作。

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

Linux支持的文件系統(tǒng)非常多,包括JFS、ReiserFS、ext、ext2、ext3、ISO9660、XFS、Minx、vfat、MSDOS等。使用df -T命令查看磁盤(pán)空間時(shí)還可以得到文件系統(tǒng)的信息:

#df -T

文件系統(tǒng) 類型 容量 已用 可用 已用% 掛載點(diǎn)

/dev/hda7 reiserfs 5.2G 1.6G 3.7G 30% /

/dev/hda1 vfat 2.4G 1.6G 827M 66% /windows/C

/dev/hda5 vfat 3.0G 1.7G 1.3G 57% /windows/D

/dev/hda9 vfat 3.0G 2.4G 566M 82% /windows/E

/dev/hda10 NTFS 3.2G 573M 2.6G 18% /windows/F

/dev/hda11 vfat 1.6G 1.5G 23M 99% /windows/G

從上面除了可以看到磁盤(pán)空間的容量、使用情況外,分區(qū)的文件系統(tǒng)類型、掛載點(diǎn)等信息也一覽無(wú)遺。

top

1.作用

top命令用來(lái)顯示執(zhí)行中的程序進(jìn)程,使用權(quán)限是所有用戶。

2.格式

top [-] [d delay] [q] [c] [S] [s] [i] [n]

3.主要參數(shù)

d:指定更新的間隔,以秒計(jì)算。

q:沒(méi)有任何延遲的更新。如果使用者有超級(jí)用戶,則top命令將會(huì)以最高的優(yōu)先序執(zhí)行。

c:顯示進(jìn)程完整的路徑與名稱。

S:累積模式,會(huì)將己完成或消失的子行程的CPU時(shí)間累積起來(lái)。

s:安全模式。

i:不顯示任何閑置(Idle)或無(wú)用(Zombie)的行程。

n:顯示更新的次數(shù),完成后將會(huì)退出top。

4.說(shuō)明

top命令是Linux系統(tǒng)管理的一個(gè)主要命令,通過(guò)它可以獲得許多信息。這里我們結(jié)合圖1來(lái)說(shuō)明它給出的信息。

圖1 top命令的顯示

在圖1中,第一行表示的項(xiàng)目依次為當(dāng)前時(shí)間、系統(tǒng)啟動(dòng)時(shí)間、當(dāng)前系統(tǒng)登錄用戶數(shù)目、平均負(fù)載。第二行顯示的是所有啟動(dòng)的進(jìn)程、目前運(yùn)行的、掛起 (Sleeping)的和無(wú)用(Zombie)的進(jìn)程。第三行顯示的是目前CPU的使用情況,包括系統(tǒng)占用的比例、用戶使用比例、閑置(Idle)比例。第四行顯示物理內(nèi)存的使用情況,包括總的可以使用的內(nèi)存、已用內(nèi)存、空閑內(nèi)存、緩沖區(qū)占用的內(nèi)存。第五行顯示交換分區(qū)使用情況,包括總的交換分區(qū)、使用的、空閑的和用于高速緩存的大小。第六行顯示的項(xiàng)目最多,下面列出了詳細(xì)解釋。

PID(Process ID):進(jìn)程標(biāo)示號(hào)。

USER:進(jìn)程所有者的用戶名。

PR:進(jìn)程的優(yōu)先級(jí)別。

NI:進(jìn)程的優(yōu)先級(jí)別數(shù)值。

VIRT:進(jìn)程占用的虛擬內(nèi)存值。

RES:進(jìn)程占用的物理內(nèi)存值。

SHR:進(jìn)程使用的共享內(nèi)存值。

S:進(jìn)程的狀態(tài),其中S表示休眠,R表示正在運(yùn)行,Z表示僵死狀態(tài),N表示該進(jìn)程優(yōu)先值是負(fù)數(shù)。

%CPU:該進(jìn)程占用的CPU使用率。

%MEM:該進(jìn)程占用的物理內(nèi)存和總內(nèi)存的百分比。

TIME+:該進(jìn)程啟動(dòng)后占用的總的CPU時(shí)間。

Command:進(jìn)程啟動(dòng)的啟動(dòng)命令名稱,如果這一行顯示不下,進(jìn)程會(huì)有一個(gè)完整的命令行。

top命令使用過(guò)程中,還可以使用一些交互的命令來(lái)完成其它參數(shù)的功能。這些命令是通過(guò)快捷鍵啟動(dòng)的。

空格:立刻刷新。

P:根據(jù)CPU使用大小進(jìn)行排序。

T:根據(jù)時(shí)間、累計(jì)時(shí)間排序。

q:退出top命令。

m:切換顯示內(nèi)存信息。

t:切換顯示進(jìn)程和CPU狀態(tài)信息。

c:切換顯示命令名稱和完整命令行。

M:根據(jù)使用內(nèi)存大小進(jìn)行排序。

W:將當(dāng)前設(shè)置寫(xiě)入~/.toprc文件中。這是寫(xiě)top配置文件的推薦方法。

可以看到,top命令是一個(gè)功能十分強(qiáng)大的監(jiān)控系統(tǒng)的工具,對(duì)于系統(tǒng)管理員而言尤其重要。但是,它的缺點(diǎn)是會(huì)消耗很多系統(tǒng)資源。

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

使用top命令可以監(jiān)視指定用戶,缺省情況是監(jiān)視所有用戶的進(jìn)程。如果想查看指定用戶的情況,在終端中按“U”鍵,然后輸入用戶名,系統(tǒng)就會(huì)切換為指定用戶的進(jìn)程運(yùn)行界面,見(jiàn)圖2所示。

圖2 使用top命令監(jiān)視指定用戶

free

1.作用

free命令用來(lái)顯示內(nèi)存的使用情況,使用權(quán)限是所有用戶。

2.格式

free [-b|-k|-m] [-o] [-s delay] [-t] [-V]

3.主要參數(shù)

-b -k -m:分別以字節(jié)(KB、MB)為單位顯示內(nèi)存使用情況。

-s delay:顯示每隔多少秒數(shù)來(lái)顯示一次內(nèi)存使用情況。

-t:顯示內(nèi)存總和列。

-o:不顯示緩沖區(qū)調(diào)節(jié)列。

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

free命令是用來(lái)查看內(nèi)存使用情況的主要命令。和top命令相比,它的優(yōu)點(diǎn)是使用簡(jiǎn)單,并且只占用很少的系統(tǒng)資源。通過(guò)-S參數(shù)可以使用free命令不間斷地監(jiān)視有多少內(nèi)存在使用,這樣可以把它當(dāng)作一個(gè)方便實(shí)時(shí)監(jiān)控器。

#free -b -s5

使用這個(gè)命令后終端會(huì)連續(xù)不斷地報(bào)告內(nèi)存使用情況(以字節(jié)為單位),每5秒更新一次。

quota

1.作用

quota命令用來(lái)顯示磁盤(pán)使用情況和限制情況,使用權(quán)限超級(jí)用戶。

2.格式

quota [-g][-u][-v][-p] 用戶名 組名

3.參數(shù)

-g:顯示用戶所在組的磁盤(pán)使用限制。

-u:顯示用戶的磁盤(pán)使用限制。

-v:顯示沒(méi)有分配空間的文件系統(tǒng)的分配情況。

-p:顯示簡(jiǎn)化信息。

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

在企業(yè)應(yīng)用中磁盤(pán)配額非常重要,普通用戶要學(xué)會(huì)看懂自己的磁盤(pán)使用情況。要查詢自己的磁盤(pán)配額可以使用下面命令(下例中用戶賬號(hào)是caojh):

#quota caojh

Disk quotas for user caojh(uid 502):

Filesystem blocks quota limit grace files quota limit grace

/dev/hda3 58 200000 400000 41 500 1000

以上顯示ID號(hào)為502的caojh賬號(hào),文件個(gè)數(shù)設(shè)置為500~1000個(gè),硬盤(pán)空間限制設(shè)置為200M

關(guān)于linux命令行,shell命令,vi命令

shell并不是一個(gè)所謂在“終端”執(zhí)行的東西,而是一個(gè)linux內(nèi)核與用戶之間交互的界面,也可以理解成為是一個(gè)專業(yè)翻譯的角色。

vi不過(guò)就是一個(gè)文本編輯器罷了,就如同DOS或Windows系統(tǒng)中的Edit一樣,只不過(guò)這個(gè)vi文本編輯器的功能是可以靠添加模塊來(lái)擴(kuò)展罷了。在unxu或linux中還有一個(gè)文本編輯器叫‘emacs’,只不過(guò)這個(gè)編輯器更煩,更難于掌握。

其實(shí)linux并不難學(xué),無(wú)非就是些常用的‘命令’罷了,而且這些所謂的‘命令’多半都是以源碼的方式存在在系統(tǒng)中的。所謂‘命令行’不過(guò)就是調(diào)用這些源碼后,然后讓一個(gè)叫‘shell’的‘家伙’解釋給linux內(nèi)核去聽(tīng)。而這些所謂的‘命令’統(tǒng)統(tǒng)都在bin或是sbin的目錄下面。

linux在用戶登錄以后,自行會(huì)啟動(dòng)一個(gè)shell,所有用戶必須通過(guò)shell才能與系統(tǒng)會(huì)話。linux的所謂窗口界面,只不過(guò)就是系統(tǒng)在用戶登錄后自行調(diào)用了一個(gè)shell腳本而啟動(dòng)了Xwindow后的表象罷了。

所謂‘命令行’其實(shí)就是shell的解釋命令。

linux下怎么用c獲取硬盤(pán)物理序列號(hào)

1、在Linux系統(tǒng)中通過(guò)C語(yǔ)言獲取硬盤(pán)序列號(hào),可以借助于ioctl()函數(shù),該函數(shù)原型如下:

int?ioctl(int?fd,?unsigned?long?request,?...);

ioctl的第一個(gè)參數(shù)是文件標(biāo)識(shí)符,用open()函數(shù)打開(kāi)設(shè)備時(shí)獲取。

ioctl第二個(gè)參數(shù)為用于獲得指定文件描述符的標(biāo)志號(hào),獲取硬盤(pán)序列號(hào),一般指明為HDIO_GET_IDENTITY。

ioctl的第三個(gè)參數(shù)為一些輔助參數(shù),要獲取硬盤(pán)序列號(hào),需要借助于struct?hd_driveid結(jié)構(gòu)體來(lái)保存硬盤(pán)信息?,該結(jié)構(gòu)體在Linux/hdreg.h中,struct?hd_driveid的聲明如下

struct?hd_driveid?{

unsigned?short????config;????????/?lots?of?obsolete?bit?flags?*/

unsigned?short????cyls;????????/*?Obsolete,?"physical"?cyls?*/

unsigned?short????reserved2;????/*?reserved?(word?2)?*/

unsigned?short????heads;????????/*?Obsolete,?"physical"?heads?*/

unsigned?short????track_bytes;????/*?unformatted?bytes?per?track?*/

unsigned?short????sector_bytes;????/*?unformatted?bytes?per?sector?*/

unsigned?short????sectors;????/*?Obsolete,?"physical"?sectors?per?track?*/

unsigned?short????vendor0;????/*?vendor?unique?*/

unsigned?short????vendor1;????/*?vendor?unique?*/

unsigned?short????vendor2;????/*?Retired?vendor?unique?*/

unsigned?char????serial_no[20];????/*?0?=?not_specified?*/

unsigned?short????buf_type;????/*?Retired?*/

unsigned?short????buf_size;????/*?Retired,?512?byte?increments

*?0?=?not_specified

*/

……

};

2、源代碼如下

#include?stdio.h

//ioctl()的聲明頭文件

#include?sys/ioctl.h

//硬盤(pán)參數(shù)頭文件,?hd_driveid結(jié)構(gòu)聲明頭文件

#include?linux/hdreg.h

//文件控制頭文件

#include?sys/fcntl.h

int?main()

{

//用于保存系統(tǒng)返回的硬盤(pán)數(shù)據(jù)信息

struct?hd_driveid?id;

//這里以第一塊硬盤(pán)為例,用戶可自行修改

//用open函數(shù)打開(kāi)獲取文件標(biāo)識(shí)符,類似于windows下的句柄

int?fd?=?open("/dev/sda",?O_RDONLY|O_NONBLOCK);

//失敗返回?

if?(fd??0)?{

perror("/dev/sda");

return?1;?}

//調(diào)用ioctl()

if(!ioctl(fd,?HDIO_GET_IDENTITY,?id))

{

printf("Serial?Number=%s\n",id.serial_no);

}

return?0;

}

編譯完成后,執(zhí)行效果如下:

linux命令的格式化命令是什么?

如果一個(gè)名稱用%括起來(lái),那么就是用的它的賦值,而不是本身的字母

比如

echo time echo %time%

以上兩個(gè)前者顯示time這個(gè)字母,后者顯示系統(tǒng)時(shí)間 19:42:12:02

還有%diskdiver%=系統(tǒng)盤(pán)等。

可以用set自己設(shè)定,有一些是系統(tǒng)默認(rèn)的比容上面說(shuō)的time;diskdiver

----------------------------------------------------------------------

FOR這條命令基本上都被用來(lái)處理文本,我們這次除了要說(shuō)他處理文本的作用外還要講他的其他一些好用的功能!

看看他的基本格式(這里我引用的是批處理中的格式,直接在命令行只需要一個(gè)%號(hào))

FOR 參數(shù) %%變量名 IN (相關(guān)文件或命令) DO 執(zhí)行的命令

參數(shù):FOR有4個(gè)參數(shù) /d /l /r /f 他們的作用我在下面用例子解釋

%%變量名 :這個(gè)變量名可以是小寫(xiě)a-z或者大寫(xiě)A-Z,他們區(qū)分大小寫(xiě)哦~

FOR會(huì)把每個(gè)讀取到的值給他!

IN:命令的格式,照寫(xiě)就是了!

(相關(guān)文件或命令) :FOR要把什么東西讀取然后賦值給變量,不懂的話看下面的例子

do:命令的格式,照寫(xiě)就是了!

執(zhí)行的命令:對(duì)每個(gè)變量的值要執(zhí)行什么操作就寫(xiě)在這.

看不懂我的這些說(shuō)明,可以在CMD輸入for /?看系統(tǒng)提供的幫助!我這里也給出來(lái)吧,大家對(duì)照

FOR %%variable IN (set) DO command [command-parameters]

%%variable 指定一個(gè)單一字母可替換的參數(shù)。

(set) 指定一個(gè)或一組文件??梢允褂猛ㄅ浞?。

command 指定對(duì)每個(gè)文件執(zhí)行的命令。

command-parameters

為特定命令指定參數(shù)或命令行開(kāi)關(guān)。

現(xiàn)在開(kāi)始講每個(gè)參數(shù)的意思

/d

僅為目錄

如果 Set (也就是我上面寫(xiě)的 "相關(guān)文件或命令") 包含通配符(* 和 ?),將對(duì)與 Set 相匹配的每個(gè)目錄(而不是指定目錄中的文件組)執(zhí)行指定的 Command。

這個(gè)參數(shù)其實(shí)我也沒(méi)弄太懂...有錯(cuò)誤希望各位糾正!

系統(tǒng)幫助的格式:FOR /D %%variable IN (set) DO command

他主要用于目錄搜索,不會(huì)搜索文件,看這樣的例子

@echo off

for /d %%i in (*) do @echo %%i

pause

把他保存放在C盤(pán)根目錄執(zhí)行,就會(huì)把C盤(pán)目錄下的全部目錄名字打印出來(lái),而文件名字一個(gè)也不顯示!

在來(lái)一個(gè),比如我們要把當(dāng)前路徑下文件夾的名字只有1-3個(gè)字母的打出來(lái)

@echo off

for /d %%i in (???) do @echo %%i

pause

這樣的話如果你當(dāng)前目錄下有目錄名字只有1-3個(gè)字母的,就會(huì)顯示出來(lái),沒(méi)有就不顯示了

這里解釋下*號(hào)和?號(hào)的作用,*號(hào)表示任意N個(gè)字符,而?號(hào)只表示任意一個(gè)字符

知道作用了,給大家個(gè)思考題目!

@echo off

for /d %%i in (window?) do @echo %%i

pause

保存到C盤(pán)下執(zhí)行,會(huì)顯示什么呢?自己看吧!

/D參數(shù)只能顯示當(dāng)前目錄下的目錄名字,這個(gè)大家要注意!

/R

遞歸

進(jìn)入根目錄樹(shù) [Drive:]Path,在樹(shù)的每個(gè)目錄中執(zhí)行 for 語(yǔ)句。如果在 /R 后沒(méi)有指定目錄,則認(rèn)為是當(dāng)前目錄。如果 Set 只是一個(gè)句點(diǎn) (.),則只枚舉目錄樹(shù)。

系統(tǒng)幫助的格式:FOR /R [[drive:]path] %%variable IN (set) DO command

上面我們知道,/D只能顯示當(dāng)前路徑下的目錄名字,那么現(xiàn)在這個(gè)/R也是和目錄有關(guān),他能干嘛呢?放心他比/D強(qiáng)大多了!

他可以把當(dāng)前或者你指定路徑下的文件名字全部讀取,注意是文件名字,有什么用看例子!

@echo off

for /r c:\ %%i in (*.exe) do @echo %%i

pause

咋們把這個(gè)BAT保存到D盤(pán)隨便哪里然后執(zhí)行,我會(huì)就會(huì)看到,他把C盤(pán)根目錄,和每個(gè)目錄的子目錄下面全部的EXE文件都列出來(lái)了!!!!

再來(lái)一個(gè)

@echo off

for /r %%i in (*.exe) do @echo %%i

pause

參數(shù)不一樣了吧!這個(gè)命令前面沒(méi)加那個(gè)C:\也就是搜索路徑,這樣他就會(huì)以當(dāng)前目錄為搜索路徑,比如你這個(gè)BAT你把他防災(zāi)d:\test目錄下執(zhí)行,那么他就會(huì)把D:\test目錄和他下面的子目錄的全部EXE文件列出來(lái)!!!

這個(gè)參數(shù)大家因該理解了吧!還是滿好玩的命令!

/L

迭代數(shù)值范圍

使用迭代變量設(shè)置起始值 (Start#),然后逐步執(zhí)行一組范圍的值,直到該值超過(guò)所設(shè)置的終止值 (End#)。/L 將通過(guò)對(duì) Start# 與 End# 進(jìn)行比較來(lái)執(zhí)行迭代變量。如果 Start# 小于 End#,就會(huì)執(zhí)行該命令。如果迭代變量超過(guò) End#,則命令解釋程序退出此循環(huán)。還可以使用負(fù)的 Step# 以遞減數(shù)值的方式逐步執(zhí)行此范圍內(nèi)的值。例如,(1,1,5) 生成序列 1 2 3 4 5,而 (5,-1,1) 則生成序列 (5 4 3 2 1)。語(yǔ)法是:

系統(tǒng)幫助的格式:for /L %% Variable in (Start#,Step#,End#) do Command

看著這說(shuō)明有點(diǎn)暈吧!咋們看例子就不暈了!

@echo off

for /l %%i in (1,1,5) do @echo %%i

pause

保存執(zhí)行看效果,他會(huì)打印從1 2 3 4 5 這樣5個(gè)數(shù)字

(1,1,5)這個(gè)參數(shù)也就是表示從1開(kāi)始每次加1直到5終止!

大會(huì)暈,就打印個(gè)數(shù)字有P用...好的滿足大家,看這個(gè)例子

@echo off

for /l %%i in (1,1,5) do start cmd

pause

執(zhí)行后是不是嚇了一跳,怎么多了5個(gè)CMD窗口,呵呵!如果把那個(gè) (1,1,5)改成 (1,1,65535)會(huì)有什么結(jié)果,我先告訴大家,會(huì)打開(kāi)65535個(gè)CMD窗口....這么多你不死機(jī)算你強(qiáng)!

當(dāng)然我們也可以把那個(gè)start cmd改成md %%i 這樣就會(huì)建立指定個(gè)目錄了!!!名字為1-65535

看完這個(gè)被我賦予破壞性質(zhì)的參數(shù)后,我們來(lái)看最后一個(gè)參數(shù)

/f

\迭代及文件解析

使用文件解析來(lái)處理命令輸出、字符串及文件內(nèi)容。使用迭代變量定義要檢查的內(nèi)容或字符串,并使用各種 ParsingKeywords 選項(xiàng)進(jìn)一步修改解析方式。使用 ParsingKeywords 令牌選項(xiàng)指定哪些令牌應(yīng)該作為迭代變量傳遞。請(qǐng)注意:在沒(méi)有使用令牌選項(xiàng)時(shí),/F 將只檢查第一個(gè)令牌。

文件解析過(guò)程包括讀取輸出、字符串或文件內(nèi)容,將其分成獨(dú)立的文本行以及再將每行解析成零個(gè)或更多個(gè)令牌。然后通過(guò)設(shè)置為令牌的迭代變量值,調(diào)用 for 循環(huán)。默認(rèn)情況下,/F 傳遞每個(gè)文件每一行的第一個(gè)空白分隔符號(hào)。跳過(guò)空行。

系統(tǒng)幫助的格式:

for /F "ParsingKeywords" %% Variable in (FileNameSet) do Command

有沒(méi)有發(fā)現(xiàn)這個(gè)參數(shù)說(shuō)明比上面幾個(gè)都多...沒(méi)辦法,人們用FOR命令主要也就是用/f參數(shù),FOR的主場(chǎng)啊!大家得好好看!

先來(lái)解釋下那個(gè)多出來(lái)的"ParsingKeywords"

他表示4個(gè)參數(shù)

eol=c - 指一個(gè)行注釋字符的結(jié)尾(就一個(gè))

skip=n - 指在文件開(kāi)始時(shí)忽略的行數(shù)。

delims=xxx - 指分隔符集。這個(gè)替換了空格和跳格鍵的

默認(rèn)分隔符集。

tokens=x,y,m-n - 指每行的哪一個(gè)符號(hào)被傳遞到每個(gè)迭代

的 for 本身。這會(huì)導(dǎo)致額外變量名稱的分配。m-n

格式為一個(gè)范圍。通過(guò) nth 符號(hào)指定 mth。如果

符號(hào)字符串中的最后一個(gè)字符星號(hào),

那么額外的變量將在最后一個(gè)符號(hào)解析之后

分配并接受行的保留文本。

usebackq - 指定新語(yǔ)法已在下類情況中使用:

在作為命令執(zhí)行一個(gè)后引號(hào)的字符串并且一個(gè)單

引號(hào)字符為文字字符串命令并允許在 filenameset

中使用雙引號(hào)擴(kuò)起文件名稱。

先別暈了!我這就舉個(gè)例子幫助大家來(lái)理解這些參數(shù)!

usebackq這個(gè)參數(shù)不用理解了,系統(tǒng)默認(rèn)會(huì)給我們加上!

為了能使用這個(gè)例子,我們先新建一個(gè)文本文件,在里面打上這些內(nèi)容保存為test.txt:

;郁悶啊!

您好! 歡迎來(lái)到, 非常批處理

我們的網(wǎng)站 bbs.verybat.org

完畢!

@echo off

FOR /F "eol=; tokens=1 delims= " %%i in (test.txt) do @echo %%i

pause

我們把這個(gè)BAT保存到和你的test.txt相同的目錄下面然后執(zhí)行

我們會(huì)看到屏幕上會(huì)顯示

您好!

我們的網(wǎng)站

完畢!

為什么會(huì)這樣?我來(lái)解釋

這個(gè)命令會(huì)讀取在當(dāng)前目錄下名為test.txt文件中的內(nèi)容,將每一行的內(nèi)容賦值給變量%%i,忽略掉以;號(hào)開(kāi)頭的行,并且以空格做為分隔符號(hào),打印每行以空格做分隔符號(hào)的第一列

結(jié)果就是這樣了!!

如果改成

當(dāng)然我們想要把全部文件內(nèi)容直接打印出來(lái)就可以這樣

@echo off

FOR /F "delims=" %%i in (test.txt) do @echo %%i

pause

另外/F參數(shù)還可以以輸出命令的結(jié)果看這個(gè)例子

@echo off

FOR /F "delims=" %%i in ('net user') do @echo %%i

pause

這樣你本機(jī)全部帳號(hào)名字就出來(lái)了把擴(kuò)號(hào)內(nèi)的內(nèi)容用兩個(gè)單引號(hào)引起來(lái)就表示那個(gè)當(dāng)命令執(zhí)行,FOR會(huì)返回命令的每行結(jié)果,加那個(gè)"delims=" 是為了讓我空格的行能整行顯示出來(lái),不加就只顯示空格左邊一列!

基本上講完了FOR的基本用法了...如果你看過(guò)FOR的系統(tǒng)幫助,你會(huì)發(fā)現(xiàn)他下面還有一些特定義的變量,這些我先不講.大家因該都累了吧!你不累我累啊....

Linux系統(tǒng)top命令的使用方法介紹

Linux系統(tǒng)top命令的使用方法介紹

在Linux系統(tǒng)中top命令可以用來(lái)監(jiān)測(cè)進(jìn)程的狀態(tài),也可以修改進(jìn)程的優(yōu)先序列。本文就來(lái)教大家Linux系統(tǒng)中top命令的使用方法,一起來(lái)看一下。

1、主要選項(xiàng)

-d:后接秒數(shù),狀態(tài)更新的秒數(shù),默認(rèn)5秒

-b:以批次的方式運(yùn)行top,通常利用重定向?qū)op的輸出重定向到文件

-n:結(jié)合-b使用,運(yùn)行top幾次

-p:指定觀察的進(jìn)程的'PID

2、在 top 執(zhí)行過(guò)程當(dāng)中可以使用的按鍵命令:

?:顯示在 top 當(dāng)中可以輸入按鍵命令

P:按CPU的利用率排序顯示;

M:按內(nèi)存的利用率排序顯示;

N:以 PID排序!

T:由該進(jìn)程使用的CPU時(shí)間累積 (TIME+) 排序。

k:給某個(gè) PID 一個(gè)信號(hào)(signal)

r:給某個(gè) PID 重新指定一個(gè)nice值。

q:退出top。

3、例子

$top -d 2 //每2秒更新一次運(yùn)行狀態(tài)

$top -b -n 2 》 ~/tmp/top.txt //將2次運(yùn)行的狀態(tài)信息導(dǎo)出到文件中

$top -d 2 -p 1425 //每2秒更新一次指定進(jìn)程的運(yùn)行狀態(tài)信息

以上就是Linux中top命令的使用方法的全部?jī)?nèi)容了,所以top命令的功能,有點(diǎn)類似微軟系統(tǒng)中進(jìn)程管理器的功能,使用top命令可以監(jiān)控Linux的性能,具體方法可以參考:《如何使用top命令監(jiān)控Linux系統(tǒng)性能》

linux的命令

Linux常用指令

(1)指令名稱:pwd

pwd命令也是最常用最基本的命令之一,用于顯示用戶當(dāng)前所在的目錄。

(2)指令名稱:cd

cd命令不僅顯示當(dāng)前狀態(tài),還改變當(dāng)前狀態(tài),它的用法跟dos下的cd命令基本一致。

cd ..可進(jìn)入上一層目錄

cd -可進(jìn)入上一個(gè)進(jìn)入的目錄

cd ~可進(jìn)入用戶的home目錄

(3)指令名稱:cp

使用方式:

cp [options] source dest

cp [options] source... directory

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

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

-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

(4)名稱:mv

使用方式: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 /Finished

(5)指令名稱 : chmod

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

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

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í)行。

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

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

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

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

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

范例 :將檔案 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)限

(6)指令名稱 : ls

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

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

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

-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

(7)指令名稱:rm

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

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

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

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

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

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

范例:

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

rm -i *.c

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

rm -r Finished

(8)指令名稱:rmdir

使用方式: rmdir [-p] dirName

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

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

范例:

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

rmdir AAA

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

rmdir -p BBB/Test

(9)指令名稱:touch

使用方式:

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ù) 說(shuō)明

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

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

c 假如目的檔案不存在,不會(huì)建立新的檔案。

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

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

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

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

范例:

最簡(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

(10)指令名稱:gzip

說(shuō)明:gzip命令用于壓縮文件。

參數(shù) : -d 將壓縮文件解壓

范例:

如果要將ye.txt文件壓縮,可用如下命令:

gzip ye.txt

這樣就可以壓縮文件并在文件名后面加上gz擴(kuò)展名,變成文件ye.txt.gz。

解壓縮文件可用gzip -d命令實(shí)現(xiàn):

gzip -d ye.txt.gz

這樣就可以解壓縮文件并刪除gz擴(kuò)展名。

(11)指令名稱:tar

說(shuō)明:tar可以為文件和目錄創(chuàng)建檔案。利用tar,用戶可以為某一特定文件創(chuàng)建檔案(備份文件),也可以在檔案中改變文件,或者向檔案中加入新的文件。tar最初被用來(lái)在磁帶上創(chuàng)建檔案,現(xiàn)在,用戶可以在任何設(shè)備上創(chuàng)建檔案,如軟盤(pán)。利用tar命令,可以把一大堆的文件和目錄全部打包成一個(gè)文件,這對(duì)于備份文件或?qū)讉€(gè)文件組合成為一個(gè)文件以便于網(wǎng)絡(luò)傳輸是非常有用的。

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

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 從檔案文件中釋放文件。

f 使用檔案文件或設(shè)備,這個(gè)選項(xiàng)通常是必選的。

m 在還原文件時(shí),把所有文件的修改時(shí)間設(shè)定為現(xiàn)在。

v 詳細(xì)報(bào)告tar處理的文件信息。如無(wú)此選項(xiàng),tar不報(bào)告文件信息。

z 用gzip來(lái)壓縮/解壓縮文件,加上該選項(xiàng)后可以將檔案文件進(jìn)行壓縮,但還原時(shí)也一定要使用該選項(xiàng)進(jìn)行解壓縮。

k 保存已經(jīng)存在的文件。例如我們把某個(gè)文件還原,在還原的過(guò)程中,遇到相同的文件,不會(huì)進(jìn)行覆蓋。

范例:

可用如下方法建立tar檔案:

tar cvf

例如,如果要將當(dāng)前目錄中所有文件存檔到y(tǒng)e.tar中,可用如下命令:

tar cvf ye.tar *.*

要瀏覽檔案內(nèi)容,將c選項(xiàng)變成t。如果要瀏覽ye.tar檔案中的內(nèi)容,可用如下命令:

tar tvf ye.tar

要取出檔案內(nèi)的內(nèi)容,將c選項(xiàng)變成x。如果要將ye.tar檔案中的內(nèi)容取到當(dāng)前目錄中,可用如下命令:

tar xvf ye.tar

新版的tar可以直接訪問(wèn)和建立gzip壓縮的tar檔案,只要在tar命令中加上z 選項(xiàng)就可以了。例如:

生成壓縮檔案ye.tar.gz :

tar czvf ye.tar *.txt

顯示壓縮檔案ye.tar.gz的內(nèi)容:

tar tzvf ye.tar *.txt

取出壓縮檔案ye.tar.gz的內(nèi)容:

tar xzvf ye.tar *.txt

(12)指令名稱:mail

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

說(shuō)明:

mail 不僅只是一個(gè)指令, mail 還是一個(gè)電子郵件程序。

參數(shù):

s 郵件標(biāo)題

c 郵件地址 (2個(gè)地址以上用,一個(gè)地址不用加此參數(shù))

范例:

①將信件送給一個(gè)或以上的電子郵件地址,由于沒(méi)有加入其他的選項(xiàng),使用者必須輸入標(biāo)題與信件的內(nèi)容等。

mail user01@mcs.njnu.edu.cn

系統(tǒng)會(huì)提示輸入“subject”

②將 mail.txt 的內(nèi)容寄給yzhu@mcs.hpc.njnu.edu.cn ,同時(shí)抄送給root@mcs.hpc.njnu.edu.cn

mail -s “標(biāo)題” -c yzhu@mcs.hpc.njnu.edu.cn root@mcs.hpc.njnu.edu.cn mail.txt

接收到的郵件都保存在目錄 /var/spool/mail/用戶名

(13)指令名稱 : wall

使用方式 :

wall [ message ]

使用說(shuō)明:

wall 會(huì)將訊息傳給每一個(gè) mesg 設(shè)定為 yes 的上線使用者。

例子 :

傳訊息"hi" 給每一個(gè)使用者 :

wall hi


網(wǎng)頁(yè)標(biāo)題:linux命令比對(duì)序列,序列的比較運(yùn)算
網(wǎng)頁(yè)鏈接:http://weahome.cn/article/heoesh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部