Comparaison de caractères [UNIX KSH] - Programmation
Marsh Posté le 28-03-2001 à 10:16:08
Il semble que tu aies deux solutions :
- soit tout simplement =
- soit "-ne" pour "est différent de"
Marsh Posté le 28-03-2001 à 10:29:38
Quand j'exécute :
#!/bin/ksh
ETAT='C'
if [ $ETAT -ne 'E' ]
then
echo "Etat ne vaut pas E"
else
echo "Etat vaut $ETAT"
fi
J'obtiens le message d'erreur : "./test.ksh[5]: C: bad number"
Ou est mon erreur?
Marsh Posté le 28-03-2001 à 10:50:58
Pffff encore un problème à 2 sous....PUTAIN J'AI LA MEME ERREUR.... sauf que j'arriev quand même à exécuter le shell, avec comme seule modif :
if [ "$ETAT" -ne "E" ]
(oui, moi aussi je suis une quille en KSH)
Marsh Posté le 28-03-2001 à 10:57:46
EVIDEMMENT!!!!!!!!!!!!!!!!!!!!
L'opérateur "-ne" ne convient que pour les NOMBRES.
Pour des chaînes, c'est !=
Et désolé de t'avoir mis sur une fausse piste.
Marsh Posté le 28-11-2013 à 20:54:31
Bonjour à tous,
je souhaite vérifier dans un fichier, si, pour chaque ligne, le caractère (numérique) de la colonne 5 est égal à 0, pour ensuite effectuer une opération sur la ligne.
Avez-vous une idée pour faire ca?
Marsh Posté le 28-11-2013 à 23:54:54
capitainabloc a écrit : Bonjour à tous, |
!
Pour une solution possible, tout dépend de ce que tu veux faire ensuite
Tu peux extraire toutes les lignes dont la colonnes 5 est égale à 0 avec la commande suivante :
Code :
|
Edit : Bien sûr, cette ligne est valable sur du HP-UX
Marsh Posté le 28-03-2001 à 10:09:52
Une question toute simple d'une débutante: quel est l'opérateur de comparaison de caractère? (je voudrais savoir si ma variable $ETAT est égal à la lettre C)
Merci d'avance.