如何删除文件中特定字符串的第22和第23位的空格?如何使用sed删除字符串中的双空格
以下示例和预期结果。
XXXSA3FFESS3052599004 L +
预期的结果将是:
XXXS3DFFESS3052599004L +
我的代码seemd不准确的,如下。请指教。
sed 's/[A-Z0-9] //g' $file
真心感谢您的帮助。我不确定代码。但我的基本理解是,sed可以做到这一点。
如何删除文件中特定字符串的第22和第23位的空格?如何使用sed删除字符串中的双空格
以下示例和预期结果。
XXXSA3FFESS3052599004 L +
预期的结果将是:
XXXS3DFFESS3052599004L +
我的代码seemd不准确的,如下。请指教。
sed 's/[A-Z0-9] //g' $file
真心感谢您的帮助。我不确定代码。但我的基本理解是,sed可以做到这一点。
echo 'XXXSA3FFESS3052599004 L +' | sed 's/ *//'
输出:
XXXSA3FFESS3052599004L +
或像这样:
echo 'XXXSA3FFESS3052599004 L +' | sed 's/.//22;s/.//22'
如果你的空间是在固定的位置,这样可能会使更有意义使用cut
:
echo 'XXXSA3FFESS3052599004 L +' | cut -c1-21,24-
或
echo 'XXXSA3FFESS3052599004 L +' | cut --complement -c22,23
谢谢@liborm感谢您的意见。 – Neo
请看看[编辑的帮助(http://stackoverflow.com/editing-help)。 – Cyrus
您认为代码会这样做吗? – 123