【问题标题】:grep and exec issuesgrep 和 exec 问题
【发布时间】:2014-02-07 15:23:54
【问题描述】:

我在一个名为 list.csv 的文件中有一个 url 列表。

我想grep文件中的模式'.php',然后foreach,执行一个curl命令。

我正在尝试这个:

grep '.php' list.csv -exec curl -I {} \;

但是,我得到了错误:

grep: .php: No such file or directory
grep: curl: No such file or directory
grep: {}: No such file or directory
grep: ;: No such file or directory

我显然没有正确使用 grep 和 exec,但看不到问题。

【问题讨论】:

    标签: bash grep exec


    【解决方案1】:

    您的语法没有多大意义。您正在尝试使用 find ... -exec curl -I {} \; 语法,而 grep 则无法使用。

    相反,您可以使用以下内容:

    for i in $(grep '.php' list.csv)
    do
       curl -I "$i"
    done
    

    【讨论】:

    • 好的,非常感谢,我只是认为可以使用 grep 和 exec 实现“更快”的单行。
    【解决方案2】:

    grep '.php' 列表.csv | xargs curl -I $1

    【讨论】:

    • 谢谢,这就是我要去的那个!
    • +1 但 xargs 调用错误:grep '\.php' list.csv | xargs -l1 curl -I
    【解决方案3】:

    一行:)

    for i in $(grep '.php' list.csv); do curl -I "$i"; done
    

    【讨论】:

      猜你喜欢
      • 2011-10-29
      • 1970-01-01
      • 2017-05-02
      • 1970-01-01
      • 2015-02-04
      • 2021-03-30
      • 1970-01-01
      • 2012-11-24
      • 1970-01-01
      相关资源
      最近更新 更多