Bonjour,

J'ai créé ce script SH (bash) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#/bin/bash --verbose -x
#!/bin/bash --debug --verbose
#
#--VARIABLES--
#
FILLOG=/appl/XXX_F1_LOGS/XXX_F1_LOGS_hostname.log
#
#--TRAITEMENT--
echo " -- LECTURE ET EXECUTION COMMANDES--" > $FILLOG
ligne=0
resultat=0
old_IFS=$IFS
IFS=$'\n\t'
#
echo --test_ls_alrt-- >> $FILLOG
ls -alrt >> $FILLOG
#
for ligne in $(cat /appl/XXX_F1_LOGS/hostname_commandes_repair.txt)
do
resultat=0
echo "__" >> $FILLOG
echo "_commande_a_executer_="$ligne  >> $FILLOG
$ligne >> $FILLOG #ICI
resultat=$?
echo "_RESULAT_COMMANDE_="$resultat >> $FILLOG
if [ $resultat -gt 0 ]
then
echo "_ERREUR_COMMANDE_"$ligne >> $FILLOG
exit
fi
done
#
echo " --FIN SCRIPT--" >> $FILLOG
Il permet de lire un fichier TXT qui contient des commandes Linux.
Ces commandes sont exécutés et le code de sortie est analysé; si supérieur à 0, alors le script s'arrête.

MAIS :
Les commandes contenues dans le fichier TXT qui contiennent un espace ne fonctionnent pas.
Et j'ai un code de sortie égal à 107.
J'ai essayé de positionner des caratères, sur $ligne : " ' [ ... sans succès ...

Pouvez-vous m'aider ?

Cdlt,