我有一个 curl 脚本,用于从 url 获取读取文件。我现在需要在下载后提取 tar 文件。
for file in $(/usr/bin/curl 'https://linktofile.com/yourfile.txt' );
do
echo $file;
/usr/bin/curl -L -J -O "$file";
done;
输出到屏幕是
curl: Saved to filename 'your_file_1.tar'
如何提取已保存的文件?我尝试添加tar -xvf $file
但没有任何反应。如何获取刚刚保存的文件的名称?
使用-J
使文件的位置取决于Content-Disposition
标题,因此您需要检索它指定的文件名。您可以通过指定命令-w
的输出来实现curl
,您将希望输出文件名:
for url in $(/usr/bin/curl 'https://linktofile.com/yourfile.txt' ); do
filename=$(/usr/bin/curl -sLJOw '%{filename_effective}' "$url")
tar -xvf "$filename"
done
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句