目錄是一個文件,其唯一的工作就是存儲文件的名稱和相關(guān)信息。無論是普通的,特殊的或目錄,包含所有文件,在目錄中。
UNIX采用了分層結(jié)構(gòu)組織的文件和目錄。這種結(jié)構(gòu)通常稱為作為一個目錄樹。樹有單個根節(jié)點,斜杠字符(/),和所有其他目錄下面都包含它。
目錄中,你會發(fā)現(xiàn)自己,當(dāng)?shù)谝淮蔚卿洉r被稱為你的home目錄。
你的工作一般會在你的home目錄,創(chuàng)建組織文件的目錄和子目錄。
可以去home目錄中隨時使用下面的命令:
$cd ~ $
這里?表示主目錄。如果想要去的任何其他用戶的主目錄中,然后使用下面的命令:
$cd ~username $
最后一個目錄,可以使用以下命令:
$cd - $
目錄都被排列在頂部的根(/)在一個層次。在層次結(jié)構(gòu)中的位置的任何文件描述由它的路徑名。
用/分隔路徑名的元素。路徑名是絕對的,如果它被描述與根系,所以絕對路徑總是以一個/.
這都是一些例子,絕對文件名.
/etc/passwd /users/sjones/chem/notes /dev/rdsk/Os3
也可以是相對當(dāng)前工作目錄的路徑名。永遠(yuǎn)不會開始以/相對路徑名。相對到用戶amrood'的主目錄,有些路徑名可能看起來像這樣:
chem/notes personal/res
為了確定您所處的文件系統(tǒng)的層次結(jié)構(gòu)內(nèi)的任何時間,輸入命令pwd打印當(dāng)前工作目錄:
$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
通過以下命令創(chuàng)建目錄:
$mkdir dirname
在這里,目錄是要創(chuàng)建的目錄的絕對或相對路徑名。例如,下面的命令:
$mkdir mydir
$
在當(dāng)前目錄下創(chuàng)建目錄mydir。這里是另一個例子:
$mkdir /tmp/test-dir $
此命令在/ tmp目錄下創(chuàng)建目錄test目錄。 mkdir命令不產(chǎn)生任何輸出,如果它成功地創(chuàng)建請求的目錄。
如果在命令行上給多目錄,mkdir 會創(chuàng)建的每個目錄。例如:
$mkdir docs pub
$
在當(dāng)前目錄下創(chuàng)建目錄 docs 和 pub。
有時,當(dāng)想創(chuàng)建一個目錄,它的父目錄或目錄可能不存在。在這種情況下mkdir 會發(fā)出錯誤消息,如下所示:
$mkdir /tmp/amrood/test mkdir: Failed to make directory "/tmp/amrood/test"; No such file or directory $
在這種情況下,您可以指定命令mkdir-p選項。它會創(chuàng)建所有必需的目錄。例如:
$mkdir -p /tmp/amrood/test $
上面的命令創(chuàng)建所有必需的父目錄。
目錄可以使用rmdir命令刪除如下:
$rmdir dirname
$
注意:要刪除一個目錄,請確保它是空的,這意味著不應(yīng)該有這個目錄里面的任何文件或子目錄。
可以創(chuàng)建多個目錄的時間如下:
$rmdir dirname1 dirname2 dirname3
$
上述命令將刪除的目錄dirname1 dirname2,dirname2如果它們是空的。 rmdir命令不產(chǎn)生任何輸出,如果它是成功的。
可以使用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
$
文件名 .(點)代表當(dāng)前的工作目錄和文件名 .. (點點)代表當(dāng)前工作目錄的上一級目錄,通常稱為父目錄。
如果我們輸入命令來顯示當(dāng)前工作目錄的文件清單,并使用-a選項列出的所有文件和-l選項提供長列出,這是結(jié)果。
$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 $