Linux bash脚本-DB2";“db2还原数据库”;默认答案是

Linux bash脚本-DB2";“db2还原数据库”;默认答案是,linux,bash,db2,Linux,Bash,Db2,我试图创建一个bash脚本,它将备份一个db2数据库,然后将其恢复到另一个数据库中。问题是DB2问了一个(y/n)问题,我无法自动得到答案,它需要y和回车 我尝试了下面的行(以及yes命令),但它不起作用 #while true; do echo y; done | db2 restore database $SOURCE taken at $DB2TIME into $TARGET 执行restore database命令后,我从db2获得以下输出: SQL2528W Warning!

我试图创建一个bash脚本,它将备份一个db2数据库,然后将其恢复到另一个数据库中。问题是DB2问了一个(y/n)问题,我无法自动得到答案,它需要y和回车

我尝试了下面的行(以及yes命令),但它不起作用

#while true; do echo y; done | db2 restore database $SOURCE taken at $DB2TIME into $TARGET
执行restore database命令后,我从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) 

你有没有试过不用while循环

echo "y" | db2 .....

否则,请选中以关闭交互模式。是否在没有while循环的情况下尝试此操作

echo "y" | db2 .....

否则,请选中以关闭交互模式。?

为什么不在还原命令中添加“无提示”。它消除了提示。

为什么不在restore命令中添加“无提示”呢。它消除了提示。

使用“无提示”选项

使用“无提示”选项

我认为这不会产生回车,因此它仍然会坐在那里。我希望有一种方法可以告诉db2在同一个命令“DB2RESTOREDABASE…yes”中默认为yes,但这也不起作用。我认为这不会产生回车,所以它仍然会在那里。我希望有一种方法可以告诉db2在同一个命令“db2 restore database…yes”中默认为yes,但这也不起作用。好了,我只需要使用同一个命令,并在最后加上“无提示”。我试图用
yes
用传统的UNIX方式来做这件事,结果分心了,因为它不起作用-无论如何,谢谢!好了,就这样做了,我只需要使用相同的命令,并在末尾加上“无提示”。我试图用
yes
用传统的UNIX方式来做这件事,结果分心了,因为它不起作用-无论如何,谢谢!