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