使用终端和 Shell/Bash 命令是否可以从 Web 目录中检索特定文件?IE
目录:www.site.com/samples/
将所有以“.h”结尾的文件复制到一个文件夹中
该文件夹包含文本文件和其他无用的相关文件。
谢谢 :)
cp -aiv /www.site.com/samples/*.h /somefolder/
您可以为此使用 wget,但如果没有指向该文件的链接。即它们存在,但它们没有被任何 html 页面引用,那么 bruteforce 是唯一的选择。
有多种方法可以递归实现: 1. 使用 find
1.1 使用find -p创建目录创建递归文件夹不出错
cd path;
mkdir backup
find www.site.com/samples/ -type d -exec mkdir -p {} backup/{} \;
1.2 查找特定文件并复制到备份文件夹 -p 以保持权限
find www.site.com/samples/ -name \*.h -exec cp -p {} backup/{} \;
实际上很好地使用 tar 进行反向工作,即排除与文本文件相关的问题部分更符合此答案的特定文件:您可以添加任意数量的排除项
tar --exclude=*.txt --exclude=*.filetype2 --exclude=*.filetype3 -cvzf site-backup.tar.gz www.site.com
mv www.site.com www.site.com.1
tar -xvzf site-backup.tar.gz