命令:$ ls [-aadffhilnrrst] 檔名或目錄名稱..
命令:$ ls [--color=] 檔名或目錄名稱..
命令:$ 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= :輸出 access 時間或改變許可權屬性時間 (ctime)
而非內容變更時間 (modification time)
ls -al | more ##翻頁檢視隱藏文件。
命令:$ cp [-adfilprsu] **檔案(source) 目標檔案(destination)
命令:$ 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 等也複製了。
最後需要注意的,如果**檔有兩個以上,則最後乙個目的檔案一定要是『目錄』才行!
注意:由於 cp 有種種的檔案屬性與許可權的特性,所以,在複製時,你必須要清楚的了解到:
· 是否需要完整的保留**檔案的資訊?
· **檔案是否為鏈結檔 (symbolic link file)?
· **檔是否為特殊的檔案,例如 fifo, socket 等?
· **檔案是否為目錄?
命令:$ rm [-fir] 檔案或目錄
選項與引數:
-f :就是 force 的意思,忽略不存在的檔案,不會出現警告訊息;
-i :互動模式,在刪除前會詢問使用者是否動作
-r :遞迴刪除啊!最常用在目錄的刪除了!這是非常危險的選項!!!
範例一:將剛剛在 cp 的範例中建立的 bashrc 刪除掉!
命令:$ cd /tmp
命令:$ rm -i bashrc
rm: remove regular file `bashrc'? y
# 如果加上 -i 的選項就會主動詢問喔,避免你刪除到錯誤的檔名!
範例二:透過萬用字元*的幫忙,將/tmp 底下開頭為 bashrc 的檔名通通刪除:
命令:$ rm -i bashrc*
# 注意那個星號,代表的是 0 到無窮多個任意字元喔!很好用的東西!
範例三:將 cp 範例中所建立的 /tmp/etc/ 這個目錄刪除掉!
命令:$ rmdir /tmp/etc
rmdir: failed to remove '/tmp/etc': directory not empty <== 刪不掉啊!因為這不是空的目錄!
命令:$ rm -r /tmp/etc
rm: descend into directory `/tmp/etc'? y
rm: remove regular file `/tmp/etc/fstab'? y
rm: remove regular empty file `/tmp/etc/crypttab'? ^c <== 按下 [crtl]+c 中斷
.....(中間省略).....
# 因為身份是 root ,預設已經加入了 -i 的選項,所以你要一直按 y 才會刪除!
# 如果不想要繼續按 y ,可以按下『 [ctrl]-c 』來結束 rm 的工作。
# 這是一種保護的動作,如果確定要刪除掉此目錄而不要詢問,可以這樣做:
命令:$ \rm -r /tmp/etc
# 在指令前加上反斜槓,可以忽略掉 alias 的指定選項喔!至於 alias 我們在 bash 再談!
# 拜託!這個範例很可怕!你不要刪錯了!刪除 /etc 系統是會掛掉的!
範例四:刪除乙個帶有 - 開頭的檔案
命令:$ touch ./-aaa- <==touch 這個指令可以建立空檔案!
命令:$ ls -l
-rw-r--r--. 1 root root 0 jun 11 19:22 -aaa- <==檔案大小為 0,所以是空檔案
命令:$ rm -aaa rm: invalid option -- 'a' <== 因為 "-" 是選項嘛!所以系統誤判了!
try 'rm ./-aaa-' to remove the file `-aaa-'. <== 新的 bash 有給建議的
try 'rm --help' for more information.
命令:$ rm ./-aaa- 命令:$ rm -- -aaa- ##刪除檔案-aaa-
命令:$ mv [-fiu] source destination
命令:$ mv [options] source1 source2 source3 .... directory
選項與引數:
-f :force 強制的意思,如果目標檔案已經存在,不會詢問而直接覆蓋;
-i :若目標檔案 (destination) 已經存在時,就會詢問是否覆蓋!
-u :若目標檔案已經存在,且 source 比較新,才會更新 (update)
範例一:複製一檔案,建立一目錄,將檔案移動到目錄中
命令:$ cd /tmp
命令:$ cp ~/.bashrc bashrc
命令:$ mkdir mvtest
命令:$ mv bashrc mvtest
# 將某個檔案移動到某個目錄去,就是這樣做!
範例二:將剛剛的目錄名稱更名為 mvtest2
命令:$ mv mvtest mvtest2 <== 這樣就更名了!簡單
命令:$ mv [-fiu] source destination
命令:$ mv [options] source1 source2 source3 .... directory
選項與引數:
-f :force 強制的意思,如果目標檔案已經存在,不會詢問而直接覆蓋;
-i :若目標檔案 (destination) 已經存在時,就會詢問是否覆蓋!
-u :若目標檔案已經存在,且 source 比較新,才會更新 (update)
範例三:再建立兩個檔案,再全部移動到 /tmp/mvtest2 當中
命令:$ cp ~/.bashrc bashrc1
命令:$ cp ~/.bashrc bashrc2
命令:$ mv bashrc1 bashrc2 mvtest2
# 注意到這邊,如果有多個**檔案或目錄,則最後乙個目標檔案一定是『目錄!』
# 意思是說,將所有的資料移動到該目錄的意思!
命令:$ basename /etc/sysconfig/network
network <== 很簡單!就取得最後的檔名~
命令:$ dirname /etc/sysconfig/network
/etc/sysconfig <== 取得的變成目錄名了!
Linux 檔案與目錄管理
特殊目錄 當前目錄 上一層目錄 上乙個工作目錄 當前使用者的家目錄 username username的家目錄 ls,重要選項 a 顯示隱藏部分,r 遞迴顯示資料夾內容 l 顯示詳細資訊 ll等價與 ls l file 顯示文件到屬性,如binary or ascii等 which command ...
Linux檔案與目錄管理
1 幾個常見的處理目錄的指令 cd 變換目錄 change directory 注意 目錄名稱與cd指令之間存在乙個空格 pwd 顯示當前目錄 print working directory pwd p 顯示完整路徑 mkdir 建立乙個新的目錄 make directory mkdir p tes...
Linux 檔案與目錄管理
1 當前目錄 上層目錄 cd cc 由aa bb 目錄切換到 aa cc 目錄下 上一工作目錄 相當於視窗中alt tab 當前使用者身份到主資料夾 2.cd 目錄切換 change directory 3.pwd顯示目前所在目錄 print working directory 4.mkdir 建立...