Rechercher : dans
Par :

[shell unix] manipuler une chaine

Dernière réponse le 5 aoû 2005 à 13:51:51 jebok, le 5 aoû 2005 à 10:49:07 
 Signaler ce message aux modérateurs

Bonjour,

quelle commande UNIX permettrait de ne garder que les 6 premières et les 2 dernières lettres d'une chaine de caractères ?

Par exemple,
maChaine = 1234567890
et je veux obtenir :
maChaine2 = 12345690
Merci de votre aide

Configuration: AIX
ksh

Meilleures réponses pour « [shell unix] manipuler une chaine » dans :
Exécuter un script shell VoirExécution d'un script Pour pouvoir exécuter un script ou un programme en ligne de commande il y a plusieurs possibilités : 1. Le chemin absolu 2. Le chemin relatif 3. Modifier la variable PATH Note: Le Sha...
Sed - Introduction à SED - Part II VoirSED - The Stream EDitor - Part II Ce document est une introduction à la pratique et à l'utilisation de l'éditeur de flux "SED", qui essaie de couvrir certaines fonctionnalités assez méconnues, pour ne pas dire "quasi inconnues", qui font de "SED"...
Télécharger CygWin VoirCygwin est un environnement UNIX pour Windows composé: d'un shell Unix d'une librairie dynamique (DLL) chargée de fournir une couche d'émulation Unix pour le système Windows d'un ensemble de librairies, sources et exécutables adaptés à Cygwin...
Systèmes UNIX - Le shell VoirIntroduction au shell L'interpréteur de commandes est l'interface entre l'utilisateur et le système d'exploitation, d'où son nom anglais «shell», qui signifie «coquille». Le shell est ainsi chargé de faire l'intermédiaire entre le système...
Javascript - L'objet String VoirLes particularités de l'objet String string est un mot anglais qui signifie "chaîne", il s'agit en fait de chaîne de caractères. L'objet String est un objet qui contient un certain nombre de propriétés et de méthodes permettant la manipulation...
PHP - Expressions régulières VoirQu'est-ce qu'une expression régulière? Les expressions régulières sont des modèles créés à l'aide de caractères ASCII permettant de manipuler des chaînes de caractères, c'est-à-dire permettant de trouver les portions de la chaîne correspondant au...

1

Phiphi57, le 5 aoû 2005 à 11:06:56

Salut,

peut etre du coté de sed ou de awk ??
man sed
man awk

a part ca, je vois pas trop...

Phiphi

Répondre à Phiphi57

2

jebok, le 5 aoû 2005 à 11:17:11

Salut,

en fait la commande

expr "maChaine" : "\(.......\)"

me permet de sélectionner les 6 premiers caractères de la chaine.
Mais je n'arrive pas à recuperer les 2 derniers...

Quelqu'un a une idée ?
Merci

Répondre à jebok

3

jipicy, le 5 aoû 2005 à 11:25:15

Salut,

En une seule opréation je ne pense pas que ce soit possible il faudra passer par une autre commande :

expr "$maChaine" : ".*\(..\)"
Regarde aussi du côté de la commande "typeset" en kornshell :
$ typeset -L4 A=1234567890
$ echo $A
1234
$ typeset -R2 A=1234567890
$ echo $A
90

;-)) Z'@+...che.
JP : Zen, my Nuggets ! ;-)
Le savoir n'est bon que s'il est partagé. 

Répondre à jipicy

4

jipicy, le 5 aoû 2005 à 11:41:55

Et avec "cut" tout simplement, non ?

$ var=abcdefghij
$ echo $var | cut -b "1 2 3 4 5 6 9 10"
abcdefij
$
;-)) Z'@+...che.
JP : Zen, my Nuggets ! ;-)
Le savoir n'est bon que s'il est partagé. 

Répondre à jipicy

5

francis, le 5 aoû 2005 à 12:49:44

sog/log>echo toto | sed -e "s/o//g"
tt
sog/log>

Répondre à francis

6

 jebok, le 5 aoû 2005 à 13:51:51

Merci à tous pour votre aide !

Répondre à jebok
Collection CommentÇaMarche.net