Bonjour a tous,

j'ai un petit souci dans l'élaboration d'un script.
je voudrais modifier quelques lignes du script suivant:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
#!/bin/sh
# $1 nom de l'utilisateur             
# $2 mot de pass de l'utilisateur     
 
mdpRootService=
 
mysql -u root -p$mdpRootService -e "CREATE USER '$1'@'localhost' IDENTIFIED BY '$2';"
mysql -u root -p$mdpRootService -e "CREATE DATABASE IF NOT EXISTS `$1` ;"
mysql -u root -p$mdpRootService -e "GRANT ALL PRIVILEGES ON `$1` . * TO '$1'@'localhost';"
Donc je voudrai:

1. remplacer mdpRootService= par mdpRootService=d'une variable
J'ai bien essayé de faire un sed, mais la variable n'est pas interprétée ..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
sed "s/mdpRootService=/mdpRootService=\$mdpMysql/" fichier.sh --> pas interprété
sed 's/mdpRootService=/mdpRootService='"$mdpMysql"'/' fichier.sh --> une erreur (sed: -e expression n°1, caractère 39: option inconnue pour `s')
sed 's/mdpRootService=/mdpRootService='$mdpMysql'/' test.sh      --> une erreur (sed: -e expression n°1, caractère 39: option inconnue pour `s')
2. j'ai un problème (de quote surement) pour intégrer les commandes mysql dans mon script. elle ne sont pas correctes d’après mysql....


Savez vous comment résoudre mes deux petits problèmes ?

Je vous remercie d'avance pour votre aide