拷贝文件到目录
cp sourcefile diectory
以下示例将sfile.dat
文件复制到desdir
目录下:
alair@e64 MINGW64 ~/Documents/example
$ cp sfile.dat desdir/
alair@e64 MINGW64 ~/Documents/example
$ ls desdir/
sfile.dat
拷贝并重命名文件
cp sourcefile sourcefile_copy
以下示例将sfile.dat
文件复制并重命名为sfile_copy.dat
文件:
alair@e64 MINGW64 ~/Documents/example
$ cp sfile.dat sfile_copy.dat
alair@e64 MINGW64 ~/Documents/example
$ ls
desdir/ sfile.dat sfile_copy.dat
alair@e64 MINGW64 ~/Documents/example
$ cat sfile.dat
eof
alair@e64 MINGW64 ~/Documents/example
$ cat sfile_copy.dat
eof
通过cat
命令可以看出sfile.dat
和sfile_copy.dat
两个文件内容相同。
拷贝多个文件到目录
以下示例将sfile.dat sfile1.dat sfile2.dat
文件复制到desdir
目录下:
alair@e64 MINGW64 ~/Documents/example
$ cp sfile.dat sfile2.dat desdir/
alair@e64 MINGW64 ~/Documents/example
$ ls desdir/
sfile.dat sfile2.dat
拷贝时处理重复文件
默认情况下,如果目标目录中存在同名文件,则 cp
命令将覆盖该文件。
为避免覆盖,您可以将 -n
选项与 cp
命令一起使用,它不会覆盖现有同名文件:
如下所示,在拷贝两个文件到目录时,只拷贝了未存在文件,同名文件未进行拷贝:
alair@e64 MINGW64 ~/Documents/example
$ ls
desdir/ sfile.dat sfile1.dat sfile2.dat sfile_copy.dat
alair@e64 MINGW64 ~/Documents/example
$ ls desdir/
sfile.dat sfile2.dat
alair@e64 MINGW64 ~/Documents/example
$ cp -n -v sfile.dat sfile1.dat desdir/
'sfile1.dat' -> 'desdir/sfile1.dat'
交互式拷贝文件
可以使用 -i
选项在交互模式下使用cp
命令,每次它都会询问您是否拷贝该文件:
alair@e64 MINGW64 ~/Documents/example
$ cp -i *.dat desdir/
cp: overwrite 'desdir/sfile.dat'? y
cp: overwrite 'desdir/sfile1.dat'? y
cp: overwrite 'desdir/sfile2.dat'? y
拷贝目录
拷贝文件夹到目标路径
alair@e64 MINGW64 ~/Documents/example
$ cp -r desdir/ lbc/
alair@e64 MINGW64 ~/Documents/example
$ ls lbc/
desdir/