linux 文件與目錄管理

咱們知道Linux的目錄結構爲樹狀結構,最頂級的目錄爲根目錄 /。less

其餘目錄經過掛載能夠將它們添加到樹中,經過解除掛載能夠移除它們。spa

在開始本教程前咱們須要先知道什麼是絕對路徑與相對路徑。教程

  • 絕對路徑:
    路徑的寫法,由根目錄 / 寫起,例如: /usr/share/doc 這個目錄。
  • 相對路徑:
    路徑的寫法,不是由 / 寫起,例如由 /usr/share/doc 要到 /usr/share/man 底下時,能夠寫成: cd ../man 這就是相對路徑的寫法啦!

處理目錄的經常使用命令

接下來咱們就來看幾個常見的處理目錄的命令吧:遞歸

  • ls: 列出目錄
  • cd:切換目錄    cd ~  返回家目錄
  • pwd:顯示目前的目錄    -P  顯示鏈接路徑
  • mkdir:建立一個新的目錄  
  • rmdir:刪除一個空的目錄  -P 連同上一級的空目錄也都刪除
  • cp: 複製文件或目錄
  • rm: 移除文件或目錄

你可使用 man [命令] 來查看各個命令的使用文檔,如 :man cp。文檔

mkdir (建立新目錄)
若是想要建立新的目錄的話,那麼就使用mkdir (make directory)吧。
語法:
    mkdir [-mp] 目錄名稱
選項與參數:io

  • -m :配置文件的權限喔!直接配置,不須要看默認權限 (umask) 的臉色~
  • -p :幫助你直接將所須要的目錄(包含上一級目錄)遞歸建立起來!

範例:建立權限爲rwx--x--x的目錄test

[root@www tmp]# mkdir -m 711 test2
[root@www tmp]# ls -l
drwxr-xr-x  3 root  root 4096 Jul 18 12:50 test
drwxr-xr-x  3 root  root 4096 Jul 18 12:53 test1
drwx--x--x  2 root  root 4096 Jul 18 12:54 test2

上面的權限部分,若是沒有加上 -m 來強制配置屬性,系統會使用默認屬性。配置

若是咱們使用 -m ,如上例咱們給予 -m 711 來給予新的目錄 drwx--x--x 的權限。date

cp (複製文件或目錄)

cp 即拷貝文件和目錄。file

語法:

[root@www ~]# cp [-adfilprsu] 來源檔(source) 目標檔(destination)
[root@www ~]# cp [options] source1 source2 source3 .... directory

選項與參數:

  • -a:至關於 -pdr 的意思,至於 pdr 請參考下列說明;(經常使用)

  • -d:若來源檔爲連結檔的屬性(link file),則複製連結檔屬性而非文件自己;

  • -f:爲強制(force)的意思,若目標文件已經存在且沒法開啓,則移除後再嘗試一次;

  • -i:若目標檔(destination)已經存在時,在覆蓋時會先詢問動做的進行(經常使用)

  • -l:進行硬式連結(hard link)的連結檔建立,而非複製文件自己;

  • -p:連同文件的屬性一塊兒複製過去,而非使用默認屬性(備份經常使用);

  • -r:遞歸持續複製,用於目錄的複製行爲;(經常使用)

  • -s:複製成爲符號連結檔 (symbolic link),亦即『捷徑』文件;

  • -u:若 destination 比 source 舊才升級 destination !

rm (移除文件或目錄)

語法:

rm [-fir] 文件或目錄

選項與參數:

  • -f :就是 force 的意思,忽略不存在的文件,不會出現警告信息;
  • -i :互動模式,在刪除前會詢問使用者是否動做
  • -r :遞歸刪除啊!最經常使用在目錄的刪除了!這是很是危險的選項!!!

mv (移動文件與目錄,或修更名稱)

語法:

[root@www ~]# mv [-fiu] source destination
[root@www ~]# mv [options] source1 source2 source3 .... directory

選項與參數:

  • -f :force 強制的意思,若是目標文件已經存在,不會詢問而直接覆蓋;
  • -i :若目標文件 (destination) 已經存在時,就會詢問是否覆蓋!
  • -u :若目標文件已經存在,且 source 比較新,纔會升級 (update)

Linux 文件內容查看

Linux系統中使用如下命令來查看文件的內容:

  • cat  由第一行開始顯示文件內容
  • tac  從最後一行開始顯示,能夠看出 tac 是 cat 的倒著寫!
  • nl   顯示的時候,順道輸出行號!
  • more 一頁一頁的顯示文件內容
  • less 與 more 相似,可是比 more 更好的是,他能夠往前翻頁!
  • head 只看頭幾行
  • tail 只看尾巴幾行

more

一頁一頁翻動

在 more 這個程序的運行過程當中,你有幾個按鍵能夠按的:

  • 空白鍵 (space):表明向下翻一頁;
  • Enter         :表明向下翻『一行』;
  • /字串         :表明在這個顯示的內容當中,向下搜尋『字串』這個關鍵字;
  • :f            :馬上顯示出檔名以及目前顯示的行數;
  • q             :表明馬上離開 more ,再也不顯示該文件內容。
  • b 或 [ctrl]-b :表明往回翻頁,不過這動做只對文件有用,對管線無用。

less

一頁一頁翻動

less運行時能夠輸入的命令有:

  • 空白鍵    :向下翻動一頁;
  • [pagedown]:向下翻動一頁;
  • [pageup]  :向上翻動一頁;
  • /字串     :向下搜尋『字串』的功能;
  • ?字串     :向上搜尋『字串』的功能;
  • n         :重複前一個搜尋 (與 / 或 ? 有關!)
  • N         :反向的重複前一個搜尋 (與 / 或 ? 有關!)
  • q         :離開 less 這個程序;

head

取出文件前面幾行

語法:

head [-n number] 文件

選項與參數:

  • -n :後面接數字,表明顯示幾行的意思

tail

取出文件後面幾行

語法:

tail [-n number] 文件

選項與參數:

  • -n :後面接數字,表明顯示幾行的意思
  • -f :表示持續偵測後面所接的檔名,要等到按下[ctrl]-c纔會結束tail的偵測
相關文章
相關標籤/搜索