Question d'un script bash

Résolu/Fermé
GhostRider74 Messages postés 158 Date d'inscription jeudi 24 janvier 2008 Statut Membre Dernière intervention 11 avril 2010 - 12 avril 2009 à 22:33
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 - 12 avril 2009 à 23:08
Bonjour,
je code actuellement un petit script qui me permettrait de préparer mes serveur dédié quand je les reçois (mise a jour , installation de paquets et préparation d'un backup contenant les fichiers des serveurs de jeux).
Mais je bloque .
En effet a un moment quand j'execute le fichier hldsupdatetool.bin la console me pose une question a la quel je dois répondre 'yes' et j'aimerais ne pas avoir a y répondre , que le script réponde tout seul quoi .
Pourriez vous me donner des idées ?
Si besoin voici mon script :
#!/bin/bash
#
# prepadedie V.1.0 
# Avril 2009
# Script pour installer et faire les modifications necessaire aux nouveaux dédié de BAMBOX
# p.i.m.p@hotmail.fr 

#Présentation du programme et demande de l'accord de l'utilisateur

echo "Vous vous appretez à utiliser un script qui préparera votre serveur dédié."
echo "Les créateurs déclinent toute responsabilité si votre système est endomagé."
echo "Ce script est fait pour fonctionner sur la distibution Ubuntu 8.10 Intrepid Ibex."
echo "Pour executer ce programme vous devez être logué en root."

echo "Donnez vous l'accord au programme de s'éxecuter ? (O/n)"
read ACCORD
	if [ ${ACCORD} != "O" && ${ACCORD} != "o" ]
	then
	echo "le programme va maintenant être arrété."
	exit
	fi
#Vérification que l'utilisateur est bien logué
	if [ ! `whoami` = "root" ]
	then
	echo "vous n'avez pas les droits d'acces !"
	echo "le programme va maintenant être arrété ."
	exit
	fi
#Début du script 
echo -e "\v\v\v"
echo "Début de la mise a jour de votre serveur."
apt-get update 
echo -e "\v"
apt-get dist-upgrade -qq -y
echo -e "\v"
echo "La mise a jour c'est bien déroulée."
echo -e "\v\v\v"
echo "Installation des paquets."
apt-get install clamav unrar unrar-free proftpd
echo "L'installation des paquets s'est bien déroulée."
#Création du backup
echo "Début de l'instalation du backup"
mkdir /home/backup
cd /home/backup
mkdir cs1.6
mkdir cz
mkdir css
mkdir dod
mkdir dods
mkdir l4d
swget https://store.steampowered.com/
chmod 777 hldsupdatetool.bin
./hldsupdatetool.bin -qq -y
rm hldsupdatetool.bin
./steam update
./steam update
./steam -command update -game "cstrike" -dir cs/
./steam -command update -game "czero" -dir cz/
./steam -command update -game "dod" -dir dod/
./steam -command update -game "Counter-Strike Source" -dir css/
./steam -command update -game "dods" -dir dods/
./steam -command update -game "left4dead" -dir l4d/
exit


Cordialement .
A voir également:

12 réponses

linuseiya Messages postés 324 Date d'inscription vendredi 2 janvier 2009 Statut Membre Dernière intervention 14 décembre 2010 29
12 avril 2009 à 22:37
Bonsoir,
Je pense que supprimer le passage suivant pourrait marcher. Fais un backup du fichier avant au cas où.
"
echo "Donnez vous l'accord au programme de s'éxecuter ? (O/n)"
read ACCORD
if [ ${ACCORD} != "O" && ${ACCORD} != "o" ]
then
echo "le programme va maintenant être arrété."
exit
fi
"
1
GhostRider74 Messages postés 158 Date d'inscription jeudi 24 janvier 2008 Statut Membre Dernière intervention 11 avril 2010 8
12 avril 2009 à 22:39
Oui mais c'est en exécutant ./hldsupdatetool.bin plus bas que ça me gène .
Moi je voudrai que une fois que l'on a tapé oui on puisse partir et laisser faire
1
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
12 avril 2009 à 22:40
Salut,
./ton_script <<< "o"
;-))
1
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
12 avril 2009 à 22:50
Bizarre chez moi ça marche bien pourtant...

Alors mets le "o" dans un fichier :
echo "o" > fichier

et appelle ton script comme suit :
./ton_script < fichier
;-))
1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
linuseiya Messages postés 324 Date d'inscription vendredi 2 janvier 2009 Statut Membre Dernière intervention 14 décembre 2010 29
12 avril 2009 à 22:42
Oups désolé j'ai lu trop vite la question. Désolé je ne sais pas si tu peux éviter cette confirmation, c'est une mesure de sécurité je pense.
0
GhostRider74 Messages postés 158 Date d'inscription jeudi 24 janvier 2008 Statut Membre Dernière intervention 11 avril 2010 8
12 avril 2009 à 22:47
Oula ,
alors en faisant comme tu as dis sa a carement repeté la question X fois et fais planté le dedie :(
0
GhostRider74 Messages postés 158 Date d'inscription jeudi 24 janvier 2008 Statut Membre Dernière intervention 11 avril 2010 8
12 avril 2009 à 22:50
C'est bon j'ai trouvé il suffisait de remplacer o par yes lol merci
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
12 avril 2009 à 23:00
Je suis étonné que ça marche ;-\
0
GhostRider74 Messages postés 158 Date d'inscription jeudi 24 janvier 2008 Statut Membre Dernière intervention 11 avril 2010 8
12 avril 2009 à 23:02
A bon pourquoi?
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
12 avril 2009 à 23:02
[tmpfs]$ cat toto.sh
#! /bin/sh

#set -xv

echo "Voulez-vous continuer ?"
read reponse
if [ "$reponse" == "o" ]
then
echo "Reponse = Oui"
else
echo "Reponse = Non"
fi

[tmpfs]$ ./toto.sh <<< "o"
Voulez-vous continuer ?
Reponse = Oui

[tmpfs]$ ./toto.sh <<< "yes"
Voulez-vous continuer ?
Reponse = Non

[tmpfs]$ ./toto.sh <<< "u"
Voulez-vous continuer ?
Reponse = Non

[tmpfs]$  
0
GhostRider74 Messages postés 158 Date d'inscription jeudi 24 janvier 2008 Statut Membre Dernière intervention 11 avril 2010 8
12 avril 2009 à 23:04
Oui mais moi c'est acceptez vous ... (yes/no)
et quand j'ai mis yes ba ca a marché ^^
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
12 avril 2009 à 23:06
echo "Donnez vous l'accord au programme de s'éxecuter ? (O/n)"
read ACCORD
	if [ ${ACCORD} != "O" && ${ACCORD} != "o" ]
	then
	echo "le programme va maintenant être arrété."
	exit
Ben c'était pas évident à deviner ;-((
0
GhostRider74 Messages postés 158 Date d'inscription jeudi 24 janvier 2008 Statut Membre Dernière intervention 11 avril 2010 8
12 avril 2009 à 23:07
Vomme je l'ai di c'est pas pour cette parti c'est pour hldsupdatetool.bin plus ba ;)
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
12 avril 2009 à 23:08
Oups j'avions pas z'été si bas ;-(

;-))
0