Bonjour,
J'ai écrit des scripts bash il y a quelques temps qui fonctionnaient très bien (en utilisant /bin/bash), mais la cible sur laquelle je travaille ne contient que /bin/sh, et donc mon programme ne marche plus, et je n'arrive pas à débugger !
J'ai notamment 2 problèmes : la comparaison des chaînes de caractères que je faisais ainsi :
On me dit tout d'abord que les "[[" ça ne veut rien dire, mais le problème persiste même avec un seul [.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 comp() { if [[ $1 == "chaine" ]] then echo OK fi } comp "PAS OK"
Le 2ème souci correspond à la substitution dans une chaîne. Voici mon code avant :
Erreur : Bad substitution ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 subs() { chiffre=${1:0:1} } subs "3:B"
Mais là je vois vraiment pas !
Je vous remercie d'avance !
EDIT : J'ai trouvé pour la comparaison, il faut faire :
Par contre, je n'ai toujours pas trouvé pour la substitution ... et je ne veux pas passer par cut parce que ça n'a aucun rapport avec un fichier
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 if [ "$1" = "chaine" ];
Partager