在本章中,我们将详细讨论Unix中的目录管理。
目录也是文件,它存储着文件名和文件相关信息,所有文件,无论是普通文件,特殊文件还是目录,都包含在目录中。
Unix使用分层结构来组织文件和目录,这种结构通常称为目录树,该树只有一个根节点,即斜杠字符(/),所有其他目录都包含在其下方。
Home目录
首次登录时进入到的目录称为Home目录,您也可以通过 cd ~ 命令进入Home目录-
$cd ~ $
这里〜表示主目录,假设您想进入其他用户的主目录,请使用以下命令-
$cd ~username $
要进入最后一个目录,可以使用以下命令-
$cd - $
绝对/相对路径
目录按层次结构排列,root(/)在顶部,层次结构中任何文件的位置均由其路径名描述。
路径名的元素由/分隔,如果相对于root进行描述,则路径名是绝对路径,因此绝对路径始终以/开头。
以下是绝对文件名的一些示例。
/etc/passwd /users/learnfk/chem/notes /dev/rdsk/Os3
路径名也可以相对于您当前的工作目录,相对路径名绝不能以/开头,相对于用户learnfk的Home目录,某些路径名可能看起来像这样-
chem/notes personal/res
要随时确定您在文件系统层次结构中的位置,请输入命令 pwd 以打印当前工作目录-
$pwd /user0/home/learnfk $
目录列表
要列出目录中的文件,可以使用以下语法-
$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-dir 。 mkdir 命令如果成功创建了目录,则不会产生任何输出。
如果在命令行上提供多个目录,则 mkdir 将创建每个目录名。如,-
$mkdir docs pub $
在当前目录下创建目录docs和pub。
创建父目录
现在,我们将了解如何创建父目录。有时,当您要创建目录时,其父目录或目录可能不存在。在这种情况下, mkdir 发出如下错误消息-
$mkdir /tmp/learnfk/test mkdir: Failed to make directory "/tmp/learnfk/test"; No such file or directory $
在这种情况下,可以为 mkdir 命令指定 -p 选项。它会为您创建所有必需的目录。如-
$mkdir -p /tmp/learnfk/test $
上面的命令会自动创建所有必需的父目录。
删除目录
可以使用 rmdir 命令删除目录,如下所示:
$rmdir dirname $
注意-要删除目录,请确保目录为空,这意味着该目录内不应有任何文件或子目录。
您可以一次删除多个目录,如下所示:
$rmdir dirname1 dirname2 dirname3 $
如果目录dirname1,dirname2和dirname3为空,则上面的命令将其删除。如果成功, rmdir 命令将不产生任何输出。
更改目录
您可以使用 cd 命令执行其他操作,而不仅仅是更改主目录。您可以通过指定有效的绝对或相对路径来使用它来更改任何目录。语法如下所示-
$cd dirname $
在这里, dirname 是您要更改到的目录的名称。如,命令-
$cd /usr/local/bin $
转到目录/usr/local/bin 。在此目录中,可以使用以下相对路径 cd 到目录/usr/home/learnfk -
$cd ../../home/learnfk $
重命名目录
mv(移动)命令也可以用于重命名目录。语法如下-
$mv olddir newdir $
您可以将目录 mydir 重命名为 yourdir ,如下所示:
$mv mydir yourdir $
当前&上级目录
文件名.(点)代表当前的工作目录,文件名..(点点)表示当前工作目录上一级的目录,通常称为父目录。
如果我们输入命令以显示当前工作目录/文件的列表,然后使用 -a 选项列出所有文件,并使用 -l选项提供长文件名列表,我们将收到以下输出。
$ls -la drwxrwxr-x 4 learnfk class 2048 Jul 16 17.56 . #表示当前目录 drwxr-xr-x 60 root 1536 Jul 13 14:18 .. #表示上级目录 ---------- 1 learnfk class 4210 May 1 08:27 .profile #表示这是个隐藏文件 -rwxr-xr-x 1 learnfk class 1948 May 12 13:42 memo #正常文件 $
参考链接
https://www.learnfk.com/linux/linux-directories.html
标签:教程,创建,mkdir,无涯,cd,命令,Linux,learnfk,目录 From: https://blog.51cto.com/u_14033984/8562227