首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Shell脚本-在不同的bash会话中并行运行shell命令

Shell脚本-在不同的bash会话中并行运行shell命令
EN

Stack Overflow用户
提问于 2020-09-08 14:45:02
回答 1查看 138关注 0票数 0

我需要从shell脚本并行运行数据库恢复命令。这两个命令应该在不同的bash会话中并行运行。

以下是我需要运行的命令。

代码语言:javascript
复制
sudo su - $user -c "db2 RESTORE DATABASE ${SDBP} FROM '/dbnfs/db2main/backups/${DB2DBP}' TAKEN AT $TIMESTAMPP ON '/data1/DB2/tablespaces/${DB2DBP}' , '/data2/DB2/tablespaces/${DB2DBP}'  DBPATH ON '/home/db2inst1' INTO ${DB2DBP} NEWLOGPATH '/data1/activelogs/${DB2DBP}' without rolling forward without prompting 2>&1"
sudo su - $user -c "db2 RESTORE DATABASE ${SDBS} FROM '/dbnfs/db2main/backups/${DB2DBS}' TAKEN AT $TIMESTAMPS ON '/data1/DB2/tablespaces/${DB2DBS}' , '/data2/DB2/tablespaces/${DB2DBS}'  DBPATH ON '/home/db2inst1' INTO ${DB2DBS} NEWLOGPATH '/data2/activelogs/${DB2DBS}' without rolling forward without prompting 2>&1"

让我知道如何实现它。

EN

回答 1

Stack Overflow用户

发布于 2020-09-08 16:18:54

因为您需要不同的bash会话(可能是由于长时间运行的命令),所以您可能会对screen命令感兴趣。

您可以创建新的命名屏幕(会话),让我们将其称为第一个命令的restore1

代码语言:javascript
复制
screen -S restore1

这将创建一个新屏幕。在此屏幕中,您可以运行您的第一个命令。一旦命令开始运行,您就可以从它“分离”(ctrl+a d)。

SDBS创建另一个名为restore2的命名screen

代码语言:javascript
复制
screen -S restore2

在这里运行第二个命令,然后从它分离。您可以通过以下方式检查屏幕(会话):

代码语言:javascript
复制
screen -list

您可以使用screen -r <screen_name>重新连接到任何屏幕,以检查该命令的状态。示例:

代码语言:javascript
复制
screen -r restore1
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63788423

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档