我有一个以下格式的文本文件:
Value1=some string-1
Value2=some string-2
Value3=some string-3
Value4=some string-4
Value5=some string-5
Value6=some string-6
如果我需要找到Value6
的值并打印出some string-6
,我将如何在SHELL脚本中执行该操作?
if grep -qs "Value6" Test.txt
then
print some string-6
fi
我如何在此处打印some string-6
?
答案 0 :(得分:0)
简单方法是使用grep
和sed
。例如:
grep Value6 file | sed -e 's/^.*[=]//'
示例输入
$ cat tmpf
Value1=some string-1
Value2=some string-2
Value3=some string-3
Value4=some string-4
Value5=some string-5
Value6=some string-6
使用/输出强>
$ grep Value6 tmpf | sed -e 's/^Value6[=]//'
some string-6
注意,您也可以在一次通话中执行此操作:
$ sed -n 's/^Value6[=]//p' < tmpf
some string-6
无论使用哪种方法,将结果字符串保存到变量,都可以使用命令替换
myvar=$(sed -n 's/^Value6[=]//p' < tmpf)
或较旧(现在使用较少)的反引号变体
myvar=`sed -n 's/^Value6[=]//p' < tmpf`