有没有办法阻止wget创建空目录?我需要的大多数文件都是在一个深度级别,即/1/2/
的文件夹2中找到的,但是我需要使用无限递归,因为有时我需要的文件是1/2/3/
或更深。或者至少,我需要暂时无限递归,直到我找出感兴趣的文件所在的最大深度。
现在我正在使用
wget -nH --cut-dirs=3 -rl 0 -A "*assembly*.txt" ftp://ftp.ncbi.nlm.nih.gov/genomes/genbank/bacteria
哪个获取了我需要的所有文件,但是我留下了一堆空目录。我更喜欢目录结构/bacteria/organism/*assembly*.txt
,但如果无法避免创建多个子目录,我想至少停止wget创建空目录。当然,我可以在运行wget后删除空目录,但是如果可能的话,我想阻止wget在第一时间创建它们
答案 0 :(得分:1)
简短回答:你无法阻止创建目录。
您可以对目录进行后处理:
find bacteria/ -type d -empty -exec rmdir {} \;
查看一堆这些目录(包括 e.coli 非常繁忙的目录),正如您所说的那样,匹配*assembly*.txt
的唯一文件存储在第一个目录中bacteria
下面的目录。除非这条规则有一些变化,否则你可以这样做:
wget -nH --cut-dirs=2 -rl 2 -A "*assembly*.txt" ftp://ftp.ncbi.nlm.nih.gov/genomes/genbank/bacteria
顺便说一句,如果您希望目标结构从bacteria/
开始,则需要将--cut-dirs
更改为2而不是3。