1行コマンドで複数行をファイルに書き込む

1行コマンドで複数行をファイルに書き込む

catツール(または同様のツール)を使用してコマンドラインを使用して生成したいファイルがあります。問題のテキストは複数行になっており、特定の形式(yaml)になっています。この形式を維持したいです。

1行のコマンドを使ってファイルに書き込む方法はありますか?

答え1

$ cat > test.yaml << EOF
Line 1
Line 2
Line 3
EOF

$ cat test.yaml

この記号はファイルの>生成を示します。test.yaml

答え2

cat <<\EOT >target_file
foo
    bar
        baz
EOT

答え3

なぜファイルをコピーしないのかわかりません。しかし、コピーしたいがコピーしたくcatない場合は、とにかく入力します。したがって、一般的な励起<<文書リダイレクトを使用する代わりに、単に次のことを実行できます。

cat > target_file

今、あなたはタイプしてcat書いcatていますtarget_file。入力が終わったら、もう一度クリックし、空白行EnterCtrl+D終了をクリックします。入力した内容が になければなりませんtarget_file。確認してください。

cat target_file

関連情報