cp命令是Linux中最常用的文件操作命令之一,用于复制文件和目录。下面是一些实用的cp命令实例,帮助你掌握这个命令的各种用法。
cp [选项] 源文件 目标文件
cp [选项] 源文件... 目录
-i
:交互式复制,覆盖前提示-r
或-R
:递归复制目录-v
:显示详细操作信息-p
:保留文件属性(权限、时间戳等)-a
:归档模式,相当于-dpR
-u
:只复制更新的文件(目标不存在或源文件更新)-l
:创建硬链接而非复制-s
:创建符号链接而非复制# 将file1复制为file2
cp file1 file2
# 将file1复制到/tmp目录下
cp file1 /tmp/
# 复制file1, file2, file3到/tmp目录
cp file1 file2 file3 /tmp/
# 复制整个目录dir1到dir2(包括子目录和文件)
cp -r dir1 dir2
cp -i file1 file2
# 保留权限、时间戳等属性
cp -p file1 file2
cp -v file1 file2
cp -a dir1 dir2
# 只有当file1比file2新时才复制
cp -u file1 file2
# 创建硬链接
cp -l file1 file2
# 创建符号链接
cp -s file1 file2
# 使用rsync排除文件(更复杂的情况)
rsync -av --exclude='*.txt' dir1/ dir2/
cp -d symlink1 symlink2
cp -f file1 file2
# 先创建目标目录结构
mkdir -p /path/to/destination
cp file1 /path/to/destination/
-i
选项可避免意外覆盖-r
或-a
选项-a
选项可以保留所有文件属性,适合备份rsync
命令效率更高通过以上练习,你应该能够掌握cp命令的常见用法。在实际工作中,根据需求选择合适的选项组合使用。