Bonjour,
Si par exemple j'ai une chaîne de caractères de 400 caractères, est il possible d'insérer une autre chaîne de caractères au dela du 255ème caractère?
Merci d'avance pour votre réponse.
Bonjour,
Si par exemple j'ai une chaîne de caractères de 400 caractères, est il possible d'insérer une autre chaîne de caractères au dela du 255ème caractère?
Merci d'avance pour votre réponse.
Oui, c'est possible. Tu ne nous donnes malheureusement pas assez de renseignements pour que l'on comprenne ce que tu ne comprends pas ou l'erreur que tu rencontres.
Voici mon code :
Lorsque la commande est exécutée, j'ai une erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 POSITION=300 CHAINE=toto FILE=/apps/bin/toto.txt sed "s/\(.\{$(expr ${POSITION})\}\)/\1${CHAINE}/" ${FILE}
L'erreur n'est pas présente tant que je ne mets pas de POSITION avec une valeur inférieure ou égale à 255 caractères.sed: Function s/\(.\{256\}\)/\1toto/ cannot be parsed.
Bonjour,
Je ne vois pas l'interêt de
Code : Sélectionner tout - Visualiser dans une fenêtre à part $(expr ${POSITION})suffit.
Code : Sélectionner tout - Visualiser dans une fenêtre à part $POSITION
En bash, ça fonctionne
Sinon, on peut faire :
Code : Sélectionner tout - Visualiser dans une fenêtre à part cut -c-400 ${FILE} | sed "s/$/$CHAINE/"
Merci pour ta réponse, je précise que j'utilise du ksh.
Concernant la commande cut que tu évoques, elle ne permet pas de conserver la partie de la ligne qui était placée après le 400ème caractère. Hors il faut que je garde cette partie.
Bien sûr, à adapter si plusieurs lignes dans le fichier.
Code : Sélectionner tout - Visualiser dans une fenêtre à part resul=`cut -c-400 ${FILE} | sed "s/$/$CHAINE/"` `cut -c401- ${FILE}`
Partager