ls (list)
ls -al
ls -a
ls -l
[root@study ~]# ls [-aAdfFhilnrRSt] 檔名或目錄名稱.. [root@study ~]# ls [--color={never,auto,always}] 檔名或目錄名稱.. [root@study ~]# ls [--full-time] 檔名或目錄名稱.. 選項與參數: -a :全部的檔案,連同隱藏檔( 開頭為 . 的檔案) 一起列出來(常用) -A :全部的檔案,連同隱藏檔,但不包括 . 與 .. 這兩個目錄 -d :僅列出目錄本身,而不是列出目錄內的檔案資料(常用) -f :直接列出結果,而不進行排序 (ls 預設會以檔名排序!) -F :根據檔案、目錄等資訊,給予附加資料結構,例如: *:代表可執行檔; /:代表目錄; =:代表 socket 檔案; |:代表 FIFO 檔案; -h :將檔案容量以人類較易讀的方式(例如 GB, KB 等等)列出來; -i :列出 inode 號碼,inode 的意義下一章將會介紹; -l :長資料串列出,包含檔案的屬性與權限等等資料;(常用) -n :列出 UID 與 GID 而非使用者與群組的名稱 (UID與GID會在帳號管理提到!) -r :將排序結果反向輸出,例如:原本檔名由小到大,反向則為由大到小; -R :連同子目錄內容一起列出來,等於該目錄下的所有檔案都會顯示出來; -S :以檔案容量大小排序,而不是用檔名排序; -t :依時間排序,而不是用檔名。 --color=never :不要依據檔案特性給予顏色顯示; --color=always :顯示顏色 --color=auto :讓系統自行依據設定來判斷是否給予顏色 --full-time :以完整時間模式 (包含年、月、日、時、分) 輸出 --time={atime,ctime} :輸出 access 時間或改變權限屬性時間 (ctime) 而非內容變更時間 (modification time) |
cd (change directory)
. 代表此層目錄 .. 代表上一層目錄 - 代表前一個工作目錄 ~ 代表『目前使用者身份』所在的家目錄 ~account 代表 account 這個使用者的家目錄(account是個帳號名稱) |
- cd:變換目錄
- pwd:顯示目前的目錄(Print Working Directory)
- mkdir:建立一個新的目錄 (make directory)
- rmdir:刪除一個空的目錄
cp, rm, mv
[root@study ~]# cp [-adfilprsu] 來源檔(source) 目標檔(destination) [root@study ~]# cp [options] source1 source2 source3 .... directory 選項與參數: -a :相當於 -dr --preserve=all 的意思,至於 dr 請參考下列說明;(常用) -d :若來源檔為連結檔的屬性(link file),則複製連結檔屬性而非檔案本身; -f :為強制(force)的意思,若目標檔案已經存在且無法開啟,則移除後再嘗試一次; -i :若目標檔(destination)已經存在時,在覆蓋時會先詢問動作的進行(常用) -l :進行硬式連結(hard link)的連結檔建立,而非複製檔案本身; -p :連同檔案的屬性(權限、用戶、時間)一起複製過去,而非使用預設屬性(備份常用); -r :遞迴持續複製,用於目錄的複製行為;(常用) -s :複製成為符號連結檔 (symbolic link),亦即『捷徑』檔案; -u :destination 比 source 舊才更新 destination,或 destination 不存在的情況下才複製。 --preserve=all :除了 -p 的權限相關參數外,還加入 SELinux 的屬性, links, xattr 等也複製了。 最後需要注意的,如果來源檔有兩個以上,則最後一個目的檔一定要是『目錄』才行! |
[root@study ~]# rm [-fir] 檔案或目錄 選項與參數: -f :就是 force 的意思,忽略不存在的檔案,不會出現警告訊息; -i :互動模式,在刪除前會詢問使用者是否動作 -r :遞迴刪除啊!最常用在目錄的刪除了!這是非常危險的選項!!! |
[root@study ~]# mv [-fiu] source destination [root@study ~]# mv [options] source1 source2 source3 .... directory 選項與參數: -f :force 強制的意思,如果目標檔案已經存在,不會詢問而直接覆蓋; -i :若目標檔案 (destination) 已經存在時,就會詢問是否覆蓋! -u :若目標檔案已經存在,且 source 比較新,才會更新 (update) |
档案查看
- cat 由第一行開始顯示檔案內容
- tac 從最後一行開始顯示,可以看出 tac 是 cat 的倒著寫!
- nl 顯示的時候,順道輸出行號!
- more 一頁一頁的顯示檔案內容
- less 與 more 類似,但是比 more 更好的是,他可以往前翻頁!
- head 只看頭幾行
- tail 只看尾巴幾行
- od 以二進位的方式讀取檔案內容!
|
[root@study ~]# cat [-AbEnTv] 選項與參數: -A :相當於 -vET 的整合選項,可列出一些特殊字符而不是空白而已; -b :列出行號,僅針對非空白行做行號顯示,空白行不標行號! -E :將結尾的斷行字元 $ 顯示出來; -n :列印出行號,連同空白行也會有行號,與 -b 的選項不同; -T :將 [tab] 按鍵以 ^I 顯示出來; -v :列出一些看不出來的特殊字符 |
[root@study ~]# tac /etc/issue Kernel \r on an \m \S # 嘿嘿!與剛剛上面的範例一比較,是由最後一行先顯示喔! |
[root@study ~]# nl [-bnw] 檔案 選項與參數: -b :指定行號指定的方式,主要有兩種: -b a :表示不論是否為空行,也同樣列出行號(類似 cat -n); -b t :如果有空行,空的那一行不要列出行號(預設值); -n :列出行號表示的方法,主要有三種: -n ln :行號在螢幕的最左方顯示; -n rn :行號在自己欄位的最右方顯示,且不加 0 ; -n rz :行號在自己欄位的最右方顯示,且加 0 ; -w :行號欄位的佔用的字元數。 |
[root@study ~]# more /etc/man_db.conf # # # This file is used by the man-db package to configure the man and cat paths. # It is also used to provide a manpath for those without one by examining # their PATH environment variable. For details see the manpath(5) man page. # .....(中間省略)..... --More--(28%) <== 重點在這一行喔!你的游標也會在這裡等待你的指令 |
- 空白鍵 (space):代表向下翻一頁;
- Enter :代表向下翻『一行』;
- /字串 :代表在這個顯示的內容當中,向下搜尋『字串』這個關鍵字;
- :f :立刻顯示出檔名以及目前顯示的行數;
- q :代表立刻離開 more ,不再顯示該檔案內容。
- b 或 [ctrl]-b :代表往回翻頁,不過這動作只對檔案有用,對管線無用。
[root@study ~]# less /etc/man_db.conf # # # This file is used by the man-db package to configure the man and cat paths. # It is also used to provide a manpath for those without one by examining # their PATH environment variable. For details see the manpath(5) man page. # .....(中間省略)..... : <== 這裡可以等待你輸入指令! |
- 空白鍵 :向下翻動一頁;
- [pagedown]:向下翻動一頁;
- [pageup] :向上翻動一頁;
- /字串 :向下搜尋『字串』的功能;
- ?字串 :向上搜尋『字串』的功能;
- n :重複前一個搜尋 (與 / 或 ? 有關!)
- N :反向的重複前一個搜尋 (與 / 或 ? 有關!)
- g :前進到這個資料的第一行去;
- G :前進到這個資料的最後一行去 (注意大小寫);
- q :離開 less 這個程式;