文件與目錄管理
文件與目錄的檢視: ls
[root@www ~]# ls [-aAdfFhilnrRSt] 目錄名稱
[root@www ~]# ls [--color={never,auto,always}] 目錄名稱
[root@www ~]# ls [--full-time] 目錄名稱
選項與參數(shù):
-a :全部的文件勒极,連同隱藏檔( 開頭為 . 的文件) 一起列出來(常用)
-A :全部的文件占业,連同隱藏檔傲须,但不包括 . 與 .. 這兩個目錄
-d :僅列出目錄本身也榄,而不是列出目錄內的文件數(shù)據(jù)(常用)
-f :直接列出結果撇贺,而不進行排序 (ls 默認會以檔名排序赌莺!)
-F :根據(jù)文件、目錄等資訊松嘶,給予附加數(shù)據(jù)結構艘狭,例如: *:代表可運行檔; /:代表目錄翠订; =:代表 socket 文件巢音; |:代表 FIFO 文件;
-h :將文件容量以人類較易讀的方式(例如 GB, KB 等等)列出來尽超;
-i :列出 inode 號碼官撼,inode 的意義下一章將會介紹;
-l :長數(shù)據(jù)串列出似谁,包含文件的屬性與權限等等數(shù)據(jù)傲绣;(常用)
-n :列出 UID 與 GID 而非使用者與群組的名稱 (UID與GID會在帳號管理提到!)
-r :將排序結果反向輸出巩踏,例如:原本檔名由小到大秃诵,反向則為由大到小塞琼;
-R :連同子目錄內容一起列出來菠净,等於該目錄下的所有文件都會顯示出來;
-S :以文件容量大小排序彪杉,而不是用檔名排序毅往;
-t :依時間排序,而不是用檔名在讶。
--color=never :不要依據(jù)文件特性給予顏色顯示煞抬;
--color=always :顯示顏色
--color=auto :讓系統(tǒng)自行依據(jù)配置來判斷是否給予顏色
--full-time :以完整時間模式 (包含年、月构哺、日、時、分) 輸出
--time={atime,ctime} :輸出 access 時間或改變權限屬性時間 (ctime) 而非內容變更時間 (modification time)
復制曙强、刪除與移動:cp残拐,rm,mv
復制文件:cp
[root@www ~]# cp [-adfilprsu] 來源檔(source) 目標檔(destination)
[root@www ~]# cp [options] source1 source2 source3 .... directory
選項與參數(shù):
-a :相當於 -pdr 的意思碟嘴,至於 pdr 請參考下列說明溪食;(常用)
-d :若來源檔為連結檔的屬性(link file),則復制連結檔屬性而非文件本身娜扇;
-f :為強制(force)的意思错沃,若目標文件已經存在且無法開啟,則移除后再嘗試一次雀瓢;
-i :若目標檔(destination)已經存在時枢析,在覆蓋時會先詢問動作的進行(常用)
-l :進行硬式連結(hard link)的連結檔創(chuàng)建,而非復制文件本身刃麸;
-p :連同文件的屬性一起復制過去醒叁,而非使用默認屬性(備份常用);
-r :遞回持續(xù)復制泊业,用於目錄的復制行為把沼;(常用)
-s :復制成為符號連結檔 (symbolic link),亦即『捷徑』文件吁伺;
-u :若 destination 比 source 舊才升級 destination 饮睬!最后需要注意的,如果來源檔有兩個以上篮奄,則最后一個目的檔一定要是『目錄』才行捆愁!
移除文件或目錄:rm
[root@www ~]# rm [-fir] 文件或目錄
選項與參數(shù):
-f :就是 force 的意思,忽略不存在的文件宦搬,不會出現(xiàn)警告信息牙瓢;
-i :互動模式,在刪除前會詢問使用者是否動作
-r :遞回刪除凹湫!矾克!最常用在目錄的刪除了!這是非常危險的選項c咀恪P哺健!
范例一:將剛剛在 cp 的范例中創(chuàng)建的 bashrc 刪除掉滓彰!
[root@www ~]# cd /tmp
[root@www tmp]# rm -i bashrcrm: remove regular file `bashrc'? y# 如果加上 -i 的選項就會主動詢問喔控妻,避免你刪除到錯誤的檔名!
范例二:透過萬用字節(jié)*的幫忙揭绑,將/tmp底下開頭為bashrc的檔名通通刪除:
[root@www tmp]# rm -i bashrc*# 注意那個星號弓候,代表的是 0 到無窮多個任意字節(jié)喔郎哭!很好用的東西!
范例三:將 cp 范例中所創(chuàng)建的 /tmp/etc/ 這個目錄刪除掉菇存!
[root@www tmp]# rmdir /tmp/etcrmdir: etc: Directory not empty <== 刪不掉翱溲小!因為這不是空的目錄依鸥![root@www tmp]# rm -r /tmp/etcrm: descend into directory `/tmp/etc'? y....(中間省略)....# 因為身份是 root 亥至,默認已經加入了 -i 的選項,所以你要一直按 y 才會刪除贱迟!# 如果不想要繼續(xù)按 y 姐扮,可以按下『 [ctrl]-c 』來結束 rm 的工作。
# 這是一種保護的動作衣吠,如果確定要刪除掉此目錄而不要詢問茶敏,可以這樣做:
[root@www tmp]# \rm -r /tmp/etc# 在命令前加上反斜線,可以忽略掉 alias 的指定選項喔蒸播!至於 alias 我們在bash再談睡榆!
范例四:刪除一個帶有 - 開頭的文件
[root@www tmp]# touch ./-aaa- <==touch這個命令可以創(chuàng)建空文件!
[root@www tmp]# ls -l -rw-r--r-- 1 root root 0 Sep 24 15:03 -aaa- <==文件大小為0袍榆,所以是空文件
[root@www tmp]# rm -aaa-Try `rm --help' for more information. <== 因為 "-" 是選項嘛胀屿!所以系統(tǒng)誤判了!
[root@www tmp]# rm ./-aaa-
移動文件與目錄包雀,或更名:mv
[root@www ~]# mv [-fiu] source destination
[root@www ~]# mv [options] source1 source2 source3 .... directory
選項與參數(shù):
-f :force 強制的意思宿崭,如果目標文件已經存在,不會詢問而直接覆蓋才写;
-i :若目標文件 (destination) 已經存在時葡兑,就會詢問是否覆蓋!
-u :若目標文件已經存在赞草,且 source 比較新讹堤,才會升級 (update)
范例一:復制一文件,創(chuàng)建一目錄厨疙,將文件移動到目錄中
[root@www ~]# cd /tmp[root@www tmp]# cp ~/.bashrc bashrc
[root@www tmp]# mkdir mvtest
[root@www tmp]# mv bashrc mvtest# 將某個文件移動到某個目錄去洲守,就是這樣做!
范例二:將剛剛的目錄名稱更名為 mvtest2
[root@www tmp]# mv mvtest mvtest2 <== 這樣就更名了沾凄!簡單~# 其實在 Linux 底下還有個有趣的命令梗醇,名稱為 rename ,# 該命令專職進行多個檔名的同時更名撒蟀,并非針對單一檔名變更叙谨,與mv不同。請man rename保屯。
范例三:再創(chuàng)建兩個文件手负,再全部移動到 /tmp/mvtest2 當中
[root@www tmp]# cp ~/.bashrc bashrc1[root@www tmp]# cp ~/.bashrc bashrc2
[root@www tmp]# mv bashrc1 bashrc2 mvtest2# 注意到這邊涤垫,如果有多個來源文件或目錄,則最后一個目標檔一定是『目錄虫溜!』# 意思是說雹姊,將所有的數(shù)據(jù)移動到該目錄的意思股缸!
參考:鳥哥的linux私房菜