如何使用 wget 下载目录的全部内容,但使用通配符排除具有特定后缀的文件?

如何使用 wget 下载目录的全部内容,但使用通配符排除具有特定后缀的文件?

我有一个本地托管的服务器,并尝试通过 wget 将所有文件下载到我的基于 Ubuntu 的远程计算机。我需要从 HTTP 服务器下载单个目录中的所有文件,确保获得除后缀为“_test”的文件之外的所有文件 - 因此,换句话说,我需要确保任何具有该后缀的文件都不会被获取抓住了。我尝试过以下命令:

wget -r http://my-server-ip/data -R '*_test'

上面的命令导致 wget 从服务器获取所有内容 - 包括带有“ _test”后缀的文件。我意识到存在多个如何正确使用此命令的示例,但似乎没有一个适合我的用例。我还应该注意,我正在使用 bash shell。

答案1

谢谢大家的想法。最后,以下命令对我有用 - 当我有多个我不想抓取的文件时,就是这种情况,所有文件都有一个后缀“_test.sh”:

wget -r http://my-server-ip/ -R "*_test.sh"

我还忘记了这个特定的文件夹包含具有相同后缀的文件 - 但有几个在“Test”开头还有一个大写的“T” - 因此,此命令确保覆盖这两种情况:

wget -r http://my-server-ip/ -R "*_test.sh" -R "*_Test.sh"

相关内容