tr可以与regex一起使用吗?

吉姆

我有一个像这样的文件:

AAAA  
BBBB  
CCCC   
DDDD   
etc  

单词在单独的行中。我想使用添加引号tr
所以我尝试了以下方法:

1)在每个单词的开头添加引号,即 'AAAA

  • tr '^\w$' '\'\w$' <file.txt 不起作用
  • tr '^\w$' ''\w$' <file.txt 不起作用

上面两个都使命令行卡住了。

2)我想在结尾添加引号:

tr '\n' ''\n' <file.txt 但这不起作用,并且命令行卡住了。

这些正则表达式为什么不起作用tr

你好

您不能用替换类似的多个内容tr我会用sed它代替。

例子

$ sed "s/^/'/" file.txt
'AAAA
'BBBB
'CCCC
'DDDD

表示找到每行的开头(^),并用单引号('替换

如果要将“单词”用单引号引起来,则可以使用以下形式的命令:

$ sed "s/\(.*\)/'\1'/" file.txt
'AAAA'
'BBBB'
'CCCC'
'DDDD'

这次,我们将行中的所有内容保存在一个临时变量(\1)中。然后,我们用this替换该行'\1'

可以将此命令缩写为此命令,请使用特定于GNU的开关:

$ sed -r "s/^(.*)$/'&'/" file.txt
'AAAA'
'BBBB'
'CCCC'
'DDDD'

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章