jivef
499Messages postés
11 août 2004Date d'inscription
1 février 2012Dernière intervention
13 nov. 2009 à 08:23
Bonjour,
Il y a certaines choses qu'on ne peut pas faire sous tous les interpréteurs de commande, même si, globalement ils sont tous très puissants, ils ont leurs spécificités.
Je ne sais pas sous quel Unix tu es, mais est-ce que tu as la possibilité de passer en bash ?
Sous Solaris par exemple, on peut , sous Mac OS X également.
Mais sous d'autres Unix, je ne sais pas s'il est installé par défaut.
Mais peut-être es-tu obligé de faire ton script en csh ?
En fait, en bash, voici ce que donne ta syntaxe :
jonas@debian:~$ stringZ=abcABC123ABCabc
jonas@debian:~$ echo ${stringZ:3:7}
ABC123A
J'ai fait quelques essais pour bien décomposer.
Je compte après le 3eme
jonas@debian:~$ echo ${stringZ:3}
ABC123ABCabc
Je compte après le 7eme
jonas@debian:~$ echo ${stringZ:7}
23ABCabc
Ta manipulation, en bash...
jonas@debian:~$ echo ${stringZ:3:7}
ABC123A
Je compte 7 après avoir sauté 0 caractère (entre :: il y a "rien")
jonas@debian:~$ echo ${stringZ::7}
abcABC1
Je n'ai eu aucun message d'erreur, mais en csh il y a des différences significatives.
C shell,
Seychelles
ou
Sea Shell...
Moi aussi je vis sur une île !
A plus.