J'ai une URL de page html et je veux la grep. Comment puis-je le faire wget someArgs | grep keyword
?
Ma première idée était wget -q -O - url | grep keyword
, mais la sortie de wget contourne grep et se pose sur le terminal dans sa forme d'origine.
Réponses:
Le moyen le plus simple consiste à utiliser
curl
l'option-s
de silence:la source
curl
inghttp://superuser.com/questions/431581
. Pour une raison quelconque, je l'ai testé avec cette URL particulière et je n'ai obtenu aucune sortie. Je ne sais pas ce qui me manque.-L
commutateur.Garder cela dans un souci d'exhaustivité.
Votre exemple devrait réellement fonctionner. La syntaxe est correcte, et voici un screencast que je viens de prendre pour le démontrer , avec un bon vieux GNU
wget
1.13.4.Supposez donc que votre modèle est incorrect et qu'il
grep
produira simplement tout ce qu'il a.la source
-q
, il n'y a pas de message d'erreur.Ce bug a été corrigé dans la v1.12.1 dans une autre version . Actuellement, j'utilise la v1.15 et cela fonctionne comme prévu.
la source
Si vous cherchez des en-têtes grep ou pipe, ils sont dirigés par défaut vers stderr, vous devez donc les rediriger. Par exemple:
la source
Le
wget
écrit sa sortie dansstderr
not tostdout
, il faut donc rediriger lestderr
versstdout
:la source