2011-06-26 5 views
1

私は約2000行のファイルを持っています。 特定の行を別の行に変更する最も簡単な方法は何ですか? たとえば、400番目の行を次のように変更したいとします。int cut_off = flow_max_-6; 〜int cut_off = flow_max_-8;ファイル内の1行を変更する

私はVimを使用するLinuxコンソール

+3

Chanditha - StackOverflowへようこそ。今度は数回使ったことがありますが、それは有用であるはずです。時間を割いて質問に答える人々に報酬を与えます。特に有益だった「受け入れられた」とupvoteで最高の答えをマークしてください。 –

答えて

1

でこれを行う必要があります。

しかし、あなたが好むかもしれ:

sed -e '400,400s/6/8/' two_thousand_line_file.txt > new_two_thousand_line_file.txt 

より包括的に:

sed -e '400,400s/[[:digit:]]{1,}/8/' two_thousand_line_file.txt > new_two_thousand_line_file.txt 

または:

sed -e '400,400s/\(int cut_off = flow_max_\).*\(;\)/\1some_other_number\2/' two_thousand_line_file.txt > new_two_thousand_line_file.txt 
+0

こんにちは、ありがとう。しかし、それが "flow_max_-6"である場合にのみ機能します。番号は6でなければなりません。どのように番号を変更してその行を置き換えることができますか? したがって、基本的に最初の部分「int cut_off = flow_max_」は同じままです。私は正規表現が必要だと思います。私はちょうどlinuxを始めて、私はそれで良いことではありません。 – CKCK

+0

これには正規表現が必要です。サンプルを追加しました。 – Johnsyweb

+0

ありがとうございました:) – CKCK

2

をあなたはsedを使用することによって、これを達成できます。

を3210
関連する問題