161 votes

Comment faire pour exécuter deux commandes dans sudo ?

est-il possible comment je peux courir deux db2 commandes à partir d'une ligne de commande? (il sera appelé à partir de php exec commande)

  1. db2 connect de ttt (à noter que nous avons besoin d'avoir le lien direct pour la deuxième commande
  2. db2 mise à JOUR de JEU de CONTACTS EMAIL_ADDRESS = 'mytestaccount@gmail.com'

    sudo su db2inst1 db2 connect pour ttt; db2 mise à JOUR de JEU de CONTACTS EMAIL_ADDRESS = 'mytestaccount@gmail.com'

la première commande est terminée correctement, mais le second, SQL1024N A database connection does not exist. SQLSTATE=08003

NOTE

J'ai besoin d'exécuter ce que le php de l'utilisateur. Commande sudo -u db2inst1 id comme php utilisateur me donne de bons résultats.

187voto

Jason Points 1107

Pour votre commande vous pourriez aussi référer à l’exemple suivant :

``

163voto

wjl Points 2904

sudo permet d'exécuter plusieurs commandes via un shell, par exemple:

$ sudo -s -- 'whoami; whoami'
racine
racine

Votre commande devrait être quelque chose comme:

sudo -u db2inst1 -s -- "db2 connect pour ttt; db2 mise à JOUR de JEU de CONTACTS EMAIL_ADDRESS = 'mytestaccount@gmail.com'"

EDIT: Si votre version sudo ne fonctionne pas avec des points-virgules avec-s (apparemment, il n'est pas si compilé avec certaines options), vous pouvez utiliser sudo -- sh -c 'whoami; whoami' au lieu de cela, ce qui se fait de la même chose mais en fait vous le nom de la coquille de manière explicite.

46voto

Nebojša Points 111

Si vous souhaitez gérer les citations :

45voto

Samer Atiani Points 80

Je le fais habituellement :

3voto

user2597485 Points 11

Le option n’a pas fonctionné pour moi, fait.

Voici un exemple de comment je pourrais mettre à jour la taille du journal de mon bash :

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X