1

テキストファイルの2行目を削除したいです。vimまたはex任意の種類のテキスト エディター フォーム スクリプトを使用します。これらのコマンドを思いつきましたが、うまくいきません。

#!/bin/sh

iconv -f Utf-16le -t utf-8  ~/Desktop/upload.csv -o ~/Desktop/finalutf.csv

vim ':2d|wq' ~/Desktop/finalutf.csv 

ex -sc '%s/\r//e|x' ~/Desktop/finalutf.csv

スクリプト.shは実行可能です。コードの最初の行は機能しますが、3行目も機能しますが、2行目は機能しません。特定の行を削除するためのvimコマンドのドキュメントを参照して、ターミナルで試してみたところ、うまくいきました(:2dスクリプトで使用しようとすると混乱するようです)。私は Ubuntu だけでなく、vim やスクリプトも初めて使用します。複雑なコマンドの多くは、ドキュメントで vim を学習する初心者向けに説明されているため、習得するのは十分に難しいようです。

4

2 に答える 2

6

これは、そのsedために構築されたものです。

sed -i 2d ~/Desktop/finalutf.csv

ただし、vimを使用する必要がある場合は、実行できます

vim -c "2d|wq" ~/Desktop/finalutf.csv
于 2012-10-01T14:25:27.650 に答える
4

これは私のために働く:

vim -c "2d|wq" infile
于 2012-10-01T14:25:40.653 に答える