5

MSSQLServerにクエリを保存して出力される3つの.csvファイルがあります。これらのファイルをInformixデータベースにロードする必要があります。これには、末尾の区切り文字を追加する必要があります。sedを使用すると簡単に実行できます

s/$/,/g

ただし、これらの各ファイルには、最初の行の最初の文字位置にが含まれています(vimによって表示されますが、edまたはsedではありません)。

このキャラクターを取り除く必要があります。vimのxコマンドを使用して1文字として削除します。sedを使用してこの文字を記述し、行を削除せずに削除できるようにするにはどうすればよいですか。

試しましたが、うまくいきませ1s/^.//gん。

4

3 に答える 3

8

代わりにこれを試してください:

sed -e '1s/^.//' input_file > output_file

または、ファイルをインプレースで編集する場合:

sed -ie '1s/^.//' input_file

(編集済み)どうやらs/^.//それを引用していない、更新された。

于 2012-12-18T15:31:17.010 に答える
2

最初の行の最初の文字をインプレースで削除します。

sed -i  '1s/^.//' file
于 2012-12-18T15:30:21.430 に答える
2

試す:

sed -i '1s/^.\(.*\)/\1/' file

これにより、最初の行から最初の文字が削除されます。(-i最初に引数なしで試してみてください)

編集:私は最初に次のように投稿しました。これにより、すべての行から最初の文字が削除されます。質問を読み直してみると、それは望んでいたことではないことに気づきました。

sed -i 's/^.\(.*\)/\1/' file
于 2012-12-18T15:31:20.193 に答える