Perl ソリューションは、sampson-chen の sed ソリューションに似ています。 :
perl -pe 's/\\n/\n/g'
例:
リテラル \n (改行ではない) を含む入力ファイル:
$ cat test1.txt
foo\nbar\n\nbaz
\n
の出現箇所をすべてリテラルに置き換えます 実際の改行を使用して、STDOUT
に出力します :
$ perl -pe 's/\\n/\n/g' test1.txt
foo
bar
baz
同じように、入力ファイルをその場で変更し、バックアップを test1.txt.bak
に保存します :
$ perl -i.bak -pe 's/\\n/\n/g' test1.txt
Perl ワンライナーでは、次のコマンド ライン フラグを使用します。
-e
:ファイル内ではなくインラインでコードを探すように Perl に指示します。
-p
:入力を 1 行ずつループし、$_
に割り当てます。 デフォルトで。 print $_
を追加 各ループ反復の後。
-i.bak
:入力ファイルをその場で編集します (入力ファイルを上書きします)。上書きする前に、ファイル名に拡張子 .bak
を追加して、元のファイルのバックアップ コピーを保存します。 .
関連項目:
perldoc perlrun
:Perl インタープリターの実行方法:コマンド ライン スイッチ
perldoc perlre
:Perl 正規表現 (正規表現)
sed
でそれを行う方法は次のとおりです :
sed 's/\\n/\n/g'
使用例:
\n
をすべて置換するには ファイルのインプレース:
sed -i 's/\\n/\n/g' input_filename
\n
をすべて置換するには パイプを介して、別のファイルに保存
cat file1 file2 file3 file4 | sed 's/\\n/\n/g' > output_file