我有三个 .csv 文件,它们是在 MS SQLServer 中保存查询时输出的。我需要将这些文件加载到 Informix 数据库中,这需要添加尾随分隔符。使用 sed 很容易做到
s/$/,/g
但是,这些文件中的每一个在第一行的第一个字符位置还包含(由 vim 显示,但不是 ed 或 sed)。
我需要摆脱这个角色。它使用 vim 的x
命令删除一个字符。我如何使用 sed 来描述这个字符,这样我就可以在不删除该行的情况下删除它。
我试过1s/^.//g
了,但这不起作用。
我有三个 .csv 文件,它们是在 MS SQLServer 中保存查询时输出的。我需要将这些文件加载到 Informix 数据库中,这需要添加尾随分隔符。使用 sed 很容易做到
s/$/,/g
但是,这些文件中的每一个在第一行的第一个字符位置还包含(由 vim 显示,但不是 ed 或 sed)。
我需要摆脱这个角色。它使用 vim 的x
命令删除一个字符。我如何使用 sed 来描述这个字符,这样我就可以在不删除该行的情况下删除它。
我试过1s/^.//g
了,但这不起作用。
试试这个:
sed -e '1s/^.//' input_file > output_file
或者,如果您想就地编辑文件:
sed -ie '1s/^.//' input_file
(已编辑)显然s/^.//
没有引用这样做,已更新。
就地删除第一行的第一个字符:
sed -i '1s/^.//' file
尝试:
sed -i '1s/^.\(.*\)/\1/' file
这应该从第一行删除第一个字符。(首先尝试不带-i
参数以确保)
编辑:我最初发布了以下内容,这将删除每一行的第一个字符。在重新阅读这个问题后,我意识到这并不是想要的。
sed -i 's/^.\(.*\)/\1/' file