2017年2月8日

リダイレクトによる上書きを禁止するには?(setコマンド)

リダイレクト「>」を使ってコマンドの出力をファイルに書き込むと、ファイルの内容は上書きされてしまいます。上書きを禁止するには、Bash上で以下のコマンドを実行します。

$ set -o noclobber

これによりBashのオプションが変更されます。永続的に設定しておくには、~/.bashrcファイルに上記のコマンドを記述しておきます。これで、既存のファイルを上書きしようとすると警告が出るようになります。

$ ls > ls.log
bash: ls.log: 存在するファイルを上書きできません

この設定を解除するには、以下のコマンドを実行します。

$ set +o noclobber


0 件のコメント:

コメントを投稿