Как я могу su с root до db2inst1 и вызывать сценарий SQL все в одну строку? Я думаю о чем-то вроде этого:
su
root
db2inst1
su db2inst1 | db2 CONNECT TO myDatabase USER db2inst1 USING mypw; db2 -c -i -w -td@ -f /tmp/deploy/sql/My.sql | exit;
Есть идеи?
Вы можете использовать опцию -c или --command=<command>, чтобы выполнить команду с su. В вашем случае примерно так:
-c
--command=<command>
su -c 'db2 CONNECT TO myDatabase USER db2inst1 USING mypw; db2 -c -i -w -td@ -f /tmp/deploy/sql/My.sql' db2inst1
если вы используете Solaris и не хотите / не можете ввести пароль, оформите заказ pfexec.