使用版本为:Centos 6.6
目录的基本命令(mkdir、tree、touch、rm、cp、mv)
创建目录 mkdir
mkdir aa bb cc 同时在本目录创建多个文件夹
[[email protected] tmp]# mkdir aa bb cc [[email protected] tmp]# ls aa bb cc yum.log
mkdir -p aa/bb/cc 加p 递归创建目录
[[email protected] tmp]# tree -C aa/ #查看aa目录的结构
aa/
└── bb
└── cc
mkdir -pv dd/ee/ff 加v 可视化显示创建目录过程
[[email protected] tmp]# mkdir -pv dd/ee/ff mkdir: created directory `dd‘ mkdir: created directory `dd/ee‘ mkdir: created directory `dd/ee/ff‘
创建文件 touch
[[email protected] ~]# touch 123 [[email protected] ~]# ls -l 123 -rw-r--r--. 1 root root 0 Mar 18 10:06 123
rmdir 用于删除空目录,目录中有文件不能删除,不常用;
[[email protected] ~]# mkdir -v aaa bbb mkdir: created directory `aaa‘ mkdir: created directory `bbb‘ [[email protected] ~]# rmdir aaa bbb
删除文件 rm
[[email protected] tmp]# which rm
alias rm=‘rm -i‘ # rm=rm -i 加i选项作用会提示是否删除
/bin/rm
rm 11 删除文件会提示是否删除 y删除 n不删除
[[email protected] tmp]# touch 11
[[email protected] tmp]# rm 11
rm: remove regular empty file `11‘? n
rm -f 11 加 f 强制删除文件,不会提示
/bin/rm 11 直接加绝对路径,直接删除文件不会提示
[[email protected] tmp]# rm -f 11 [[email protected] tmp]# /bin/rm 11
删除文件夹后面要加参数 rm -r
[[email protected] tmp]# rm aa #直接删除文件夹会提示是一个目录
rm: cannot remove `aa‘: Is a directory
rm -r bb 删除文件夹会提示是否删除,y删除 n不删除
[[email protected] tmp]# rm -r bb
rm: remove directory `bb‘? y
rm -rf aa 强制删除文件夹,不会提示
/bin/rm -r 11 直接加绝对路径,直接删除文件夹不会提示
使用unalias 命令之后,也不会提示,直接删除。只在当前shell生效,退出当前shell后失效;
[[email protected] tmp]# unalias rm [[email protected] tmp]# ls aaa aaa_bak yum.log [[email protected] tmp]# rm -r aaa [[email protected] ~]# exit [[email protected] ~]# rm -r 111 rm: remove directory `111‘? n
复制文件 cp
cp aaa aaa_bak 复制aaa文件,备份一份到aaa_bak
/bin/cp aaa aaa_bak 使用绝对命令,强制拷贝覆盖,不会提示
[[email protected] tmp]# cp new.log /root/new.log #复制同名文件会提示是否删除,y删除 n不删除
cp: overwrite `/root/new.log‘? n
[[email protected] tmp]# /bin/cp new.log /root/new.log
cp -r aa aa_bak 复制文件夹aa,备份一份aa_bak 需要加-r参数
[[email protected] tmp]# mkdir aaa [[email protected] tmp]# cp -r aaa aaa_bak [[email protected] tmp]# ls aaa aaa_bak yum.log
[[email protected] tmp]# cp aaa bbb #直接拷贝文件夹会提示略过目录
cp: omitting directory `aaa‘
复制目录时,目标目录有同名目录不会提示,如果目录有文件则复制文件到目标目录下面。
[[email protected] ~]# ls
12 anaconda-ks.cfg install.log install.log.syslog test test1
[[email protected] ~]# cp -r 12 /tmp/ 拷贝同一名称的目录到另一个目录下,不会提示
[[email protected] ~]# ls /tmp/
111 12 huang yum.log
[[email protected] ~]# touch 12/1.txt 在目录下新建一个文件
[[email protected] ~]# cp -r 12 /tmp/ 再次拷贝时,会拷贝目录下的文件到另一个目录下面
[[email protected] ~]# ls /tmp/12/
1.txt
cp -v 可视化显示拷贝过程,拷贝bb为dd
[[email protected] tmp]# cp -v bb dd `bb‘ -> `dd‘
移动文件或者改名 mv
同一个目录下目标文件或文件夹不存在,改名
不同目录下移动文件,目标文件存在会提示是否覆盖。
[[email protected] tmp]# mv /root/bb ./
mv: overwrite `./bb‘? n
[[email protected] tmp]# /bin/mv /root/bb ./ 使用绝对路径强制覆盖不会提示;
移动的同时如果目标文件存在,可以改名
[[email protected] tmp]# cat /root/aaa
def
[[email protected] tmp]# mv /root/aaa ./aa #移动root目录下的aaa到当前目录并改名aa
[[email protected] tmp]# cat aa
def
[[email protected] tmp]# mv -v aa bb #mv -v 可视化显示移动过程,aa改名为bb
`aa‘ -> `bb‘