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
$