Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 24/06/2011, à 14:05

wolf85kunst

[ RESOLU ]Une variable dans une expression régulière

Bonjour à tous,

Je cherche à inclure une variable dans une expression régulière. Comment échapper une variable ?

Exemple :

var="texte"
grep '^[aei]$var'

De sorte à extraire un texte (variable) commençant par a,e, ou i dans l'exemple :
atexte
etexte
itexte

Je vous remercie.

Dernière modification par wolf85kunst (Le 29/06/2011, à 18:02)


Les raisonnables ont duré, les passionnés ont vécu.
-- 10.04 Lucid Lynx --

Hors ligne

#2 Le 24/06/2011, à 14:25

Levi59

Re : [ RESOLU ]Une variable dans une expression régulière

Comme ceci :

var="texte"
grep '^[aei]'$var''

Hors ligne

#3 Le 24/06/2011, à 14:41

AnsuzPeorth

Re : [ RESOLU ]Une variable dans une expression régulière

Bjr,

^[aei]${v}
"^[aei]${v}"
^[aei]"${v}"
'^[aei]'"${v}"

Toutes fonctionnent chez moi !

Dernière modification par AnsuzPeorth (Le 24/06/2011, à 14:42)


Interface graphique pour bash, python ou autre: glade2script
Support Tchat: http://chat.jabberfr.org/muckl_int/inde … ade2script  (Hors ligne)

Hors ligne

#4 Le 24/06/2011, à 15:09

aduxas

Re : [ RESOLU ]Une variable dans une expression régulière

Evidemment, il faut les guillemets s'il ny a rien d'autre pour isoler le nom de la variable.

$var'aei'
${var}aei

Hors ligne

#5 Le 29/06/2011, à 16:38

wolf85kunst

Re : [ RESOLU ]Une variable dans une expression régulière

Merci pour vos réponses.

Je me permets de vous poser une autre question sur ce même post :

je cherche à diriger la création d'une archive vers une destination précise afin de réaliser un script pour automatiser une tache.
Avec la commande :

tar -cfvz mon_archive.tar.gz $dossier_a_archiver -C $chemin_de_sauvegarde

La création de l'archive se déroule bien. Cependant elle est enregistrée dans le répertoire courant alors qu'elle devrait être enregistrer vers $chemin_de_sauvegarde. Pourriez-vous m'expliquer pourquoi ?

Merci


Les raisonnables ont duré, les passionnés ont vécu.
-- 10.04 Lucid Lynx --

Hors ligne

#6 Le 29/06/2011, à 17:00

FRUiT

Re : [ RESOLU ]Une variable dans une expression régulière

Il faut que f soit la dernière option car « mon_archive.tar.gz » est son argument associé.

D'autre part, tu dois préciser le chemin dans le nom de la destination, et non avec l'option -C.

Soit :

tar -cvzf $chemin_de_sauvegarde/mon_archive.tar.gz $dossier_a_archiver

Neon Suite by FRUiT (kde4.6) [url]http://[Merci de relire les règles]/yzm7cee[/url]
"Pour la carotte, le lapin est la plus parfaite incarnation du mal" (R. Sheckley)
clean

Hors ligne

#7 Le 29/06/2011, à 17:02

FRUiT

Re : [ RESOLU ]Une variable dans une expression régulière

Et sinon quand tu as un nouveau problème, ouvre un nouveau thread.


Neon Suite by FRUiT (kde4.6) [url]http://[Merci de relire les règles]/yzm7cee[/url]
"Pour la carotte, le lapin est la plus parfaite incarnation du mal" (R. Sheckley)
clean

Hors ligne

#8 Le 29/06/2011, à 18:01

wolf85kunst

Re : [ RESOLU ]Une variable dans une expression régulière

Merci beaucoup pour ces informations.

Bonne fin de journée.


Les raisonnables ont duré, les passionnés ont vécu.
-- 10.04 Lucid Lynx --

Hors ligne

#9 Le 29/06/2011, à 20:04

aduxas

Re : [ RESOLU ]Une variable dans une expression régulière

info tar a écrit :

[   Short options which require arguments take their arguments
immediately following the option, usually separated by white space.  It
is also possible to stick the argument right after the short option
name, using no intervening space.  For example, you might write
`-f archive.tar' or `-farchive.tar' instead of using
`--file=archive.tar'.  Both `--file=ARCHIVE-NAME' and `-f ARCHIVE-NAME'
denote the option which indicates a specific archive, here named
`archive.tar'.

info tar a écrit :

[ `-C DIR'
     When this option is specified, `tar' will change its current
     directory to DIR before performing any operations.  When this
     option is used during archive creation, it is order sensitive.

Donc ta commande va chercher $dossier_a_archiver en dessous de $chemin_de_sauvegarde, et c'est aussi à cet endroit qu'il écrira mon_archive.tar.gz.  Ce n'est probablement pas ce que tu envisageais.

Dernière modification par aduxas (Le 29/06/2011, à 20:05)

Hors ligne