Linux教程:[11]复制和移动文本文件
一、文件的复制
# cp [PATH]... [TARGET]
如果 cp 命令不指定目标文件的名字,则抱持原来的名字,如:
# cp /etc/inittab ./
# ls
如果cp 的目标目录下有重名文件,则会提示用户是否覆盖,如:
# cp /etc/inittab ./inittab
如果 cp 的目标命名为x,而此目标位置恰好有一个目录名为x,则直接将此文件复制到该目录x下:
# cp /etc/inittab ./x
# ls x
小结:如果目标
1.不存在,则复制并重命名指定的名称;
2.存在:
a)如果是文件,则覆盖;
b)如果是目录,则将文件复制到指定的目录中
如果要复制的文件是多个,则cp后面可以有多个路径,如:
# cp /etc/inittab /etc/rc.d/rc.sysinit ./test1.txt
此语句会报错,因为目标不是一个目录。
注意:如果要复制多个文件,则目标必须是目录。
cp命令默认不支持目录复制,如果要复制目录,需要使用扩展选项 -r 来实行递归复制,如:
# cp -r /tmp/x1 ./x2
# ls x2
此外,-a选项也可以用来进行递归复制,但其功能更加强大,等同于 -dR 选项,即全部复制。
事实上,-R, -r 和 -recursive 都表示递归复制
二、移动文件
# mv [PATH]... [TARGET]
移动文件的方式和复制文件基本类似,所不同的是,移动文件可以直接移动目录,而无需添加递归选项,如:
# cp /tmp/x2 ./x
会报错,而以下命令则不会:
# mv /tmp/x3 ./x
同样的,移动文件也可以一次移动多个,如果遇到重名的情况,会提示是否覆盖:
# mv /tmp/x2 ./x
# mkdir /tmp/x/{a,c}_{b,d}
#mv /tmp/c_{b,d} ./x
(共篇)上一篇:创建和删除文本文...|下一篇: