我有一个特定列宽(250个字符)的文件,我需要在列138和139之间插入一个空格。但在这种情况下,我没有要匹配的模式或要使用的分隔符。
有没有办法使用sed和/或awk在这些列之间插入空格而不匹配任何模式或使用任何分隔符?
答案 0 :(得分:1)
您可以像这样使用sed:
sed -i.bak -r '/^.{250}$/s/^(.{138})/\1 /' file
答案 1 :(得分:1)
gawk有FIELDWIDTHS
,您可以使用:
awk -v FIELDWIDTHS="138 112" '{print $1,$2}' file
答案 2 :(得分:1)
sed "s/.\{138\}/& /"
应该是最简单的