在每行的最后一个字符前添加一个空格或制表符

luo*_*gje 3 sed awk text-processing

我有一个文件,其中包含以字母结尾的值列表。有没有一种简单的方法可以在每行的最后一个字符之前添加一个空格或制表符来将数字与字母分开?

44A  
354T  
1453C  
77D
Run Code Online (Sandbox Code Playgroud)

这样输出看起来像这样:

44 A  
354 T  
1453 C  
77 D
Run Code Online (Sandbox Code Playgroud)

ter*_*don 6

如果在最后一个字符之后和行尾之前从未有任何空格,请使用:

sed 's/.$/ &/' file
Run Code Online (Sandbox Code Playgroud)

或者

perl -pe 's/.$/ $&/' file
Run Code Online (Sandbox Code Playgroud)

如果在行尾之前可以有空格,请改用:

perl -pe 's/(.*)(\S)/$1 $2/' file
Run Code Online (Sandbox Code Playgroud)