Linux のスクリプト中から非対話的にファイルの新規作成や追記を行いたい場合、cat
コマンドで実現することが可能です。
ファイルを新規作成したい場合
cat
を使ったファイルの新規作成は以下のように実行します。
cat << EOF > FILE
BODY
EOF
例えば以下のように実行します。 この場合、/root/new-text.txt
というファイルが新規作成されます。 何度実行してもファイルの内容は同じです(=追記されるわけでは無く、常に同じ内容で新規作成されます)。
cat << EOF > /root/new-text.txt
Hello, World!
EOF
ファイルに追記したい場合
既に存在するファイルに追記する場合は以下のように実行します。 ファイルが存在しない場合は新規作成されます。 複数回実行すると、実行する度に内容が追記されていきます。
cat << EOF >> FILE
BODY
EOF
例えば /root/add-text.txt
が存在しない状態から以下を三回、実行します。
cat << EOF >> /root/add-text.txt
Hello, World!
EOF
初回実行でファイルが新規作成され、二回目、三回目と実行する度に内容が追記されます。 三回目の実行が完了した後に内容を確認すると以下のようになっているはずです。
# cat /root/add-text.txt
Hello, World!
Hello, World!
Hello, World!
コメント