使用wget使用bash脚本下载文件
我一直在尝试创建一个简单的脚本,它将从一个.txt文件中获取要下载的文件列表,然后使用一个循环,它将在另一个单独的.txt文件的帮助下读取.txt需要下载的文件,该文件位于下载文件的地址中。但我的问题是我不知道怎么做。我试了很多次,但总是失败使用wget使用bash脚本下载文件,bash,loops,wget,cat,Bash,Loops,Wget,Cat,我一直在尝试创建一个简单的脚本,它将从一个.txt文件中获取要下载的文件列表,然后使用一个循环,它将在另一个单独的.txt文件的帮助下读取.txt需要下载的文件,该文件位于下载文件的地址中。但我的问题是我不知道怎么做。我试了很多次,但总是失败 file.txt 1.jpg 2.jpg 3.jpg 4.mp3 5.mp4 ===================================== url.txt url = https://google.com.ph/ download.sh
file.txt
1.jpg
2.jpg
3.jpg
4.mp3
5.mp4
=====================================
url.txt
url = https://google.com.ph/
download.sh
#!/bin/sh
url=$(awk -F = '{print $2}' url.txt)
for i in $(cat file.txt);
do
wget $url
done
=====================================
url.txt
url = https://google.com.ph/
download.sh
#!/bin/sh
url=$(awk -F = '{print $2}' url.txt)
for i in $(cat file.txt);
do
wget $url
done
非常感谢你的帮助 而不是
wget $url
试一试
除了他在回答中指出的明显问题外,你可以避免:
- 使用
解析url.txt文件awk
- 使用$(cat file.txt)的
来迭代file.txt文件李>
#!/bin/bash
# Create an array files that contains list of filenames
files=($(< file.txt))
# Read through the url.txt file and execute wget command for every filename
while IFS='=| ' read -r param uri; do
for file in "${files[@]}"; do
wget "${uri}${file}"
done
done < url.txt
#/bin/bash
#创建包含文件名列表的阵列文件
文件=($(
切勿对$中的var使用(命令)
。请参阅以下答案:。否则,在这种情况下,您可以使用cut
而不是awk
。我有一个问题,如果地址栏位于第二列和第二行,我应该如何处理URL文件?我指的是awk指挥部。。