shell - AWK:在每一行上执行 CURL 并解析结果

标签 shell curl awk

给定具有以下几行的输入流:

123
456
789
098
...

我想打电话
curl -s http://foo.bar/some.php?id=xxx

xxx 是每一行的编号,并且每次让 awk 脚本从写入输出流的 curl 输出中获取一些信息。我想知道不使用 awk“system()”调用是否可行:
cat lines | grep "^[0-9]*$" | awk '
    {
        system("curl -s " $0 \
        " | awk \'{ #parsing; print }\'")
    }'

最佳答案

您可以使用 bash 并避免使用 awk system称呼:

grep "^[0-9]*$" lines | while read line; do
    curl -s "http://foo.bar/some.php?id=$line" | awk 'do your parsing ...'
done

关于shell - AWK:在每一行上执行 CURL 并解析结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6739373/

相关文章:

bash - Bash中单引号和双引号之间的区别

java - 仅部分脚本由 Java 程序执行

Linux 检查字符串是否作为单独的单词存在(而不是另一个的子字符串)

linux - 从 shell 脚本中的一行中剪切特定部分

linux - 格式化文本 Awk Sed

linux - 从 shell 运行 fortran 代码不起作用

php - 在循环中使用 cURL

linux - 使用 multipart/form-data 和 JSON curl 帖子

python - 如何使用 cURL 通过 FTP 上传文件夹?

mysql - awk脚本调整格式