相關(guān)軟件 >Linux 指令大全(1) 創(chuàng)建者:webmaster 更新時(shí)間:2005-05-17 23:18 cat cd chmod chown cp cut 名稱:cat 使用權(quán)限:所有使用者 使用方式:cat [-AbeEnstTuv] [--help] [--version] fileName 說明:把檔案串連接后傳到基本輸出(螢?zāi)换蚣?> fileName 到另一個(gè)檔案) 參數(shù): -n 或 --number 由 1 開始對(duì)所有輸出的行數(shù)編號(hào) -b 或 --number-nonblank 和 -n 相似,只不過對(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] 說明 : 變換工作目錄至 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... 說明 : 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 表示可寫入,x 表示可執(zhí)行,X 表示只有當(dāng)該檔案是個(gè)子目錄或者該檔案已經(jīng)被設(shè)定過為可執(zhí)行。 -c : 若該檔案權(quán)限確實(shí)已經(jīng)更改,才顯示其更改動(dòng)作 -f : 若該檔案權(quán)限無法被更改也不要顯示錯(cuò)誤訊息 -v : 顯示權(quán)限變更的詳細(xì)資料 -R : 對(duì)目前目錄下的所有檔案與子目錄進(jìn)行相同的權(quán)限變更(即以遞回的方式逐個(gè)變更) --help : 顯示輔助說明 --version : 顯示版本 范例 :將檔案 file1.txt 設(shè)為所有人皆可讀取 : chmod ugo+r file1.txt 將檔案 file1.txt 設(shè)為所有人皆可讀取 : chmod a+r file1.txt 將檔案 file1.txt 與 file2.txt 設(shè)為該檔案擁有者,與其所屬同一個(gè)群體者可寫入,但其他以外的人則不可寫入 : 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ù)字來表示權(quán)限如 chmod 777 file 語法為: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... 說明 : Linux/Unix 是多人多工作業(yè)系統(tǒng),所有的檔案皆有擁有者。利用 chown 可以將檔案的擁有者加以改變。一般來說,這個(gè)指令只有是由系統(tǒng)管理者(root)所使用,一般使用者沒有權(quán)限可以改變別人的檔案擁有者,也沒有權(quán)限可以自己的檔案擁有者改設(shè)為別人。只有系統(tǒng)管理者(root)才有這樣的權(quán)限。 把計(jì) : user : 新的檔案擁有者的使用者 IDgroup : 新的檔案擁有者的使用者群體(group)-c : 若該檔案擁有者確實(shí)已經(jīng)更改,才顯示其更改動(dòng)作-f : 若該檔案擁有者無法被更改也不要顯示錯(cuò)誤訊息-h : 只對(duì)于連結(jié)(link)進(jìn)行變更,而非該 link 真正指向的檔案-v : 顯示擁有者變更的詳細(xì)資料-R : 對(duì)目前目錄下的所有檔案與子目錄進(jìn)行相同的擁有者變更(即以遞回的方式逐個(gè)變更)--help : 顯示輔助說明--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 說明:將一個(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語言程式拷貝至 Finished 子目錄中 : cp *.c Finished 名稱:cut 使用權(quán)限:所有使用者 用法:cut -cnum1-num2 filename 說明:顯示每行從開頭算起 num1 到 num2 的文字。 范例: shell>> cat example test2 this is test1 shell>> cut -c0-6 example ## print 開頭算起前 6 個(gè)字元 test2 this i 名稱 : find 用法 : find 使用說明 : 將檔案系統(tǒng)內(nèi)符合 expression 的檔案列出來。你可以指要檔案的名稱、類別、時(shí)間、大小、權(quán)限等不同資訊的組合,只有完全相符的才會(huì)被列出來。 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 : 在過去 n 分鐘內(nèi)被讀取過 -anewer file : 比檔案 file 更晚被讀取過的檔案 -atime n : 在過去 n 天過讀取過的檔案 -cmin n : 在過去 n 分鐘內(nèi)被修改過 -cnewer file :比檔案 file 更新的檔案 -ctime n : 在過去 n 天過修改過的檔案 -empty : 空的檔案-gid n or -group name : gid 是 n 或是 group 名稱是 name -ipath p, -path p : 路徑名稱符合 p 的檔案,ipath 會(huì)忽略大小寫 -name name, -iname name : 檔案名稱符合 name 的檔案。iname 會(huì)忽略大小寫 -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 的檔案列出來。 # find . -name "*.c" 將目前目錄其其下子目錄中所有一般檔案列出 # find . -ftype f 將目前目錄及其子目錄下所有最近 20 分鐘內(nèi)更新過的檔案列出 # find . -ctime -20 名稱:less 使用權(quán)限:所有使用者 使用方式: less [Option] filename 說明: less 的作用與 more 十分相似,都可以用來瀏覽文字檔案的內(nèi)容,不同的是 less 允許使用者往回卷動(dòng) 以瀏覽已經(jīng)看過的部份,同時(shí)因?yàn)?less 并未在一開始就讀入整個(gè)檔案,因此在遇上大型檔案的開啟時(shí),會(huì)比一般的文書編輯器(如 vi)來的快速。 范例: 指令名稱 : ln 使用權(quán)限 : 所有使用者 使用方式 : ln [options] source dist,其中 option 的格式為 : [-bdfinsvF] [-S backup-suffix] [-V {numbered,existing,simple}] [--help] [--version] [--] 說明 : 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)行詢問-n : 在進(jìn)行軟連結(jié)時(shí),將 dist 視為一般的檔案-s : 進(jìn)行軟鏈結(jié)(symbolic link)-v : 在連結(jié)之前顯示其檔名-b : 將在鏈結(jié)時(shí)會(huì)被覆寫或刪除的檔案進(jìn)行備份-S SUFFIX : 將備份的檔案都加上 SUFFIX 的字尾-V METHOD : 指定備份的方式--help : 顯示輔助說明--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] 說明: locate 讓使用者可以很快速的搜尋檔案系統(tǒng)內(nèi)是否有指定的檔案。其方法是先建立一個(gè)包括系統(tǒng)內(nèi)所有檔案名稱及路徑的資料庫,之后當(dāng)尋找時(shí)就只需查詢這個(gè)資料庫,而不必實(shí)際深入檔案系統(tǒng)之中了。 在一般的 distribution 之中,資料庫的建立都被放在 contab 中自動(dòng)執(zhí)行。一般使用者在使用時(shí)只要用 # locate your_file_name 的型式就可以了。 參數(shù): -u -U 建立資料庫,-u 會(huì)由根目錄開始,-U 則可以指定開始的位置。 -e 將 排除在尋找的范圍之外。 -l 如果 是 1.則啟動(dòng)安全模式。在安全模式下,使用者不會(huì)看到權(quán)限無法看到的檔案。這會(huì)始速度減慢,因?yàn)?locate 必須至實(shí)際的檔案系統(tǒng)中取得檔案的權(quán)限資料。 -f 將特定的檔案系統(tǒng)排除在外,例如我們沒有到理要把 proc 檔案系統(tǒng)中的檔案放在資料庫中。 -q 安靜模式,不會(huì)顯示任何錯(cuò)誤訊息。 -n 至多顯示 個(gè)輸出。 -r 使用正規(guī)運(yùn)算式 做尋找的條件。 -o 指定資料庫存的名稱。 -d 指定資料庫的路徑 -h 顯示輔助訊息 -v 顯示更多的訊息 -V 顯示程式的版本訊息 范例: locate chdrv : 尋找所有叫 chdrv 的檔案 locate -n 100 a.out : 尋找所有叫 a.out 的檔案,但最多只顯示 100 個(gè) locate -u : 建立資料庫 名稱 : ls 使用權(quán)限 : 所有使用者 使用方式 : ls [-alrtAFR] [name...] 說明 : 顯示指定工作目錄下之內(nèi)容(列出目前工作目錄所含之檔案及子目錄)。 -a 顯示所有檔案及目錄 (ls內(nèi)定將檔案名或目錄名稱開頭為"."的視為隱藏檔,不會(huì)列出) -l 除檔案名稱外,亦將檔案型態(tài)、權(quán)限、擁有者、檔案大小等資訊詳細(xì)列出 -r 將檔案以相反次序顯示(原定依英文字母次序) -t 將檔案依建立時(shí)間之先后次序列出 -A 同 -a ,但不列出 "." (目前目錄) 及 ".." (父目錄) -F 在列出的檔案名稱后加一符號(hào);例如可執(zhí)行檔則加 "*", 目錄則加 "/" -R 若目錄下有檔案,則以下之檔案亦皆依序列出 范例: 列出目前工作目錄下所有名稱是 s 開頭的檔案,愈新的排愈后面 : ls -ltr s* 將 /bin 目錄以下所有目錄及檔案詳細(xì)資料列出 : ls -lR /bin 列出目前工作目錄下所有檔案及目錄;目錄于名稱后加 "/", 可執(zhí)行檔于名稱后加 "*" : ls -AF 名稱:more 使用權(quán)限:所有使用者 使用方式:more [-dlfpcsu] [-num] [+/pattern] [+linenum] [fileNames..] 說明:類似 cat ,不過會(huì)以一頁一頁的顯示方便使用者逐頁閱讀,而最基本的指令就是按空白鍵(space)就往下一頁顯示,按 b 鍵就會(huì)往回(back)一頁顯示,而且還有搜尋字串的功能(與 vi 相似),使用中的說明文件,請(qǐng)按 h 。 參數(shù):-num 一次顯示的行數(shù) -d 提示使用者,在畫面下方顯示 [Press space to continue, q to quit.] ,如果使用者按錯(cuò)鍵,則會(huì)顯示 [Press h for instructions.] 而不是 嗶 聲 -l 取消遇見特殊字元 ^L(送紙字元)時(shí)會(huì)暫停的功能 -f 計(jì)算行數(shù)時(shí),以實(shí)際上的行數(shù),而非自動(dòng)換行過后的行數(shù)(有些單行字?jǐn)?shù)太長的會(huì)被擴(kuò)展為兩行或兩行以上) -p 不以卷動(dòng)的方式顯示每一頁,而是先清除螢?zāi)缓笤亠@示內(nèi)容 -c 跟 -p 相似,不同的是先顯示內(nèi)容再清除其他舊資料 -s 當(dāng)遇到有連續(xù)兩行以上的空白行,就代換為一行的空白行 -u 不顯示下引號(hào) (根據(jù)環(huán)境變數(shù) TERM 指定的 terminal 而有所不同) +/ 在每個(gè)檔案顯示前搜尋該字串(pattern),然后從該字串之后開始顯示 +num 從第 num 行開始顯示 fileNames 欲顯示內(nèi)容的檔案,可為復(fù)數(shù)個(gè)數(shù) 范例: more -s testfile 逐頁顯示 testfile 之檔案內(nèi)容,如有連續(xù)兩行以上空白行則以一行空白行顯示。 more +20 testfile 從第 20 行開始顯示 testfile 之檔案內(nèi)容。 名稱:mv 使用權(quán)限:所有使用者 使用方式: mv [options] source dest mv [options] source... directory 說明:將一個(gè)檔案移至另一檔案,或?qū)?shù)個(gè)檔案移至另一目錄。 參數(shù):-i 若目的地已有同名檔案,則先詢問是否覆蓋舊檔。 范例: 將檔案 aaa 更名為 bbb : mv aaa bbb 將所有的C語言程式移至 Finished 子目錄中 : mv -i *.c 名稱:rm 使用權(quán)限:所有使用者 使用方式:rm [options] name... 說明:刪除檔案及目錄。 把計(jì) -i 刪除前逐一詢問確認(rèn)。 -f 即使原檔案屬性設(shè)為唯讀,亦直接刪除,無需逐一確認(rèn)。 -r 將目錄及以下之檔案亦逐一刪除。 范例: 刪除所有C語言程式檔;刪除前逐一詢問確認(rèn) : rm -i *.c 將 Finished 子目錄及子目錄中所有檔案刪除 : rm -r Finished 名稱:rmdir 使用權(quán)限:于目前目錄有適當(dāng)權(quán)限的所有使用者 使用方式: rmdir [-p] dirName 說明: 刪除空的目錄。 參數(shù): -p 是當(dāng)子目錄被刪除后使它也成為空目錄的話,則順便一并刪除。 范例: 將工作目錄下,名為 AAA 的子目錄刪除 : rmdir AAA 在工作目錄下的 BBB 目錄中,刪除名為 Test 的子目錄。若 Test 刪除后,BBB 目錄成為空目錄,則 BBB 亦予刪除。 rmdir -p BBB/Test 名稱:split 使用權(quán)限:所有使用者 使用方式:split [OPTION] [INPUT [PREFIX]] 說明: 將一個(gè)檔案分割成數(shù)個(gè)。而從 INPUT 分割輸出成固定大小的檔案,其檔名依序?yàn)?PREFIXaa, PREFIXab...;PREFIX 預(yù)設(shè)值為 `x。若沒有 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è)輸出檔被開啟前,列印出偵錯(cuò)資訊到標(biāo)準(zhǔn)錯(cuò)誤輸出。 --help 顯示輔助資訊然后離開。 --version 列出版本資訊然后離開。 SIZE 可加入單位: b 代表 512, k 代表 1K, m 代表 1 Meg。 范例: PostgresSQL 大型資料庫備份與回存: 因 Postgres 允許表格大過你系統(tǒng)檔案的最大容量,所以要將表格 dump 到單一的檔案可能會(huì)有問題,使用 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 ...] 說明: 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 相關(guān)文章 本頁查看次數(shù):