如何使用bash脚本从带有URL的CSV文件下载?
我有一个这种格式的csv文件如何使用bash脚本从带有URL的CSV文件下载?,bash,csv,Bash,Csv,我有一个这种格式的csv文件 http://nex.s3.amazonaws.com/tt/01.nc,d9aa8c1f1a6ea5f7fd52b0b9a02fc336 http://nex.s3.amazonaws.com/tt/02.nc,fe12be292a322c34bbec1a82bd55e77d 我想解析CSV文件,读取第一列,并以这种方式设置每个URL。第二列没有用: wget --user=NEXUSER --password="" http://nex.s3.amazonaw
http://nex.s3.amazonaws.com/tt/01.nc,d9aa8c1f1a6ea5f7fd52b0b9a02fc336
http://nex.s3.amazonaws.com/tt/02.nc,fe12be292a322c34bbec1a82bd55e77d
我想解析CSV文件,读取第一列,并以这种方式设置每个URL。第二列没有用:
wget --user=NEXUSER --password="" http://nex.s3.amazonaws.com/tt/01.nc
到目前为止,我有:
#!/bin/bash
INPUT='testfile.csv'
IFS=','
while read url sum
do
echo $url
echo $sum
wget --user=NEXGDDP --password="" $url
done
我如何才能做到这一点?您只需使用:
cut -d, -f1 testfile.csv | xargs wget --user=NEXUSER --password=""
或者,您可以使用以下选项:
for url in `cut -d',' -f1 file.csv`; do
wget --user=NEXGDDP --password="" "$url"
done
您唯一缺少的是将输入从文件重定向到循环:
#!/bin/bash
INPUT='testfile.csv'
while IFS=, read url sum
do
echo "$url"
echo "$sum"
wget --user=NEXGDDP --password="" "$url"
done < "$INPUT"
#/bin/bash
INPUT='testfile.csv'
当IFS=时,读取url和
做
回显“$url”
回音“$sum”
wget--user=NEXGDDP--password=“”$url”
完成<“$INPUT”
一般来说,最好仅在必要时更改
IFS
;在这里,只有read
命令需要更改值。此外,除非有充分的理由不引用参数展开式。谢谢……有道理。这是我的第一个bash脚本。