Rechercher : dans
Par :

Awk: sélectionner les champs 2 à X

Dernière réponse le 19 nov 2007 à 10:16:36 tlep, le 6 nov 2007 à 17:40:39 
 Signaler ce message aux modérateurs

Bonjour,

J'utilise (très) basiquement awk pour sélectionner des champs dans un texte séparés par des espaces ou tabulations :

Ligne="0 1 * * * /usr/sbin/ntpdate-debian 1>/dev/null";
echo "$Ligne" |awk '{print $6}'

Me renvoie /usr/sbin/ntpdate-debian

Mais je veux en fait récupérer TOUTES les infos depuis $6 jusqu'à la fin de la ligne, sachant que j'ignore à quelle position correspond la fin.
Dans certains cas j'aurai
Ligne="0 1 * * * /usr/sbin/ntpdate-debian 1>/dev/null";
Je voudrais donc récupérer dans ce cas avec awk "/usr/sbin/ntpdate-debian 1>/dev/null"

Dans un autre cas par exemple j'ai
Ligne="0 1 * * * /usr/bin/php -f /home/truc/toto.php";
et dans ce cas je veux récupérer avec awk "/usr/bin/php -f /home/truc/toto.php"

Merci pour vos réponse :-)

Configuration: Windows XP
Firefox 2.0.0.9

Meilleures réponses pour « awk: sélectionner les champs 2 à X » dans :
VirtualBox - Installer VirtualBox sous Ubuntu VoirVirtualBox est déjà présent dans les dépôts officiels d'Ubuntu, mais c'est seulement la version 2.x, et sans le support USB. Il est facile d'installer la version 3.x: wget -q http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc -O- |...
Bus PC Card (PCMCIA) VoirPrésentation du bus PC Card Le bus PC Card a été mis au point en 1989 par le consortium PCMCIA (Personal Computer Memory Card International Association, d'où le nom donné parfois au bus) afin d'étendre les capacités d'accueil de périphériques des...

1

jipicy, le 6 nov 2007 à 18:13:05
  • +4

Salut,

[tmpfs]$ echo -e "$Ligne"

0 1 * * * /usr/bin/php -f /home/truc/toto.php
0 1 * * * /usr/bin/php -f /home/truc/toto.php truc mouche

[tmpfs]$ echo -e "$Ligne" | awk '{ for(i=6 ; i <= NF ; i++) { printf "%s ",$i } printf "\n"}'

/usr/bin/php -f /home/truc/toto.php
/usr/bin/php -f /home/truc/toto.php truc mouche

[tmpfs]$
;-))

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

Répondre à jipicy

2

tlep, le 6 nov 2007 à 18:20:04

Efficace, merci !!

Répondre à tlep

3

tlep, le 19 nov 2007 à 10:04:42

Bonjour,

nouvelle question sur awk du même accabi !
Comment puis-je récupérer le DERNIER champ d'une ligne ?

merci :-)

Répondre à tlep

4

jipicy, le 19 nov 2007 à 10:15:49

Salut,

awk '{ print $NF }'
;-))

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

Répondre à jipicy

5

 tlep, le 19 nov 2007 à 10:16:36

Lol je savais que tu aurais la réponse, merci !!

Répondre à tlep