J'essaie de tout obtenir sur la ligne correspondante en excluant le match en utilisant grep.
Si j'ai
#define VERSION 0.1
La commande doit faire écho
0.1
J'ai vu cette question, mais je ne veux que des choses sur la même ligne.
J'ai lu la page de manuel, mais je ne vois rien qui corresponde à mon cas d'utilisation spécifique. Une commande différente serait-elle éventuellement meilleure que grep pour cela?
#define VERSION
?Réponses:
Un moyen simple d'y parvenir est de transmettre la sortie de grep à sed:
Vous pouvez obtenir le même résultat en utilisant seulement sed si vous utilisez le
-n
commutateur et lep
motif (c.-à-d., Print) pour l'expression régulière. Ceci remplacera et imprimera uniquement les lignes qui ont été modifiées:Voir: man sed
la source
Si votre version de grep prend en charge Perl regex, vous pouvez le faire comme suit:
Sinon, utilisez deux invocations de grep:
la source