繁体   English   中英

sed命令中的错误

[英]Error in sed command

输入:

43572154    ROR2
43439911    LOC785925
42737842    LOC785930

预期产量

'43572154':'ROR2'
'43439911':'LOC785925'
'42737842':'LOC785930'

使用的命令

sed s/\n/\'\,\n\'/ input #substitute newline with ',\n'
sed s/ /\'\:\'/ input  #substitute <space> with ':'

但是似乎对输入没有影响。 谁能指出我的错误? n

为什么您要替换换行符? 尝试以下方法:

sed "s/\([^ ]\+\) \+\(.*\)/'\1':'\2'/" input

编辑 -或使用扩展的正则表达式( -r ):

sed -r "s/([^ ]+) +(.*)/'\1':'\2'/" input

这是基于注释的awk解决方案:

awk "{print \"'\" \$1 \"':'\" \$2 \"'\"}" input

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM