MySQLバックアップスクリプトのunalias

MySQLバックアップスクリプトのunalias

MySQL データベースをバックアップするスクリプトです。

#!/bin/bash
FILE=minime.sql.`date +%F`
DBSERVER=127.0.0.1
DATABASE=wordpress
USER=root
PASS=789789

unalias rm  2> /dev/null
rm $FILE  2> /dev/null
rm $FILE.gz  2> /dev/null
mysqldump --opt --user=$USER --password=$PASS $DATABASE > $FILE
gzip $FILE
echo "$FILE.gz was created"
ls -l $FILE.gz

コマンドは、3行が古いバージョンのファイルを削除するためのものであることを示していますが、なぜrmのエイリアスを解放し、stderrを/ dev / nullにリダイレクトする必要があるのか​​わかりません。

unalias rm  2> /dev/null
rm $FILE  2> /dev/null
rm $FILE.gz  2> /dev/null

ベストアンサー1

rmスクリプト作成者は、コマンドが既存のステートメントによって変更されていないことを確実に確認したい場合がありますalias

作成者は/bin/rm代わりに絶対パスを使用してこれを実行できますrm

RM="/bin/rm"
$RM $FILE ...

rmrm -fそのオプションが同じことを行うため、作成者がSTDERRにリダイレクトすることを選択した理由を理解できません。

おすすめ記事