目录管理类的命令:
mkdir
mkdir:make directroy
mkdir [OPTION]… DIRECTORY.. \\创建目录时,可以是绝对路径,也可以是相对路径。
mkdir tmp\x\y\z \\如果常见z目录的时候,前面没有相应的目录,则不能创建成功。
注意:路径基名方为命令的作用对象
上面的例子,正确创建目录如下:
意思就是要有前面的路径(父目录),才能创建最终的目录。
如果不想一步一步创建父目录,可以使用mkdir -p参数,自动按需创建目录
即mkdir -p /tmp/x/y/z
如果想清楚知道创建的过程,可以使用-v参数,即:mkdir -pv /tmp/xx/y/z
如果想创建目录时,直接给定权限,可以使用-m
参数,权限后面的章节会介绍。
rmdir:remove empty directories 移除空目录。
如刚才创建的/tmp/x/y/z,要移除x目录,需要执行如下操作:
~]# rmdir /tmp/x/y/z
~]# rmdir /tmp/x/y
~]# rmdir /tmp/x
也支持-p
和-v
参数,记住只支持空目录的移除。
问题1:如何创建/tmp/x/y1 ,/tmp/x/y2,/tmp/x/y1/a,/tmp/x/y1/b?
问题2:如何创建a_c,a_d,b_c,b_d:
bash的基础特性之:命令行展开
~:自动展开为用户的家目录,或指定的用户的家目录;
{}:可承载一个以逗号分隔的路径列表,并能够将其展开为多个路径;
例如:/tmp/{a,b}相当于/tmp/a /tmp/b
有了上面的基础,可以解决问题1,方法如下:
~]# mkdir /x/{y1/{a,b},y2}
然后使用~]# tree /tmp
可以查看刚才创建的目录
如果没有tree命令,可以使用 yum tree install
进行安装
第2个问题,解决方法如下:
~]# mkdir {a,b}_{c,d}
结果如下:
tree命令:
tree[option] [directory]
-L level:指定显示目录的层级。
评论