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