一、瀏覽目錄命令(1)ls命令(list)—顯示目標列表
語法
ls(選項)(參數)
選項
-a:顯示所有檔案及目錄(ls內定將檔案名或目錄名稱為“.”的視為影藏,不會列出);
-A:顯示除影藏文件“.”和“..”以外的所有文件列表;
-C:多列顯示輸出結果。這是默認選項;
-l:與“-C”選項功能相反,所有輸出信息用單列格式輸出,不輸出為多列;
-F:在每個輸出項后追加文件的類型標識符,具體含義:“*”表示具有可執行權限的普通文件,“/”表示目錄,“@”表示符號鏈接,“|”表示命令管道FIFO,“=”表示套接字。當文件為普通文件時,不輸出任何標識符;
-b:將文件中的不可輸出的字符以反斜線“”加字符編碼的方式輸出;
-c:與“-lt”選項連用時,按照文件狀態時間排序輸出目錄內容,排序的依據是文件的索引節點中的ctime字段。與“-l”選項連用時,則排序的一句是文件的狀態改變時間;
-d:僅顯示目錄名,而不顯示目錄下的內容列表。顯示符號鏈接文件本身,而不顯示其所指向的目錄列表;
-f:此參數的效果和同時指定“aU”參數相同,并關閉“lst”參數的效果;
-i:顯示文件索引節點號(inode)。一個索引節點代表一個文件;
--file-type:與“-F”選項的功能相同,但是不顯示“*”;
-k:以KB(千字節)為單位顯示文件大小;
-l:以長格式顯示目錄下的內容列表。輸出的信息從左到右依次包括文件名,文件類型、權限模式、硬連接數、所有者、組、文件大小和文件的最后修改時間等;
-m:用“,”號區隔每個文件和目錄的名稱;
-n:以用戶識別碼和群組識別碼替代其名稱;
-r:以文件名反序排列并輸出目錄內容列表;
-s:顯示文件和目錄的大小,以區塊為單位;
-t:用文件和目錄的更改時間排序;
-L:如果遇到性質為符號鏈接的文件或目錄,直接列出該鏈接所指向的原始文件或目錄;
-R:遞歸處理,將指定目錄下的所有文件及子目錄一并處理;
--full-time:列出完整的日期與時間;
--color[=WHEN]:使用不同的顏色高亮顯示不同類型的。
參數
指定要顯示列表的目錄,也可以是具體的文件。
實例—顯示文件夾信息
[root@localhost /]# ls -ld /etc/
drwxr-xr-x 75 root root 4096 Oct 16 04:02 /etc/
(2)pwd命令(print )—查看當前工作目錄
語法
pwd (選項)
選項
-P 顯示實際路徑
實例—使用pwd命令查看指定文件夾
[root@localhost ~]# cd /opt/soft/
[root@localhost soft]# pwd
/opt/soft
[root@localhost soft]#
二、目錄操作命令(1)cd命令( )—切換目錄
語法
cd (目錄名)
實例—進入系統根目錄
[root@localhost ~]# cd /
實例—跳轉到指定目錄
[root@localhost ~]# cd /opt/soft
(2)mkdir命令(make )—創建指定名稱的目錄
語法
mkdir (選項) 目錄...
選項
-Z:設置安全上下文,當使用時有效;
-m或--mode建立目錄的同時設置目錄的權限;
-p或-- 若所要建立目錄的上層目錄目前尚未建立,則會一并建立上層目錄;
-- 顯示版本信息。
實例—創建一個空目錄
[root@localhost soft]# cd test
[root@localhost test]# mkdir test1
(3)rmdir命令( )—刪除空目錄
語法
rmdir (選項) 目錄...
選項
- p 遞歸刪除目錄,當子目錄刪除后其父目錄為空時,也一同被刪除。如果整個路徑被刪除或者由于某種原因保留部分路徑,則系統在標準輸出上顯示相應的信息。
-v, -- 顯示指令執行過程
實例
[root@localhost scf]# rmdir -p logs
三、瀏覽文件命令(1)cat命令( and files)—連接并顯示文件
語法
cat (選項) 文件...
選項
-A, --show-all 等價于 -vET
-b, --number-nonblank 對非空輸出行編號
-e 等價于 -vE
-E, --show-ends 在每行結束處顯示 $
-n, --number 對輸出的所有行編號
-s, --squeeze-blank 不輸出多行空行
-t 與 -vT 等價
-T, --show-tabs 將跳 字符顯示為 ^I
-u (被忽略)
-v, --show-nonprinting 使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外
--help 顯示此幫助信息并離開
實例—把.log 的文件內容加上行號后輸入 .log 這個文件里
[root@localhost test]# cat log2012.log
2012-01
2012-02
======[root@localhost test]# cat log2013.log
2013-01
2013-02
2013-03
======[root@localhost test]# cat -n log2012.log log2013.log
1 2012-01
2 2012-02
3
4
5 ======
6 2013-01
7 2013-02
8
9
10 2013-03
11 ======[root@localhost test]#
(2)more命令—分頁顯示文件內容
語法
more [-dlfpcsu ] [-num ] [+/ pattern] [+ linenum] [file ... ]
選項
-num 一次顯示的行數
-d 提示使用者,在畫面下方顯示 [Press space to , 'q' to quit.] ,如果使用者按錯鍵,則會顯示 [Press 'h' for .] 而不是 '嗶' 聲
-l 取消遇見特殊字元 ^L(送紙字元)時會暫停的功能
-f 計算行數時,以實際上的行數,而非自動換行過后的行數(有些單行字數太長的會被擴展為兩行或兩行以上)
-p 不以卷動的方式顯示每一頁,而是先清除螢幕后再顯示內容
-c 跟 -p 相似,不同的是先顯示內容再清除其他舊資料
-s 當遇到有連續兩行以上的空白行,就代換為一行的空白行
-u 不顯示下引號 (根據環境變數 TERM 指定的 而有所不同)
+/ 在每個文檔顯示前搜尋該字串(),然后從該字串之后開始顯示
+num 從第 num 行開始顯示
欲顯示內容的文檔,可為復數個數
實例—顯示文件中從第三行起的內容
[root@localhost test]# more +3 log2012.log
2012-03
2012-04-day1
2012-04-day2
2012-04-day3
(3)less命令—分頁顯示文件內容
語法
less (選項)文件
選項
-b 設置緩沖區的大小
-e 當文件顯示結束后,自動離開
-f 強迫打開特殊文件,例如外圍設備代號、目錄和二進制文件
-g 只標志最后搜索的關鍵詞
-i 忽略搜索時的大小寫
-m 顯示類似more命令的百分比
-N 顯示每行的行號
-o 將less 輸出的內容在指定文件中保存起來
-Q 不使用警告音
-s 顯示連續空行為一行
-S 行過長時間將超出部分舍棄
-x 將“tab”鍵顯示為規定的數字空格
/字符串:向下搜索“字符串”的功能
?字符串:向上搜索“字符串”的功能
n:重復前一個搜索(與 / 或 ? 有關)
N:反向重復前一個搜索(與 / 或 ? 有關)
b 向后翻一頁
d 向后翻半頁
h 顯示幫助界面
Q 退出less 命令
u 向前滾動半頁
y 向前滾動一行
空格鍵 滾動一行
回車鍵 滾動一頁
[]: 向下翻動一頁
[]: 向上翻動一頁
實例—查看文件
[rooot@localhost test]# less log2013.log
(4)head命令—顯示文件開頭內容
語法
head (選項) 文件...
選項
-q 隱藏文件名
-v 顯示文件名
-c 顯示字節數
-n 顯示的行數
實例—顯示文件的前n行
[root@localhost test]# head -n 5 log2014.log
2014-01

2014-02
2014-03
2014-04
(5)tail命令—顯示文件結尾內容
語法
tail (選項) 文件...
選項
-f 循環讀取
-q 不顯示處理信息
-v 顯示詳細的處理信息
-c 顯示的字節數
-n 顯示行數
--pid=PID 與-f合用,表示在進程ID,PID死掉之后結束.
-q, --quiet, -- 從不輸出給出文件名的首部
-s, --sleep-=S 與-f合用,表示在每次反復的間隔休眠S秒
實例—顯示文件末尾內容
[root@localhost test]# tail -n 5 log2014.log
2014-09
2014-10
2014-11
2014-12
四、文件操作命令(1)cp命令(copy)—復制文件或目錄
語法
cp (選項) 源文件路徑 目標文件路徑
選項
-a 或 --此參數的效果和同時指定"-dpR"參數相同
-b 或 --刪除、覆蓋目的文件先備份,備份的文件或目錄亦建立為符號鏈接,并指向源文件或目錄鏈接的源文件或目錄。假如沒有加上這個參數,在復制過程中若遇到符號鏈接,則會直接復制源文件或目錄
-f 或 --force強行復制文件或目錄, 不論目的文件或目錄是否已經存在
-i 或 -- 覆蓋文件之前先詢問用戶
-l 或 --link對源文件建立硬鏈接,而非復制文件
-p 或 -- 保留源文件或目錄的屬性,包括所有者、所屬組、權限與時間
-P 或 --保留源文件或目錄的路徑,此路徑可以是絕對路徑或相對路徑,且目的目錄必須已經豐在
-r遞歸處理,將指定目錄下的文件與子目錄一并處理。若源文件或目錄的形態,不屬于目錄或符號鏈接,則一律視為普通文件處理
-R 或 -- 遞歸處理,將指定目錄下的文件及子目錄一并處理
-s 或 ---link 對源文件建立符號鏈接,而非復制文件
-S 或 --= 用"-b"參數備份目的文件后,備份文件的字尾會被加上一個備份字符串。默認的備份字尾符串是符號"~"
-u 或 --使用這項參數之后,只會在源文件的修改時間( Time)較目的文件更新時,或是名稱相互對應的目的文件并不存在,才復制文件
-v 或 --顯示執行過程
-V 或 ---= 指定當備份文件時,備份文件名的命名方式,有以下3種:
1.或t, 將使用備份編號,會在字尾加上~1~字符串,其數字編號依次遞增
2.或never 將使用簡單備份,默認的備份字尾字符串是~, 也可通過-S來指定
3.或nil將使用當前方式,程序會先檢查是否存在著備份編號,若有則采用備份編號,若無則采用簡單備份
-x 或 --one-file- 復制的文件或目錄存放的文件系統,必須與cp指令執行時所處的文件系統相同,否則不復制,亦不處理位于其他分區的文件
--help顯示在線幫助
--= 設置保存希疏文件的時機
--顯示版本
實例—復制文件到目錄
[root@localhost test]# cp log.log test5
(2)rm命令()—刪除文件或目錄
語法
rm (選項) 文件...
選項
-f, --force 忽略不存在的文件,從不給出提示。
-i, -- 進行交互式刪除
-r, -R, -- 指示rm將參數中列出的全部目錄和子目錄均遞歸地刪除。
-v, -- 詳細顯示進行的步驟
--help顯示此幫助信息并退出
-- 輸出版本信息并退出
實例—刪除文件,系統會先詢問是否刪除
[root@localhost test1]# rm log.log
rm:是否刪除 一般文件 “log.log”? y
root@localhost test1]# ll
(3)find命令—尋找文件或目錄
語法
find 文件路徑 (選項)
參數
-print: find命令將匹配的文件輸出到標準輸出。
-exec: find命令對匹配的文件執行該參數所給出的shell命令。相應命令的形式為'' { } \;,注意{ }和\;之間的空格。
-ok: 和-exec的作用相同,只不過以一種更為安全的模式來執行該參數所給出的shell命令,在執行每一個命令之前linux查找關鍵字的行數,都會給出提示,讓用戶來確定是否執行。
選項
-name 按照文件名查找文件。
-perm 按照文件權限來查找文件。
-prune 使用這一選項可以使find命令不在當前指定的目錄中查找,如果同時使用-depth選項,那么-prune將被find命令忽略。
-user 按照文件屬主來查找文件。
-group 按照文件所屬的組來查找文件。
-mtime -n +n 按照文件的更改時間來查找文件, - n表示文件更改時間距現在n天以內,+ n表示文件更改時間距現在n天以前。find命令還有-atime和-ctime 選項,但它們都和-m time選項。
- 查找無有效所屬組的文件,即該文件所屬的組在/etc/中不存在。
- 查找無有效屬主的文件,即該文件的屬主在/etc/中不存在。
-newer file1 ! file2 查找更改時間比文件file1新但比文件file2舊的文件。
-type 查找某一類型的文件,諸如:
b - 塊設備文件。
d - 目錄。
c - 字符設備文件。
p - 管道文件。
l - 符號鏈接文件。
f - 普通文件。
-size n:[c] 查找文件長度為n塊的文件,帶有c時表示文件長度以字節計。-depth:在查找文件時,首先查找當前目錄中的文件,然后再在其子目錄中查找。
-:查找位于某一類型文件系統中的文件linux查找關鍵字的行數,這些文件系統類型通??梢栽谂渲梦募?etc/fstab中找到,該配置文件中包含了本系統中有關文件系統的信息。
-mount:在查找文件時不跨越文件系統mount點。
-:如果find命令遇到符號鏈接文件,就跟蹤至鏈接所指向的文件。
-cpio:對匹配的文件使用cpio命令,將這些文件備份到磁帶設備中。
另外,下面三個的區別:
-amin n 查找系統中最后N分鐘訪問的文件
-atime n 查找系統中最后n*24小時訪問的文件
-cmin n 查找系統中最后N分鐘被改變文件狀態的文件
-ctime n 查找系統中最后n*24小時被改變文件狀態的文件
-mmin n 查找系統中最后N分鐘被改變文件數據的文件
-mtime n 查找系統中最后n*24小時被改變文件數據的文件
實例—查找指定時間內修改過的文件
[root@peidachang ~]# find -atime -2
.
./logs/monitor
./.bashrc
./.bash_profile
./.bash_history
(4)grep命令( a and print)—全局正則表達式
語法
grep (選項)[需要匹配的子串] (查找的源文件)
選項
-a --text #不要忽略二進制的數據。
-A --after-= #除了顯示符合范本樣式的那一列之外,并顯示該行之后的內容。
-b --byte- #在顯示符合樣式的那一行之前,標示出該行第一個字符的編號。
-B ---= #除了顯示符合樣式的那一行之外,并顯示該行之前的內容。
-c --count #計算符合樣式的列數。
-C --=或- #除了顯示符合樣式的那一行之外,并顯示該行之前后的內容。
-d --= #當指定要查找的是目錄而非文件時,必須使用這項參數,否則grep指令將回報信息并停止動作。
-e --= #指定字符串做為查找文件內容的樣式。
-E--- #將樣式為延伸的普通表示法來使用。
-f --file= #指定規則文件,其內容含有一個或多個規則樣式,讓grep查找符合規則條件的文件內容,格式為每行一個規則樣式。
-F --fixed- #將樣式視為固定字符串的列表。
-G --basic- #將樣式視為普通的表示法來使用。
-h --no- #在顯示符合樣式的那一行之前,不標示該行所屬的文件名稱。
-H --with- #在顯示符合樣式的那一行之前,表示該行所屬的文件名稱。
-i ---case #忽略字符大小寫的差別。
-l --file-with- #列出文件內容符合指定的樣式的文件名稱。
-L --files--match #列出文件內容不符合指定的樣式的文件名稱。
-n --line- #在顯示符合樣式的那一行之前,標示出該行的列數編號。
-q --quiet或-- #不顯示任何信息。
-r -- #此參數的效果和指定“-d ”參數相同。
-s --no- #不顯示錯誤信息。
-v ---match #顯示不包含匹配文本的所有行。
-V -- #顯示版本信息。
-w --word- #只顯示全字符合的列。
-x --line- #只顯示全列符合的列。
-y #此參數的效果和指定“-i”參數相同
實例—顯示包含ed或者at字符的內容行
[root@localhost test]# cat test.txt |grep -E "ed|at"
(5)tar命令(tape )—打包文件和目錄
語法
tar (選項) 文件
選項
-A 新增壓縮文件到已存在的壓縮
-B 設置區塊大小
-c 建立新的壓縮文件
-d 記錄文件的差別
-r 添加文件到已經壓縮的文件
-u 添加改變了和現有的文件到已經存在的壓縮文件
-x 從壓縮的文件中提取文件
-t 顯示壓縮文件的內容
-z 支持gzip解壓文件
-j 支持bzip2解壓文件
-Z 支持解壓文件
-v 顯示操作過程
-l 文件系統邊界設置
-k 保留原有文件不覆蓋
-m 保留文件不被覆蓋
-W 確認壓縮文件的正確性
可選參數如下:
-b 設置區塊數目
-C 切換到指定目錄
-f 指定壓縮文件
--help 顯示幫助信息
-- 顯示版本信息
實例—將文件打包成tar包
[root@localhost test]# tar -cvf log.tar log2012.log
log2012.log
[root@localhost test]# tar -zcvf log.tar.gz log2012.log
log2012.log
[root@localhost test]# tar -jcvf log.tar.bz2 log2012.log
log2012.log
[root@localhost test]# ls -al *.tar*
-rw-r--r-- 1 root root 307200 11-29 17:54 log.tar
-rw-r--r-- 1 root root 1413 11-29 17:55 log.tar.bz2
-rw-r--r-- 1 root root 1413 11-29 17:54 log.tar.gz