bash script - ответ по умолчанию на DB2 "db2 restore database" ДА - PullRequest
1 голос
/ 07 сентября 2010

Я пытаюсь создать скрипт bash, который будет делать резервную копию базы данных db2, а затем восстанавливать ее в другую базу данных. Проблема в том, что DB2 задает (да / нет) вопрос, и я не могу получить автоматический ответ, чтобы он заработал - для него требуется y и возврат каретки.

Я пробовал следующую строку (и команду yes), но она не работает

#while true; do echo y; done | db2 restore database $SOURCE taken at $DB2TIME into $TARGET

после выполнения команды восстановления базы данных я получаю этот вывод из db2:

SQL2528W  Warning!  Restoring to an existing database that is the same as the 
backup image database, but the alias name "######" of the existing database 
does not match the alias "$$$$$" of backup image, and the database name 
"#######" of the existing database does not match the database name "$$$$$" of 
the backup image.  The target database will be overwritten by the backup 
version.
Do you want to continue ? (y/n) 

Ответы [ 3 ]

3 голосов
/ 07 сентября 2010

Почему бы просто не добавить "без запроса" к вашей команде восстановления. Это исключает подсказку.

2 голосов
/ 07 сентября 2010

использовать опции "без запроса"

0 голосов
/ 07 сентября 2010

вы пробовали это без цикла while?

echo "y" | db2 .....

В противном случае, обратитесь к справочной странице команды db2 для отключения интерактивного режима .?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...