我想从 shell 脚本文件中以特定模式开头的行中提取字符串。
例如:我想要以 开头的行中的字符串hello
:
hi to_RAm
hello to_Hari
hello to_kumar
bye to_lilly
输出应该是
to_Hari
to_kumar
谁能帮我?
我想从 shell 脚本文件中以特定模式开头的行中提取字符串。
例如:我想要以 开头的行中的字符串hello
:
hi to_RAm
hello to_Hari
hello to_kumar
bye to_lilly
输出应该是
to_Hari
to_kumar
谁能帮我?
使用 grep:
grep ^hello file | awk '{print $2}'
^
是匹配以“hello”开头的行。这是假设您要打印第二个单词。
如果要打印除第一个单词之外的所有单词,则:
grep ^hello file | awk '{$1=""; print $0}'
sed
是最合适的工具:
sed -n 's/^hello //p'
您可以使用 GNU grep 的 perl 兼容正则表达式并使用后向:
grep -oP '(?<=hello ).*'