#1 Le 03/06/2010, à 11:32
- foxer98
Script Bash avec des [OK] en fin de ligne
Bonjour,
Je suis actuellement entrain de faire un script de sauvegarde de mes base mysql et mes servers(18), afin de faire un petit suivie sur l'écran je me fais des petits echo donnant quelque information. Cependant je souhaiterai faire [OK] ou des [FAIL] à la fin de chaque echo. Es ce que quelqu'un saurait il comment faire pour mettre des caractères en fin de ligne. Merci de votre aide
Hors ligne
#2 Le 03/06/2010, à 11:45
- kyncani
Re : Script Bash avec des [OK] en fin de ligne
Une possibilité :
echo -n "Backup de la base n°1 "
mysqldump bdd1 >bdd1.dump && echo "[OK]" || echo "[FAIL]"
Hors ligne
#3 Le 03/06/2010, à 12:04
- credenhill
Re : Script Bash avec des [OK] en fin de ligne
hello
aligne le texte tout à droite en fonction de la largeur de la fenêtre
$ C=$(($COLUMNS-10));printf "%${C}s\n" "OK ou FAIL"
OK ou FAIL
$
Hors ligne
#4 Le 03/06/2010, à 12:10
- lateo
Re : Script Bash avec des [OK] en fin de ligne
réponse un peu hors sujet, mais envisage d'utiliser logger à la place d'echo, ça te fait une trace dans les logs de la machine, et tu peux avoir une sortie écran aussi (man logger).
++
Hors ligne
#5 Le 03/06/2010, à 12:16
- redo_fr
Re : Script Bash avec des [OK] en fin de ligne
Salut,
essaye avec:
echo -e "Backup de la base n°1 \c "
mysqldump bdd1 >bdd1.dump && echo "[OK]" || echo "[FAIL]"
Il n'y a pas de mauvais outils, il n'y a que de mauvais ouvriers
- papy -
Personnellement, je crois que faire des procès est un signe que les affaires vont mal. Je ne dis pas que Microsoft va mal, ce n'est qu'un signe, pas un indicateur...
- Linus Torvalds -
Hors ligne
#6 Le 03/06/2010, à 13:46
- sputnick
Re : Script Bash avec des [OK] en fin de ligne
@credenhill, non, $COLUMNS est nul dans un script, ça marche qu'en interactif.
Voici (l|m)a solution :
printf '%*s\n' $(tput cols) "ceci est a droite"
On ne peut pas mettre d'array dans un string!
https://sputnick.fr/
Hors ligne
#7 Le 03/06/2010, à 13:54
- sputnick
Re : Script Bash avec des [OK] en fin de ligne
Tiens, même :
printf '%*s\n' $(($(tput cols)+10)) "[$(tput setaf 2)OK$(tput sgr0)]"
printf '%*s\n' $(($(tput cols)+10)) "[$(tput setaf 1)NOK$(tput sgr0)]"
Bon, tu pouvait aussi t'inspirer des scripts qui checkent les services au démarrage
On ne peut pas mettre d'array dans un string!
https://sputnick.fr/
Hors ligne
#8 Le 05/06/2010, à 08:35
- nesthib
Re : Script Bash avec des [OK] en fin de ligne
^^ c'est ce que je pensais aussi sputnick
d'ailleurs ce sont lesquels ces scripts ?
GUL Bordeaux : Giroll – Services libres : TdCT.org
Hide in your shell, scripts & astuces : applications dans un tunnel – smart wget – trouver des pdf – install. auto de paquets – sauvegarde auto – ♥ awk
⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn
Hors ligne
#9 Le 05/06/2010, à 10:40
- sputnick
Re : Script Bash avec des [OK] en fin de ligne
/etc/rc.d/functions sous archlinux
On ne peut pas mettre d'array dans un string!
https://sputnick.fr/
Hors ligne