bash – 如何在sudo中运行两个命令?

前端之家收集整理的这篇文章主要介绍了bash – 如何在sudo中运行两个命令?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
有什么办法如何从命令行运行两个db2命令? (它将从PHP exec命令调用)

> db2 connect to ttt(请注意,我们需要为第二个命令使用连接
> db2 UPDATE CONTACT SET EMAIL_ADDRESS =’mytestaccount@gmail.com’

sudo -su db2inst1 db2 connect to ttt; db2 UPDATE CONTACT SET EMAIL_ADDRESS =’mytestaccount@gmail.com’

第一个命令正确完成,但第二个sql1024N数据库连接不存在。 sqlSTATE = 08003

注意

我需要运行这个作为PHP用户。命令sudo -u db2inst1 id as PHP user给我正确的输出

sudo可以通过shell运行多个命令,例如:
$ sudo -s -- 'whoami; whoami'
root
root

你的命令会是这样:

sudo -u db2inst1 -s -- "db2 connect to ttt; db2 UPDATE CONTACT SET EMAIL_ADDRESS = 'mytestaccount@gmail.com'"

如果你的sudo版本不支持带有分号的-s(显然,如果编译有某些选项,它不会使用),你可以使用

sudo -- sh -c 'whoami; whoami'

相反,它基本上做同样的事情,但让你明确命名shell。

原文链接:https://www.f2er.com/bash/392565.html

猜你在找的Bash相关文章