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로 리디렉션하기로 선택한 이유를 이해할 수 없습니다 .

관련 정보