web-dev-qa-db-ja.com

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

コマンドラインを使用して、またはcatツール(または類似のもの)を使用して作成したいファイルがあります。問題のテキストは複数行で、特定の形式(yaml)です-これを維持したいと思います。

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

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

$ cat test.yaml

>記号はtest.yamlファイル

5
Ram
cat <<\EOT >target_file
foo
    bar
        baz
EOT
4
Hauke Laging

ファイルをコピーしない理由がわかりません。しかし、catが必要で、コピーしたくない場合は、とにかく入力します。したがって、一般的な<<ヒアドキュメントリダイレクトを使用する代わりに、これを簡単に行うことができます。

cat > target_file

これでcatと入力し、cattarget_fileに書き込みます。入力が完了したら、もう一度ヒットします Enter、次に空行でヒット Ctrl+D 最後まで。入力した内容はtarget_fileにあるはずです。それを確認してください:

cat target_file
0
user147505