如何从文本文件中提取x_rundir后的目标字符串?
提取
x_rundir后的目标字符串方法 以下几种命令可直接提取你需要的路径,同时移除末尾斜杠:
方法1:使用grep(支持Perl正则)
grep -oP 'x_rundir: \K.+' xfile.txt | sed 's/\/$//'
-o:仅输出匹配到的内容,而非整行-P:启用Perl兼容正则表达式\K:忽略前面匹配的x_rundir:部分,只保留后续内容- 管道后的
sed命令用于移除路径末尾的斜杠
方法2:使用awk
awk -F 'x_rundir: ' '{gsub(/\/$/, "", $2); print $2}' xfile.txt
-F 'x_rundir: ':以x_rundir:作为字段分隔符gsub(/\/$/, "", $2):移除第二个字段末尾的斜杠print $2:输出处理后的路径字段
方法3:使用sed
sed -n 's/.*x_rundir: \(.*\)\/$/\1/p' xfile.txt
-n:仅输出经过处理的行s/.*x_rundir: \(.*\)\/$/\1/p:通过正则捕获x_rundir:后到末尾斜杠前的内容,并输出该捕获部分
以上任一命令执行后,都会得到你期望的结果:
/i/am/a/path
内容的提问来源于stack exchange,提问作者Blurman
相关产品推荐
相关产品推荐

