命令:mkdir
命令所在路径:/bin/mkdir
执行权限:所有用户
语法:mkdir 目录名 ——创建新目录
mkdir -p 目录名 ——递归创建新目录
例子1
如上图,用mkdir命令在tmp目录下创建一个新目录vegetable。然后尝试在/tmp/fruit目录下创建一个新目录apple,但失败了,这是因为本来没有fruit这个目录。可以加上-p参数来递归创建新目录,这样在创建apple目录的同时也创建了fruit目录。我们也可以同时创建多个目录或者同时递归多层。如下图。
命令:cd
英文原意:change directory
命令所在路径:shell内置命令
执行权限:所有用户
语法:cd 目录
功能描述:切换目录
如:cd .. 返回上级目录
命令:pwd
英文原意:print working directory
功能:显示当前所在目录
例子2
如上图,先用pwd查看当前路径,可见现在在root目录下。然后用cd /tmp/fruir 切换到/tmp/fruit目录下。然后用cd .. 返回上级目录/tmp。
rmdir
英文原意:remove empty directories
语法:rmdir [目录名]
功能:删除空目录
注意:命令rmdir只能删除空目录,用处不是很大。
命令:cp
英文原意:copy
语法:cp [原文件] [目标目录] 说明:只能复制文件,不能复制目录
cp -r [原文件或目录] [目标目录] 说明:-r参数可以复制目录
cp -rp [原文件或目录] [目标目录] 说明:-p参数可保留文件属性,如最后一次修改时间
另外,以上命令均可以同时复制多个文件或目录,也可以在复制的同时改名。
例子3
如上图,利用cp命令将root目录下的文件anaconda-ks.cfg复制到目录/tmp/fruit下。
如上图,如果复制的是目录的话,则要加上-r参数。
如上图,可以同时复制多个文件。
前面利用cp命令将root目录下的文件anaconda-ks.cfg复制到目录/tmp/fruit下,用-l列出复制前后该文件的详细信息,可以看到文件的最后一次修改时间变了,这是因为复制附件相当于重建了这个文件。可以用-p来保留文件属性。
如上图所示,cp命令也可以在复制的同时改名。
命令:mv
英文原意:move
语法:mv [原文件或目录] [目标目录]
功能:剪切文件、改名
(同一目录下文件直接改名)
例子4
如上图,通过mv命令将root目录下的myfruit目录剪切到/tmp/fruit下,可以发现/tmp/fruit下多了myfruit目录,而/root下不在有myfruit目录。与cp命令不同,mv可以直接剪切目录而不需要加上-r.
如上图所示,将root目录下的apple目录剪切到/tmp/fruit的同时改名为bigapple,剪切之后在/tmp/fruit 下可以发现bigapple目录,而root目录下不再有apple目录。
如上图,也可以用mv命令直接在同一个目录下给目录或文件改名,上图的例子是将peach目录改名为bigpeach目录,实际上这也是剪切的同时改名。
命令:rm
英文原意:remove
语法:rm [文件名] 删除文件
rm -r 删除目录时需要加上-r
rm -f 强制执行
rm -rf [目录名或文件名]
功能:删除文件或目录
例子5
如上图,将root目录下的anaconda-ks.cfg文件拷贝到/tmp/fruit目录下,然后用rm命令直接删除。注意:不要随意删除系统自带的文件。
如上图所示,删除目录时要加上-r.
如上图所示,先将tmp目录下的fruit目录复制到root目录下,然后用rm -r 去删除root目录下的fruit目录,结果系统多次询问是否删除fruit目录下的文件,如果/root/fruit下有很多个文件,则会一直询问。因此这里我按cral+c退出执行该命令,然后用rm -rf 强制删除目录,可以看到系统直接删除了/root/fruit目录而没有出现任何询问。