Comment récupérer les 4 premiers caractères d'un paramètre

Résolu/Fermé
JsuisNul Messages postés 122 Date d'inscription mercredi 13 février 2013 Statut Membre Dernière intervention 14 février 2024 - 24 janv. 2018 à 17:11
JsuisNul Messages postés 122 Date d'inscription mercredi 13 février 2013 Statut Membre Dernière intervention 14 février 2024 - 24 janv. 2018 à 18:03
Bonjour,

Je souhaiterai dans un script à partir d'un paramètre que je récupère du script précédent, ne prendre que les 4 premier caractère de celui-ci. Je n'arrive pas à trouver la bonne syntaxe...

J'ai dans le script dans lequel je travaille une variable utilisé comme cela

cat $SIGACS/file/POPO/PSPOPO_${FCT_PARAM1}*

Le paramètre récupéré est donc ${FCT_PARAM1}
J'aimerai donc récupérer uniquement les 4 premiers caractères pour en créer un autre

Quelqu'un pourrait m'aider SVP ?

Merci d'avances.

A voir également:

1 réponse

zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407
24 janv. 2018 à 17:25
0
JsuisNul Messages postés 122 Date d'inscription mercredi 13 février 2013 Statut Membre Dernière intervention 14 février 2024 1
24 janv. 2018 à 17:41
Merci pour la doc que je sais trouver (c'est l'une des rares chose que je connais sous unix) mais à mon niveau ça ne va pas vraiment me servir...

Je sais que pour vous qui maîtriser le langage, ma question peut vous sembler idiote et qu'elle peut laisser à penser que je n'ai pas cherché avant de poser la question mais ce n'est pas le cas.

J'ai passé déjà beaucoup de temps à chercher et si je m'adresse au forum c'est pour éviter de perdre encore plus de temps pour quelque chose qui j'en suis sur prendra 2 secondes pour quelqu'un qui connait.

Mais merci quand même zipe31
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407 > JsuisNul Messages postés 122 Date d'inscription mercredi 13 février 2013 Statut Membre Dernière intervention 14 février 2024
24 janv. 2018 à 17:49
${paramètre:début:longueur}
Extraction de sous-chaîne Se développe pour fournir la sous-chaîne de la longueur indiquée (en caractères) commençant au début.D offset. Si la longueur est omise, fournit la sous-chaîne commençant au caractère de début et s'étendant jusqu'à la fin du paramètre. La longueur et le début sont des expressions arithmétiques (voir ÉVALUATION ARITHMÉTIQUE plus bas). La longueur doit être positive ou nulle. Si le début est négatif, sa valeur est considérée à partir de la fin du contenu du paramètre. Si le paramètre est @, le résultat correspond aux longueur paramètres positionnels commençant au début. Si le paramètre est un nom de tableau indexé par @ ou *, le résultat est les longueur membres du tableau commençant à ${paramètre[début]}. Une valeur négative de début est prise relativement à la valeur maximum de l'index du tableau considéré, augmentée de un. Notez qu'une valeur négative de début doit être séparée du deux-points par au moins une espace pour éviter toute confusion avec le dévéloppement de « :- ». L'indexation des sous-chaînes débute à zéro, sauf pour les paramètres positionnels qui débute en 1.
0
JsuisNul Messages postés 122 Date d'inscription mercredi 13 février 2013 Statut Membre Dernière intervention 14 février 2024 1
24 janv. 2018 à 17:55
Désolé zipe31, j'allais justement te répondre car je n'avais pas vu que tu avais préciser le paragraphe à lire...

${FCT_PARAM1:0:4} marche nikel

Merci
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407 > JsuisNul Messages postés 122 Date d'inscription mercredi 13 février 2013 Statut Membre Dernière intervention 14 février 2024
24 janv. 2018 à 17:57
Ben voilà ;-))

Le zéro est inutile, on peut simplifier en
${FCT_PARAM1::4}
0
JsuisNul Messages postés 122 Date d'inscription mercredi 13 février 2013 Statut Membre Dernière intervention 14 février 2024 1
24 janv. 2018 à 18:03
Ok merci pour l'astuce !!

Bonne soirée à toi ;-)
0