UNIX 目錄管理
目錄是一個文件,其唯一的工作就是存儲文件的名稱和相關信息。無論是普通的,特殊的或目錄,包含所有文件,在目錄中。
UNIX采用了分層結構組織的文件和目錄。這種結構通常稱為作為一個目錄樹。樹有單個根節點,斜杠字符(/),和所有其他目錄下麵都包含它。
主目錄:
目錄中,你會發現自己,當第一次登錄時被稱為你的home目錄。
你的工作一般會在你的home目錄,創建組織文件的目錄和子目錄。
可以去home目錄中隨時使用下麵的命令:
$cd ~ $
這裡〜表示主目錄。如果想要去的任何其他用戶的主目錄中,然後使用下麵的命令:
$cd ~username $
最後一個目錄,可以使用以下命令:
$cd - $
絕對/相對路徑名:
目錄都被排列在頂部的根(/)在一個層次。在層次結構中的位置的任何文件描述由它的路徑名。
用/分隔路徑名的元素。路徑名是絕對的,如果它被描述與根係,所以絕對路徑總是以一個/.
這都是一些例子,絕對文件名.
/etc/passwd /users/sjones/chem/notes /dev/rdsk/Os3
也可以是相對當前工作目錄的路徑名。永遠不會開始以/相對路徑名。相對到用戶amrood'的主目錄,有些路徑名可能看起來像這樣:
chem/notes personal/res
為了確定您所處的文件係統的層次結構內的任何時間,輸入命令pwd打印當前工作目錄:
$pwd /user0/home/amrood $
列出目錄:
要列出目錄中的文件,可以使用下麵的語法:
$ls dirname
下麵的例子列出包含的所有文件在/usr/local目錄:
$ls /usr/local X11 bin gimp jikes sbin ace doc include lib share atalk etc info man ami
創建目錄:
通過以下命令創建目錄:
$mkdir dirname
在這裡,目錄是要創建的目錄的絕對或相對路徑名。例如,下麵的命令:
$mkdir mydir
$
在當前目錄下創建目錄mydir。這裡是另一個例子:
$mkdir /tmp/test-dir $
此命令在/ tmp目錄下創建目錄test目錄。 mkdir命令不產生任何輸出,如果它成功地創建請求的目錄。
如果在命令行上給多目錄,mkdir 會創建的每個目錄。例如:
$mkdir docs pub
$
在當前目錄下創建目錄 docs 和 pub。
創建父目錄:
有時,當想創建一個目錄,它的父目錄或目錄可能不存在。在這種情況下mkdir 會發出錯誤消息,如下所示:
$mkdir /tmp/amrood/test mkdir: Failed to make directory "/tmp/amrood/test"; No such file or directory $
在這種情況下,您可以指定命令mkdir-p選項。它會創建所有必需的目錄。例如:
$mkdir -p /tmp/amrood/test $
上麵的命令創建所有必需的父目錄。
刪除目錄:
目錄可以使用rmdir命令刪除如下:
$rmdir dirname
$
注意:要刪除一個目錄,請確保它是空的,這意味著不應該有這個目錄裡麵的任何文件或子目錄。
可以創建多個目錄的時間如下:
$rmdir dirname1 dirname2 dirname3
$
上述命令將刪除的目錄dirname1 dirname2,dirname2如果它們是空的。 rmdir命令不產生任何輸出,如果它是成功的。
改變目錄:
可以使用cd命令做多變化的主目錄:可以用它來指定一個有效的絕對或相對路徑切換到任意目錄。語法如下:
$cd dirname
$
在這裡,dirname是目錄的名稱。例如,下麵的命令:
$cd /usr/local/bin $
更改到目錄 /usr/local/bin。在這個目錄中,你可以cd到目錄 /usr/home/amrood 使用下麵的相對路徑:
$cd ../../home/amrood $
重命名目錄:
mv (move) 命令也可以用來重命名一個目錄。語法如下:
$mv olddir newdir
$
可以重命名目錄mydir 為 yourdir,如下:
$mv mydir yourdir
$
目錄 .(點)和 .. (點點)
文件名 .(點)代表當前的工作目錄和文件名 .. (點點)代表當前工作目錄的上一級目錄,通常稱為父目錄。
如果我們輸入命令來顯示當前工作目錄的文件清單,並使用-a選項列出的所有文件和-l選項提供長列出,這是結果。
$ls -la drwxrwxr-x 4 teacher class 2048 Jul 16 17.56 . drwxr-xr-x 60 root 1536 Jul 13 14:18 .. ---------- 1 teacher class 4210 May 1 08:27 .profile -rwxr-xr-x 1 teacher class 1948 May 12 13:42 memo $