나는 보통 sudo mysql database < database.dump
메시지가 나타나면 비밀번호를 실행하고 입력합니다.
이를 자동화하기 위해 실행을 시도했지만 echo 'password' | sudo -S mysql database < database.dump
비밀번호를 인식하지 못했습니다.
나는 또한 성공하지 못했습니다.
mysql_cmd="mysql database < database.dump"
echo 'password' | sudo -S $mysql_cmd
다른 명령을 정상적으로 실행할 수 있습니다 sudo -S
. 무엇이 문제일까요?
답변1
database.dump
파일을 표준 입력으로 읽는 중입니다. sudo -S
표준 입력에서 암호를 읽고 그 뒤에 개행 문자가 옵니다. 대신 다음을 사용할 수도 있습니다.
( echo 'password'; cat database.dump ) | sudo -S mysql database