linux 从https获取文件列表并保存为txt文件

lymnna71  于 2023-03-22  发布在  Linux
关注(0)|答案(2)|浏览(185)

我想从aria2c的https获取目录列表。
因为,据我所知,不太可能wget,在aria2c中没有循环选项,我将使用here提到的txt文件
所以我需要目录列表。
This是目标https。
我试过lftp,但有一些认证错误。
这将是伟大的,让我知道如何得到的txt文件。
谢谢大家!

lnvxswe2

lnvxswe21#

试试这个拼凑起来的脚本。

function list_folder() {
    echo "Starting new run! $1"
    content=$(curl -s -L 'https://physionet.org/files/mimic3wdb-matched/1.0/'"$1")
    folders=$(echo "$content" | grep -o -P '(?<=">).*(?=/</a>)' | grep -v '\.\.')
    # files are all the entries that don't end with a `/`
    files=$(echo "$content" | grep -o -P '(?<=">).*[^/](?=<\/a>)')
    echo "FOLDERS: $folders"
    echo "FILES: $files"
    for folder in $folders; do
        list_folder "$1/$folder"
    done
}

list_folder

它将递归搜索目录列表中的所有文件并打印它们。如果您想将文件保存到文件中,只需将$files重定向到该文件。
您还可以尝试通过将&附加到list_folder调用来使其成为多线程的。

1tu0hz3e

1tu0hz3e2#

复制链接并粘贴到下面命令中的位置

wget <url> | grep -oP '<a href=".+?">\K.+?(?=<)'

此命令将列表保存在一个文件中,执行命令后,您将看到类似于下面的输出

<Date> 1 <time> (<size> KB/s) - ‘<file>’ saved

查看

cat <file>

相关问题