我有一个 csv 文件,每行包含 3 个字段。
firstname,lastname,url
我正在尝试通过以下管道访问该网址:
grep theName file.csv | cut -d, -f 3
然后我想添加另一个管道并在curl命令中使用cut命令的结果,如下所示:
grep theName file.csv | cut -d, -f 3 | curl > result.txt
问题是,当我执行上述操作时,curl 命令会抛出错误,我假设是因为curl 没有参数?
如何使用 cut 的结果来卷曲生成的 url?提前致谢。 =)
答案1
利用命令替换,$()
:
curl "$(grep ... | cut -d, -f 3)"
这里将被ie$()
内部命令的 STDOUT 替换,因为这是由 shell 首先完成的,所以命令最终将是:$()
grep ... | cut -d, -f 3
curl
curl <the_url>
答案2
另一种无需替换的解决方案:
grep theName | cut -d, -f 3 | xargs curl > result.txt