下面列出十個在使用linux過程中使用頻率最高的命令。這裏只作簡單介紹,具體用法請參考後面內容。
-
cat,顯示文件內容。
-
cd,改變目錄路徑。
-
cp,複製文件。
-
find,查找文件。
-
grep,搜索、過濾信息。
-
ls,列出目錄信息。
-
more,分頁顯示。
-
rm,刪除文件或目錄。
-
vi,調用vi文本編輯器。
-
who,顯示登錄用戶信息。
chmod [options] mode files
只能文件屬主或特權用戶才能使用該功能來改變文件存取模式。mode可以是數字形式或以who opcode permission形式表示。who是可選的,默認是a(所有用戶)。只能選擇一個opcode(操作碼)。可指定多個mode,以逗號分開。
-
options:
- -c,--changes
-
只輸出被改變文件的信息
- -f,--silent,--quiet
-
當chmod不能改變文件模式時,不通知文件的用戶
- --help
-
輸出幫助信息。
- -R,--recursive
-
可遞歸遍歷子目錄,把修改應到目錄下所有文件和子目錄
- --reference=filename
-
參照filename的權限來設置權限
- -v,--verbose
-
無論修改是否成功,輸出每個文件的信息
- --version
-
輸出版本信息。
-
who
- u
-
用戶
- g
-
組
- o
-
其它
- a
-
所有用戶(默認)
-
opcode
- +
-
增加權限
- -
-
刪除權限
- =
-
重新分配權限
permission
- r
-
讀
- w
-
寫
- x
-
執行
- s
-
設置用戶(或組)的ID號
- t
-
設置粘着位(sticky bit),防止文件或目錄被非屬主刪除
- u
-
用戶的當前權限
- g
-
組的當前權限
- o
-
其他用戶的當前權限
-
作爲選擇,我們多數用三位八進制數字的形式來表示權限,第一位指定屬主的權限,第二位指定組權限,第三位指定其他用戶的權限,每位通過4(讀)、2(寫)、1(執行)三種數值的和來確定權限。如6(4+2)代表有讀寫權,7(4+2+1)有讀、寫和執行的權限。
-
還可設置第四位,它位於三位權限序列的前面,第四位數字取值是4,2,1,代表意思如下:
-
4,執行時設置用戶ID,用於授權給基於文件屬主的進程,而不是給創建此進程的用戶。
-
2,執行時設置用戶組ID,用於授權給基於文件所在組的進程,而不是基於創建此進程的用戶。
-
1,設置粘着位。
-
-
實例:
$ chmod u+x file 給file的屬主增加執行權限 $ chmod 751 file 給file的屬主分配讀、寫、執行(7)的權限,給file的所在組分配讀、執行(5)的權限,給其他用戶分配執行(1)的權限 $ chmod u=rwx,g=rx,o=x file 上例的另一種形式 $ chmod =r file 爲所有用戶分配讀權限 $ chmod 444 file 同上例 $ chmod a-wx,a+r 同上例 $ chmod -R u+r directory 遞歸地給directory目錄下所有文件和子目錄的屬主分配讀的權限 $ chmod 4755 設置用ID,給屬主分配讀、寫和執行權限,給組和其他用戶分配讀、執行的權限。
chgrp [options] newgroup files/directorys
組名可以用組的ID號,也可用/etc/group中的組名。只有文件的屬主或特權用戶(root)纔可改變它的組。
-
options:
- -c,--changes
-
只輸出被改變文件的信息
- -f,--silent,--quiet
-
當不能改變文件組屬性時,不通知文件的用戶
- --help
-
輸出幫助信息。
- -R,--recursive
-
可遞歸遍歷子目錄,把修改應到目錄下所有文件和子目錄
- --reference=filename
-
參照filename的組信息來設置當前文件的組
- -v,--verbose
-
輸出詳細信息
- --version
-
輸出版本信息。
-
實例:
$ chgrp root test 把test的所屬組更改root組 $ chgrp -R mysql test 遞歸地把test目錄及該目錄下所有文件和子目錄的組屬性設置成mysql $ chgrp root * 把當前目錄中所有文件的組屬性設置成root
chown [options] newowner files/directorys
新的屬主可以是用戶的ID號,也可以是/etc/passwd裏的登錄名。chown也可接受這樣的形式:newowner:newgroup或newowner.newgroup。同時改變所屬組的屬性。如果句點和冒號後沒有組名,則組改變爲新屬主的組。只有文件或目錄的當前屬主纔有權改變它的屬性。
-
options:
- -c,--changes
-
只輸出被改變文件的信息
- --dereference
-
跟蹤符號鏈接
- -h,--no-dereference
-
改變每一個符號鏈的屬主身份,而不是被引用文件的屬主身份
- -f,--silent,--quiet
-
當不能改變文件屬主屬性時,不通知文件的用戶
- --help
-
輸出幫助信息。
- -R,--recursive
-
可遞歸遍歷子目錄,把修改應到目錄下所有文件和子目錄
- --reference=filename
-
把屬主改變成filename文件的屬主
- -v,--verbose
-
輸出詳細信息
- --version
-
輸出版本信息。
-
實例:
$ chown root test 把test文件的屬主改進root $ chown -R root test_directory 遞歸地把test_directory目錄下的所有文件屬主改成root $ chown --dereference root test_link 把test_link鏈接的原文件屬主改成root,鏈接文件屬主不變 $ chown --no-dereference root test_link 把test_link的鏈接文件屬主改成root,原文件屬主不變
date [options][+format][date]
$ date -s 06/09/2004 修改日期(按月日年格式) $ date -s 13:56:00 修改時間(按時分秒格式) $ date -r test 顯示test文件最後一次的修改時間 $ date +'%Y-%m-%d' 以yyyy-mm-dd格式顯示日期,其它格式請參考幫助 $ clock -r 查詢BIOS時間 $ clock -w 把修改後的時間寫回BIOS
df [options][name]
$ df -h 以友好的格式輸出所有已安裝文件系統的磁盤容量狀態 $ df -m /home 以M爲單位輸出home目錄的磁盤容量狀態 $ df -k 以K爲單位輸出所有已安裝文件系統的磁盤容量狀態 $ df -i 報告空閒的、用過的或部份用過的(百份比)索引節點 $ df -t ext3 僅顯示文件類型爲ext3的文件系統的磁盤狀態 $ df -x ext3 僅顯示文件類型不爲ext3的文件系統的磁盤狀態 $ df -T 除顯示文件系統磁盤容量大小外還顯示文件系統類型 $ df -l 僅顯示本地文件系統。
hdparm [options][driver]
$ hdparm -d /dev/hda 顯示硬盤的DMA模式是不打開,1代表on $ hdparm -tT /dev/hda 測試硬盤的寫性能 $ hdparm -d1 /dev/hda 開啓dma功能 $ hdparm -d1 -X68 -c3 -m16 /dev/hda 選項說明: -c3:把硬盤的IO模式從16位轉成32位。 -m16:改變硬盤的多路扇區的讀功能,-m16使硬盤在一次I/O中斷中讀入16個扇區的數據。 -d1:打開DMA模式。 -X68:支持ATA66的數據傳輸模式。下面是其它模式的設置對照 ATA33.......參數是-X66 ATA66.......參數是-X68 ATA100......參數是-X69 $ hdparm -k1 /dev/hda 保存設置
ln [options] sourcename [destname]
ln [options] sourcenames destdirectory
$ ln -s file1 file2 建立一個到file1的符號鏈接file2,刪除file2不會影響file1 $ ln -s -f file1 file2 建立一個到file1的符號鏈接file2,並不提示是否重寫
shutdown [options] when [message]
用when可以是指定的關機時間(以hh:mm格式)、關機前要等待的時間(以+m格式)、或者now。message指定一條廣播消息通知所有用戶退出系統。showdown給所有進程發送SIGTERM信號,並調用init 1執行實際的關機動作。
$ shutdown -c 取消正在進行的關閉操作 $ shutdown -f 快速重新啓動,在重新啓動時禁止對fsck的常規調用 $ shutdown -h 當關閉完成時停止系統 $ shutdown -k 輸出警告信息,但禁止實際的關閉 $ shutdown -n 不調用init就執行關閉 $ shutdown -r 當關閉完成時重新啓動系統 $ shutdown -t 5 在殺死進程和改變運行級別之間確保延時5秒
swapon/swapoff [options] device
$ swapon -s 顯示交換分區信息 $ swapon -a 激活所有在/etc/fstab中有sw標記的分區 $ swapon -p 1 設置交換分區優先級爲1
tune2fs [options] device
$ tune2fs -l /dev/hda1 顯示hda1分區的超級塊內容 $ tune2fs -c 100 /dev/hda1 設置hda1分區每mount100次就進行磁盤檢查
uniq [options][file1 [files]]
$ uniq -c file file中的重複行輸出一次,並在每行前顯示重複次數 $ uniq -d file file中的重複行輸出一次,但不輸出唯一的行 $ uniq -u file 只輸出file中的唯一行 $ uniq file1 file2 把file1中的重複的相鄰行刪除,並把每行的一個拷貝送到file2