Problème script
Résolu
supra250589
Messages postés
49
Date d'inscription
Statut
Membre
Dernière intervention
-
jipicy Messages postés 40842 Date d'inscription Statut Modérateur Dernière intervention -
jipicy Messages postés 40842 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
J'ai un problème avec mon script je suis sous Fedora 12 et je ne trouve pas l'erreur, voila ce qu'il m'affiche:
Un problème a été rencontré, le dossier existe peut-être déjà
Entrée Mysql créée pour
Un problème a été rencontré, le dossier existe peut-être déjà
./insertdb.sh: line 44: /etc/vsftpd/vsftpd_user_conf/: est un dossier
./insertdb.sh: line 45: /etc/vsftpd/vsftpd_user_conf/: est un dossier
./insertdb.sh: line 46: /etc/vsftpd/vsftpd_user_conf/: est un dossier
./insertdb.sh: line 47: /etc/vsftpd/vsftpd_user_conf/: est un dossier
./insertdb.sh: line 48: /etc/vsftpd/vsftpd_user_conf/: est un dossier
Dossier docs créé dans
Droits attribués a ftp pour docs
Entrée Mysql créée pour E
Entrée Mysql créée pour
Un problème a été rencontré, le dossier existe peut-être déjà
./insertdb.sh: line 44: /etc/vsftpd/vsftpd_user_conf/: est un dossier
./insertdb.sh: line 45: /etc/vsftpd/vsftpd_user_conf/: est un dossier
./insertdb.sh: line 46: /etc/vsftpd/vsftpd_user_conf/: est un dossier
./insertdb.sh: line 47: /etc/vsftpd/vsftpd_user_conf/: est un dossier
./insertdb.sh: line 48: /etc/vsftpd/vsftpd_user_conf/: est un dossier
Un problème a été rencontré, le dossier existe peut-être déjà
et voila le script:
#!/bin/bash
#Creation de la variable pour la condition while (nombre de ligne du fichier)
nombreuser='wc -l mdp_prof.txt | cut -d' ' -f1'
#Creation groupe
cd /var/ftp
if mkdir profs 2> /dev/null
then
chmod -R 777 profs
echo "Crétion du répertoire profs réussie"
else
echo "Un problème a été rencontré, le dossier existe peut-être déjà"
fi
cd profs
i=1
while [ $i -le $nombreuser ]
do
#Creation des variables pour le fichier
nom=$(gawk -F"," 'NR == i {print $1}' /tmp/mdp_prof.txt)
login=$(gawk -F"," 'NR == i {print $3}' /tmp/mdp_prof.txt)
mdp=$(gawk -F"," 'NR == i {print $4}' /tmp/mdp_prof.txt)
login_elev="E"$nom
mdp_elev="E"$nom
#Creation utilisateur
mysql -u root -p17ind76 -e"INSERT INTO vsftpd.users (login,password,active) VALUES('$login',md5('$mdp'),1)" && echo "Entrée Mysql créée pour $nom"
#Creation du dossier utilisateurs
cd /var/ftp/profs
if mkdir /var/ftp/profs/$nom 2> /dev/null
then
echo "Dossier $nom créé"
chown ftp:ftp /var/ftp/profs/$nom && echo "Droits attribués a ftp pour $nom"
else
echo "Un problème a été rencontré, le dossier existe peut-être déjà"
fi
#Droit utilisateurs
echo "local_root=/var/ftp/profs/$nom" > /etc/vsftpd/vsftpd_user_conf/$login
echo "write_enable=YES" >> /etc/vsftpd/vsftpd_user_conf/$login
echo "anon_upload_enable=YES" >> /etc/vsftpd/vsftpd_user_conf/$login
echo "anon_mkdir_write_enable=YES" >> /etc/vsftpd/vsftpd_user_conf/$login
echo "anon_other_write_enable=YES" >> /etc/vsftpd/vsftpd_user_conf/$login
#Creation du dossier élève associé
cd /var/ftp/profs/$nom
if mkdir /var/ftp/profs/$nom/docs 2> /dev/null
then
echo "Dossier docs créé dans $nom"
chown ftp:ftp /var/ftp/profs/$nom/docs && echo "Droits attribués a ftp pour docs"
else
echo "Un problème a été rencontré, le dossier existe peut-être déjà"
fi
#Creation du compte eleve associé
mysql -u root -p17ind76 -e"INSERT INTO vsftpd.users (login,password,active) VALUES('$login_elev',md5('$mdp_elev'),1)" && echo "Entrée Mysql créée pour $login_elev"
echo "local_root=/var/ftp/profs/$nom/docs" > /etc/vsftpd/vsftpd_user_conf/$login_elev
echo "write_enable=NO" >> /etc/vsftpd/vsftpd_user_conf/$login_elev
echo "anon_upload_enable=NO" >> /etc/vsftpd/vsftpd_user_conf/$login_elev
echo "anon_mkdir_write_enable=NO" >> /etc/vsftpd/vsftpd_user_conf/$login_elev
echo "anon_other_write_enable=NO" >> /etc/vsftpd/vsftpd_user_conf/$login_elev
((i++))
done
merci d'avance!
J'ai un problème avec mon script je suis sous Fedora 12 et je ne trouve pas l'erreur, voila ce qu'il m'affiche:
Un problème a été rencontré, le dossier existe peut-être déjà
Entrée Mysql créée pour
Un problème a été rencontré, le dossier existe peut-être déjà
./insertdb.sh: line 44: /etc/vsftpd/vsftpd_user_conf/: est un dossier
./insertdb.sh: line 45: /etc/vsftpd/vsftpd_user_conf/: est un dossier
./insertdb.sh: line 46: /etc/vsftpd/vsftpd_user_conf/: est un dossier
./insertdb.sh: line 47: /etc/vsftpd/vsftpd_user_conf/: est un dossier
./insertdb.sh: line 48: /etc/vsftpd/vsftpd_user_conf/: est un dossier
Dossier docs créé dans
Droits attribués a ftp pour docs
Entrée Mysql créée pour E
Entrée Mysql créée pour
Un problème a été rencontré, le dossier existe peut-être déjà
./insertdb.sh: line 44: /etc/vsftpd/vsftpd_user_conf/: est un dossier
./insertdb.sh: line 45: /etc/vsftpd/vsftpd_user_conf/: est un dossier
./insertdb.sh: line 46: /etc/vsftpd/vsftpd_user_conf/: est un dossier
./insertdb.sh: line 47: /etc/vsftpd/vsftpd_user_conf/: est un dossier
./insertdb.sh: line 48: /etc/vsftpd/vsftpd_user_conf/: est un dossier
Un problème a été rencontré, le dossier existe peut-être déjà
et voila le script:
#!/bin/bash
#Creation de la variable pour la condition while (nombre de ligne du fichier)
nombreuser='wc -l mdp_prof.txt | cut -d' ' -f1'
#Creation groupe
cd /var/ftp
if mkdir profs 2> /dev/null
then
chmod -R 777 profs
echo "Crétion du répertoire profs réussie"
else
echo "Un problème a été rencontré, le dossier existe peut-être déjà"
fi
cd profs
i=1
while [ $i -le $nombreuser ]
do
#Creation des variables pour le fichier
nom=$(gawk -F"," 'NR == i {print $1}' /tmp/mdp_prof.txt)
login=$(gawk -F"," 'NR == i {print $3}' /tmp/mdp_prof.txt)
mdp=$(gawk -F"," 'NR == i {print $4}' /tmp/mdp_prof.txt)
login_elev="E"$nom
mdp_elev="E"$nom
#Creation utilisateur
mysql -u root -p17ind76 -e"INSERT INTO vsftpd.users (login,password,active) VALUES('$login',md5('$mdp'),1)" && echo "Entrée Mysql créée pour $nom"
#Creation du dossier utilisateurs
cd /var/ftp/profs
if mkdir /var/ftp/profs/$nom 2> /dev/null
then
echo "Dossier $nom créé"
chown ftp:ftp /var/ftp/profs/$nom && echo "Droits attribués a ftp pour $nom"
else
echo "Un problème a été rencontré, le dossier existe peut-être déjà"
fi
#Droit utilisateurs
echo "local_root=/var/ftp/profs/$nom" > /etc/vsftpd/vsftpd_user_conf/$login
echo "write_enable=YES" >> /etc/vsftpd/vsftpd_user_conf/$login
echo "anon_upload_enable=YES" >> /etc/vsftpd/vsftpd_user_conf/$login
echo "anon_mkdir_write_enable=YES" >> /etc/vsftpd/vsftpd_user_conf/$login
echo "anon_other_write_enable=YES" >> /etc/vsftpd/vsftpd_user_conf/$login
#Creation du dossier élève associé
cd /var/ftp/profs/$nom
if mkdir /var/ftp/profs/$nom/docs 2> /dev/null
then
echo "Dossier docs créé dans $nom"
chown ftp:ftp /var/ftp/profs/$nom/docs && echo "Droits attribués a ftp pour docs"
else
echo "Un problème a été rencontré, le dossier existe peut-être déjà"
fi
#Creation du compte eleve associé
mysql -u root -p17ind76 -e"INSERT INTO vsftpd.users (login,password,active) VALUES('$login_elev',md5('$mdp_elev'),1)" && echo "Entrée Mysql créée pour $login_elev"
echo "local_root=/var/ftp/profs/$nom/docs" > /etc/vsftpd/vsftpd_user_conf/$login_elev
echo "write_enable=NO" >> /etc/vsftpd/vsftpd_user_conf/$login_elev
echo "anon_upload_enable=NO" >> /etc/vsftpd/vsftpd_user_conf/$login_elev
echo "anon_mkdir_write_enable=NO" >> /etc/vsftpd/vsftpd_user_conf/$login_elev
echo "anon_other_write_enable=NO" >> /etc/vsftpd/vsftpd_user_conf/$login_elev
((i++))
done
merci d'avance!
A voir également:
- Problème script
- Script vidéo youtube - Guide
- Mas script - Accueil - Windows
- Ghost script - Télécharger - Polices de caractères
- Script cmd - Guide
- Script download - Télécharger - Édition & Programmation
5 réponses
Salut,
J'ai l'impression que tes soucis viennent des déclarations de tes variables, elles sont vides ;-((
Dossier docs créé dans ???
Droits attribués a ftp pour docs
Entrée Mysql créée pour E???
Entrée Mysql créée pour ???
;-((
J'ai l'impression que tes soucis viennent des déclarations de tes variables, elles sont vides ;-((
Dossier docs créé dans ???
Droits attribués a ftp pour docs
Entrée Mysql créée pour E???
Entrée Mysql créée pour ???
;-((
salut,
merci de répondre aussi vite!
pourtant dans le fichier mdp_prof.txt il y a bien tout (pas d'espace, pas de mot identique, bien séparé par des virgule)
merci de répondre aussi vite!
pourtant dans le fichier mdp_prof.txt il y a bien tout (pas d'espace, pas de mot identique, bien séparé par des virgule)
Peut être mais en attendant tes variables sont vides, d'où les erreurs ;-((
Commence par revoir la définition de tes variables :
Commence par revoir la définition de tes variables :
#Creation des variables pour le fichier nom=$(gawk -F"," 'NR == i {print $1}' /tmp/mdp_prof.txt) echo "${nom}" login=$(gawk -F"," 'NR == i {print $3}' /tmp/mdp_prof.txt) echo "${login}" mdp=$(gawk -F"," 'NR == i {print $4}' /tmp/mdp_prof.txt) echo "${mdp}" login_elev="E"$nom echo "${login_elev}" mdp_elev="E"$nom echo "${mdp_elev}"
voila ce qu'il m'affiche^^:
Un problème a été rencontré, le dossier existe peut-être déjà
E
Entrée Mysql créée pour
Un problème a été rencontré, le dossier existe peut-être déjà
./insertdb.sh: line 49: /etc/vsftpd/vsftpd_user_conf/: est un dossier
./insertdb.sh: line 50: /etc/vsftpd/vsftpd_user_conf/: est un dossier
./insertdb.sh: line 51: /etc/vsftpd/vsftpd_user_conf/: est un dossier
./insertdb.sh: line 52: /etc/vsftpd/vsftpd_user_conf/: est un dossier
./insertdb.sh: line 53: /etc/vsftpd/vsftpd_user_conf/: est un dossier
Dossier docs créé dans
Droits attribués a ftp pour docs
Entrée Mysql créée pour E
E
Un problème a été rencontré, le dossier existe peut-être déjà
E
Entrée Mysql créée pour
Un problème a été rencontré, le dossier existe peut-être déjà
./insertdb.sh: line 49: /etc/vsftpd/vsftpd_user_conf/: est un dossier
./insertdb.sh: line 50: /etc/vsftpd/vsftpd_user_conf/: est un dossier
./insertdb.sh: line 51: /etc/vsftpd/vsftpd_user_conf/: est un dossier
./insertdb.sh: line 52: /etc/vsftpd/vsftpd_user_conf/: est un dossier
./insertdb.sh: line 53: /etc/vsftpd/vsftpd_user_conf/: est un dossier
Dossier docs créé dans
Droits attribués a ftp pour docs
Entrée Mysql créée pour E
E
Ben tu le vois tes variables sont vides à l'exception du "E" de :
login_elev="E"$nom
mdp_elev="E"$nom
Mais aucune trace de la variable "${nom}" ;-((
Crées un script juste avec :
Et affiche le résultat..
login_elev="E"$nom
mdp_elev="E"$nom
Mais aucune trace de la variable "${nom}" ;-((
Crées un script juste avec :
#! /bin/bash #Creation des variables pour le fichier nom=$(gawk -F"," 'NR == i {print $1}' /tmp/mdp_prof.txt) echo "nom = ${nom}" login=$(gawk -F"," 'NR == i {print $3}' /tmp/mdp_prof.txt) echo "login = ${login}" mdp=$(gawk -F"," 'NR == i {print $4}' /tmp/mdp_prof.txt) echo "mdp = ${mdp}" login_elev="E"$nom echo "login eleve = ${login_elev}" mdp_elev="E"$nom echo "mdp eleve = ${mdp_elev}"
Et affiche le résultat..
il m'affiche:
E
et c tout
E
et c tout
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question