如何在bash脚本中使用参数作为grep的主题文本?

the_velour_fog

我有一个简单的bash脚本,该脚本接收带有主题文本的文件,并逐行处理。
如果该行以某些字符开头-请运行复合命令块。我正在尝试使用grep测试行的模式(但会接受其他建议)。

文件:matcher.sh

#!/usr/bin/env bash

for i in "$@"
do
    if grep "^M" $i   # I want grep to "assume" $i was a file
                      # and test if the pattern "^M" is present 

    then
        echo "This line started with an M: "$i 
        # command 1
        # command 2
        # etc
    fi
done

Subject_text.txt

D       bar
M       shell_test.sh
M       another_file

然后运行脚本

cat subject_text.txt | xargs --delimiter="\n" ./matcher.sh

如何让grep$i将参数列表中的每次迭代都视为$i文件?

fedorqui'停止伤害'

您可以Subject_text.txt循环读取文件,并提供matcher.sh文件名以进行检查:

while IFS= read -r _ file_name
do
   ./matcher.sh "$file_name"
done < "Subject_text.txt"

但是,现在我知道了,您正在使用matcher.sh每一行。请注意,以每行作为参数调用脚本有点过分。

如何正常循环文件并执行grep

#!/usr/bin/env bash

file=$1

while IFS= read -r line
do
    if grep "^M" <<< "$line"   # I want grep to "assume" $i was a file
                           # and test if the pattern "^M" is present 

    then
        echo "This line started with an M: $i"
        # command 1
        # command 2
        # etc
    fi
done < "$file"

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在脚本中使用字符+,-,x,/作为参数

来自分类Dev

bash脚本-如何在grep中使用$ variable

来自分类Dev

如何在bash中使用getopts解析脚本参数?

来自分类Dev

如何在bash脚本中使用参数执行SQL命令

来自分类Dev

如何在bash脚本的for循环中使用参数变量?

来自分类Dev

如何在 SED 中使用 * 作为文本?

来自分类Dev

在bash脚本中使用变量作为命令的参数

来自分类Dev

在Bash脚本中使用字符串作为参数

来自分类Dev

如何在bash脚本中将文件作为参数传递?

来自分类Dev

如何在bash脚本中使用$ SECONDS?

来自分类Dev

如何在bash脚本中使用$ SECONDS?

来自分类Dev

如何在 bash 脚本中使用 getopts?

来自分类Dev

如何在bash脚本中使用循环使用不同的参数多次运行程序?

来自分类Dev

如何在Shell脚本中使用grep查找此模式?

来自分类Dev

如何捕获“ *”作为bash函数的参数并在比较中使用

来自分类Dev

如何捕获“ *”作为bash函数的参数并在比较中使用

来自分类Dev

如何在python中使用sys.argv来检查参数的长度,以便它可以作为脚本运行?

来自分类Dev

如何在执行grep命令时将Shell脚本参数作为变量传递

来自分类Dev

如何在类中使用Comparable作为泛型参数

来自分类Dev

如何在抽象方法中使用通用EnumMap作为参数

来自分类Dev

如何在Python中使用Lambda作为日期时间参数

来自分类Dev

如何在扩展方法中使用函数作为参数?

来自分类Dev

如何在函数中使用AngularJS值作为参数?

来自分类Dev

如何在函数中使用 dir() 作为默认参数

来自分类Dev

如何在 crontab 中使用文件内容作为参数

来自分类Dev

如何在switch语句中使用cin“作为参数”

来自分类Dev

如何在 VBA 中使用 VLookup 作为范围参数?

来自分类Dev

如何在 HTTP 请求中使用 Pandas DF 作为参数

来自分类Dev

如何在bash中使用grep删除span标签?

Related 相关文章

  1. 1

    如何在脚本中使用字符+,-,x,/作为参数

  2. 2

    bash脚本-如何在grep中使用$ variable

  3. 3

    如何在bash中使用getopts解析脚本参数?

  4. 4

    如何在bash脚本中使用参数执行SQL命令

  5. 5

    如何在bash脚本的for循环中使用参数变量?

  6. 6

    如何在 SED 中使用 * 作为文本?

  7. 7

    在bash脚本中使用变量作为命令的参数

  8. 8

    在Bash脚本中使用字符串作为参数

  9. 9

    如何在bash脚本中将文件作为参数传递?

  10. 10

    如何在bash脚本中使用$ SECONDS?

  11. 11

    如何在bash脚本中使用$ SECONDS?

  12. 12

    如何在 bash 脚本中使用 getopts?

  13. 13

    如何在bash脚本中使用循环使用不同的参数多次运行程序?

  14. 14

    如何在Shell脚本中使用grep查找此模式?

  15. 15

    如何捕获“ *”作为bash函数的参数并在比较中使用

  16. 16

    如何捕获“ *”作为bash函数的参数并在比较中使用

  17. 17

    如何在python中使用sys.argv来检查参数的长度,以便它可以作为脚本运行?

  18. 18

    如何在执行grep命令时将Shell脚本参数作为变量传递

  19. 19

    如何在类中使用Comparable作为泛型参数

  20. 20

    如何在抽象方法中使用通用EnumMap作为参数

  21. 21

    如何在Python中使用Lambda作为日期时间参数

  22. 22

    如何在扩展方法中使用函数作为参数?

  23. 23

    如何在函数中使用AngularJS值作为参数?

  24. 24

    如何在函数中使用 dir() 作为默认参数

  25. 25

    如何在 crontab 中使用文件内容作为参数

  26. 26

    如何在switch语句中使用cin“作为参数”

  27. 27

    如何在 VBA 中使用 VLookup 作为范围参数?

  28. 28

    如何在 HTTP 请求中使用 Pandas DF 作为参数

  29. 29

    如何在bash中使用grep删除span标签?

热门标签

归档