我正在寻找一个终端命令来递归地遍历文件夹结构,并删除具有 0444 权限的
.htaccess
文件和/或如果可能的话匹配文件中的第一行以采取安全措施。
服务器上的一些帐户遭到入侵,这清除了恶意软件/rootkit,但注意到它在每个文件夹中添加了
.htaccess
文件,其中包含以下内容:
<FilesMatch ".(py|exe|phtml|php|PhP|php5|suspected)$">
Order Allow,Deny
Deny from all
</FilesMatch>
您可以使用
find
递归地遍历多个目录,搜索文件并在结果上执行类似 rm
的命令。
find . -type f -perm 0444 -name ".htaccess" -exec echo rm {} \;
.
当前目录 / 可以是其他路径,例如/etc
-type f
搜索文件-perm 0444
许可0444-name ".htaccess"
只会查找名为 .htaccess
-exec CMD {} \;
在结果上运行类似 rm
的命令 {}
find
的输出并删除 echo
以删除文件此命令删除所有子文件夹中的所有
.htaccess
文件:
find . -name ".htaccess" -exec rm -rf {} \;
对于 Windows 用户,请在 powershell 上使用以下命令
Get-ChildItem -Path "C:\path o\your\directory" -Recurse -Filter ".htaccess" |删除项目-强制