在linux中,用-r还是-p处理递归的文件夹
在 Linux 中,递归处理文件夹用 -r 还是 -p选项
1. 使用 -r:
-r 来表示递归,例如 cp 和 rm。例如:
-r通常用于表示递归操作,例如在复制目录或删除目录时使用。- 示例:
- 复制目录及其内容:
cp -r source_directory destination_directory - 递归删除目录及其内容:
rm -r directory - 递归地移动目录及其内容:
mv -r source_directory destination_directory - 递归地修改文件或目录的权限:
chmod -r permissions target - 递归地更改文件或目录的所有者:
chown -r new_owner:new_group target - 递归地更改文件或目录的所属组:
chgrp -r new_group target - 创建或提取压缩的归档文件时,可以使用 -r 表示追加文件到已存在的归档中:
tar -rvf archive.tar new_file
- 复制目录及其内容:
2. 使用 -p:
-p 来表示递归,这主要是因为 -p 有时也被解释为 "preserve"(保留),有时表示保持文件属性(例如权限和时间戳)不变。
- 示例:
- 在
mkdir中,-p表示创建目录及其父目录(如果不存在),这是为了方便地一次性创建多层嵌套的目录结构- 创建目录及其父目录:
mkdir -p dir1/dir2/dir3
- 创建目录及其父目录:
- 复制并保持文件属性:
cp -p source_file destination - 保持被复制文件的原始属性,包括权限和时间戳:
cp -rp source_directory destination_directory - 保持被移动文件的原始属性:
mv -p source_file destination - 在安装文件时,保持文件的原始属性:
install -p source_file destination - 保持原始文件的权限和时间戳,生成压缩文件:
gzip -rp file.txt
- 在
总结
故,如果是递归地处理目录,一般使用 -r。如果要保持文件属性或者在创建目录时自动创建父目录,则可以考虑使用 -p。

浙公网安备 33010602011771号