背景
文件数量多使用 rm 删除时,会有如下错误信息:
rm -rf *-bash: /bin/rm: Argument list too long
那我们用什么方式删除呢?可以使用如下两种方式删除,其中 rsync 的性能最好。
find 删除
# 这种方式性能不行find ./ -type f -exec rm {} \; # 性能会好一些find ./ -type f -delete
rsync 删除
(性能最好)
mkdir blanktestrsync -a --delete blanktest/ test/
使用 rsync 工具来将源目录 blanktest/ 的内容同步到目标目录 test/ ,并且使用 -a 选项表示进行归档式的同步,保持文件的属性、权限等。--delete 选项表示删除目标目录中不存在于源目录中的文件。
这个命令会确保目标目录 test/ 的内容与源目录 blanktest/ 一致,包括文件、子目录、以及文件属性和权限。如果源目录中有新文件或已更改的文件,它们将被复制到目标目录,并且如果目标目录中有源目录中不存在的文件,它们将被删除。
文件数量多使用 rm 删除时,会有如下错误信息:
rm -rf *-bash: /bin/rm: Argument list too long
那我们用什么方式删除呢?可以使用如下两种方式删除,其中 rsync 的性能最好。
find 删除
# 这种方式性能不行find ./ -type f -exec rm {} \; # 性能会好一些find ./ -type f -delete
rsync 删除
(性能最好)
mkdir blanktestrsync -a --delete blanktest/ test/
使用 rsync 工具来将源目录 blanktest/ 的内容同步到目标目录 test/ ,并且使用 -a 选项表示进行归档式的同步,保持文件的属性、权限等。--delete 选项表示删除目标目录中不存在于源目录中的文件。
这个命令会确保目标目录 test/ 的内容与源目录 blanktest/ 一致,包括文件、子目录、以及文件属性和权限。如果源目录中有新文件或已更改的文件,它们将被复制到目标目录,并且如果目标目录中有源目录中不存在的文件,它们将被删除。