我需要删除数千个名称相似但结尾不同的文件。它们是由攻击客户共享主机并感染多个 wordpress 网站的恶意软件创建的。我使用 SSH 代替 cPanel 文件管理器,因为它不允许我一次删除那么多文件。
这些文件都以work.php.xxxx
x 代表 0 - 9999 之间的数字命名,即work.php.2048
“ 它们都在一个文件夹中。
是否有一个 SSH 命令可以让我删除它们并且只批量删除它们?
这与建议的重复不同,因为文件在 .php 扩展名后都有唯一的结尾,该问题的建议解决方案对我来说不起作用。
答案1
我建议分两步进行,以确保获得想要的结果。首先,将文件移动到一个空文件夹。
user@linux:/.../somefolder# cd [TargetFolder]
user@linux:/.../TargetFolder# mkdir DeleteFolder
user@linux:/.../TargetFolder# find ./ -regex './work.php.[0-9][0-9][0-9][0-9]' -exec mv {} DeleteFolder/ \;
user@linux:/.../TargetFolder/DeleteFolder# cd DeleteFolder
user@linux:/.../TargetFolder/DeleteFolder# ls -l *
如果您的 DeleteFolder 仅包含要删除的文件,请执行以下操作:
user@linux:/.../TargetFolder/DeleteFolder# rm work.php.[0-9][0-9][0-9][0-9]
rm work.php.[0-9][0-9][0-9][0-9]
如果您想一步完成,您显然可以在目标文件夹中使用。我个人在使用时非常谨慎rm
- 因此采用两步方法。