linux下目录的基本命令
使用版本为:Centos 6.6
目录的基本命令(mkdir、tree、touch、rm、cp、mv)
创建目录 mkdir
mkdir aa bb cc 同时在本目录创建多个文件夹
[root@localhost tmp]# mkdir aa bb cc [root@localhost tmp]# ls aa bb cc yum.log
mkdir -p aa/bb/cc 加p 递归创建目录
[root@localhost tmp]# tree -C aa/ #查看aa目录的结构
aa/
└── bb
└── cc
mkdir -pv dd/ee/ff 加v 可视化显示创建目录过程
[root@localhost tmp]# mkdir -pv dd/ee/ff mkdir: created directory `dd‘ mkdir: created directory `dd/ee‘ mkdir: created directory `dd/ee/ff‘
创建文件 touch
[root@localhost ~]# touch 123 [root@localhost ~]# ls -l 123 -rw-r--r--. 1 root root 0 Mar 18 10:06 123
rmdir 用于删除空目录,目录中有文件不能删除,不常用;
[root@localhost ~]# mkdir -v aaa bbb mkdir: created directory `aaa‘ mkdir: created directory `bbb‘ [root@localhost ~]# rmdir aaa bbb
删除文件 rm
[root@localhost tmp]# which rm
alias rm=‘rm -i‘ # rm=rm -i 加i选项作用会提示是否删除
/bin/rm
rm 11 删除文件会提示是否删除 y删除 n不删除
[root@localhost tmp]# touch 11
[root@localhost tmp]# rm 11
rm: remove regular empty file `11‘? n
rm -f 11 加 f 强制删除文件,不会提示
/bin/rm 11 直接加绝对路径,直接删除文件不会提示
[root@localhost tmp]# rm -f 11 [root@localhost tmp]# /bin/rm 11
删除文件夹后面要加参数 rm -r
[root@localhost tmp]# rm aa #直接删除文件夹会提示是一个目录
rm: cannot remove `aa‘: Is a directory
rm -r bb 删除文件夹会提示是否删除,y删除 n不删除
[root@localhost tmp]# rm -r bb
rm: remove directory `bb‘? y
rm -rf aa 强制删除文件夹,不会提示
/bin/rm -r 11 直接加绝对路径,直接删除文件夹不会提示
使用unalias 命令之后,也不会提示,直接删除。只在当前shell生效,退出当前shell后失效;
[root@localhost tmp]# unalias rm [root@localhost tmp]# ls aaa aaa_bak yum.log [root@localhost tmp]# rm -r aaa [root@localhost ~]# exit [root@localhost ~]# rm -r 111 rm: remove directory `111‘? n
复制文件 cp
cp aaa aaa_bak 复制aaa文件,备份一份到aaa_bak
/bin/cp aaa aaa_bak 使用绝对命令,强制拷贝覆盖,不会提示
[root@localhost tmp]# cp new.log /root/new.log #复制同名文件会提示是否删除,y删除 n不删除
cp: overwrite `/root/new.log‘? n
[root@localhost tmp]# /bin/cp new.log /root/new.log
cp -r aa aa_bak 复制文件夹aa,备份一份aa_bak 需要加-r参数
[root@localhost tmp]# mkdir aaa [root@localhost tmp]# cp -r aaa aaa_bak [root@localhost tmp]# ls aaa aaa_bak yum.log
[root@localhost tmp]# cp aaa bbb #直接拷贝文件夹会提示略过目录
cp: omitting directory `aaa‘
复制目录时,目标目录有同名目录不会提示,如果目录有文件则复制文件到目标目录下面。
[root@localhost ~]# ls
12 anaconda-ks.cfg install.log install.log.syslog test test1
[root@localhost ~]# cp -r 12 /tmp/ 拷贝同一名称的目录到另一个目录下,不会提示
[root@localhost ~]# ls /tmp/
111 12 huang yum.log
[root@localhost ~]# touch 12/1.txt 在目录下新建一个文件
[root@localhost ~]# cp -r 12 /tmp/ 再次拷贝时,会拷贝目录下的文件到另一个目录下面
[root@localhost ~]# ls /tmp/12/
1.txt
cp -v 可视化显示拷贝过程,拷贝bb为dd
[root@localhost tmp]# cp -v bb dd `bb‘ -> `dd‘
移动文件或者改名 mv
同一个目录下目标文件或文件夹不存在,改名
不同目录下移动文件,目标文件存在会提示是否覆盖。
[root@localhost tmp]# mv /root/bb ./
mv: overwrite `./bb‘? n
[root@localhost tmp]# /bin/mv /root/bb ./ 使用绝对路径强制覆盖不会提示;
移动的同时如果目标文件存在,可以改名
[root@localhost tmp]# cat /root/aaa
def
[root@localhost tmp]# mv /root/aaa ./aa #移动root目录下的aaa到当前目录并改名aa
[root@localhost tmp]# cat aa
def
[root@localhost tmp]# mv -v aa bb #mv -v 可视化显示移动过程,aa改名为bb
`aa‘ -> `bb‘
本文出自 “模范生的学习博客” 博客,请务必保留此出处http://8802265.blog.51cto.com/8792265/1621744
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。