改行文字を挿入するために「sed」を使用したいです(1行が数百行になります)

改行文字を挿入するために「sed」を使用したいです(1行が数百行になります)

vimでは、次の行に対応するsedが必要です。

:s/","/",^M"/g

目的:複数のjsonチャンクを含む行を取得し、別の行に分割します。

私が使用したいものの例は次のとおりです。 http://www.phantomwork.com/video/teen-titans-go/episodes/index.html(getFullEpisodes()関数を探してください)。

私が試したこと:

519  sed -e 's/","/",\n"/g' < /tmp/url > /tmp/line-url

- 動作しません。 「n」を適切な位置に置くだけです。

521  sed -e 's/","/",\\n"/g' < /tmp/url > /tmp/line-url

- 機能しない場合は、適切な位置にバックスラッシュを入力し、その後にnを入力してください。

vimコマンドの完全な「スクリプト」をシェルスクリプトに変換したいと思います。

:s/","/",^M"/g
:1,$!grep seo
:g,^.*/vid,s,,http://www.cartoonnetwork.com/vid
:g/"},{.*/s///
:$s,"}];,,
:wn

ベストアンサー1

あなたのバージョンがs / / /のRHSをsed理解していないようです。\n

bashコマンドラインからいつでもこれを実行できます。

sed -e 's/","/",\
"/g' < /tmp/url > /tmp/line-url

コマンドラインでcshバックスラッシュを2倍にする必要があります。末尾のバックスラッシュの後には、新しい行以外の文字は続いてはいけません。

おすすめ記事