Sed 将 10 个字符的字符串替换为 'XXXX '

Sed 将 10 个字符的字符串替换为 'XXXX '

我的文件看起来像

ACCINTCCADVANCESC
ACCINTCCADVANCESE
ACCINTCCADVANCESW

我想替换INTCCADVANXXXX␣␣␣␣␣␣s 是空格。具体来说,我想用 xxxx 和空格替换超过 150 个字符的列,直到 150 个字符结束。

答案1

使用sedprintf

$ sed "s/INTCCADVAN/$(printf '%-10s' XXXX)/" file
ACCXXXX      CESC
ACCXXXX      CESE
ACCXXXX      CESW

输出的printf长度为 10 个字符,并XXXX使用格式选项左对齐-

相关内容