我有一个具有以下格式的文件:
Reading frame 3000 time 30000.000 ^MReading frame 3000 time 30000.000 mu 8.788e+00 <mu> 2.945e-03
我想将仅在 mu 之后的值粘贴到新文件中,该文件将具有以下所需输出:
8.788e+00
我尝试了以下命令但没有成功
grep "mu" filename1 | sed 's/^.* //' > filename2
答案1
使用sed
:
sed -n -E 's/.*mu +([0-9.e+-]+) .*/\1/p' file
正则表达式期望字符串mu
和数字在一起。
答案2
awk '{for(i=1;i<=NF;i++)if($i == "mu")print $(i+1)}' file