我正在处理许多 csv 文件,但我找不到使用 sed 选择固定位置(字符 9-16)的子字符串并将其复制到行首的方法。
这就是我所拥有的:
ABC09638006924340017;SOME_TEXT;SOME_OTHER_TEXT
这就是我需要的:
00692434;ABC09638006924340017;SOME_TEXT;SOME_OTHER_TEXT
sed 中的以下代码提供了我需要的子字符串(00692434),但会覆盖整行:
sed 's/^.{8}(.{8}).*/\1/')
我已经在使用 sed 来“清理”线串并插入一些变量,这些变量在最后导入 postgres 中的数据的 bash 脚本中调用。这就是为什么我更愿意留在 sed 中的原因,但是任何提示都将不胜感激,因为我不是真正的专家。