$DATE
나중에 사용할 수 있도록 날짜를 변수( )에 저장하려고 하는데 작동하지 않는 것 같습니다. 무엇이 문제인지 아시나요?
DATE=$(date +"%Y-%m-%d %R")
sudo mysqldump -u root -pnotgivingyoumypassword --all-databases > ~/mysql_backups/$DATE.sql
cd /var/www && sudo tar -czf ~/www_backups/$DATE.tar ./
고쳐 쓰다 오류 메시지는 다음과 같습니다.
get:tar: 20\:41.tar: 통계할 수 없음: 해당 파일 또는 디렉터리 없음 tar: 이전 오류로 인해 실패하여 종료되었습니다.
mysql 덤프에서는 작동하는 것 같지만 마지막 명령에서 사용할 때는 실패합니다.
답변1
$DATE
토큰화를 진행 중인 확장 프로그램을 인용해야 하므로 tar
확장되면 하나 대신 두 개의 인수가 전달됩니다 $DATE
(리디렉션의 경우에도 동일). 다음은 수정된 버전입니다( 관례에 따라 $DATE
로 변경되었으며 $date
환경 변수만 모두 대문자여야 합니다).
date=$(date +"%Y-%m-%d %R")
sudo mysqldump -u root -pnotgivingyoumypassword --all-databases > ~/mysql_backups/"$date.sql"
cd /var/www && sudo tar -czf ~/www_backups/"$date.tar" ./