Vorrei scaricare una pagina Web mentre fornivo URL da stdin. In sostanza, un processo produce continuamente URL per stdout/file e io li voglio filtrare su wget o curl. (Pensaci come un semplice web crawler se vuoi).wget o curl da stdin
Questo sembra funzionare bene:
tail 1.log | wget -i - -O - -q
Ma quando uso 'tail-f' e non funziona più (buffering o wget è in attesa di EOF?):
tail -f 1.log | wget -i - -O - -q
Qualcuno potrebbe fornire una soluzione usando wget, curl o qualsiasi altro strumento Unix standard? Idealmente non voglio ricominciare wget in loop, continuate a farlo scaricando gli URL mentre arrivano.
Con 'xargs'' wget' riceve l'URL come parametro in modo da non dover più '-i -'. 'tail -f 1.log | xargs -n1 wget -O - -q' – pabouk
questo avvierà un nuovo processo wget per URL –
Se questo è in esecuzione su una macchina condivisa, è possibile sapere che qualsiasi altro utente può leggere i parametri usando il comando "ps", quindi non mettere password ecc. nei tuoi URL. Utilizza una delle soluzioni che non comporta il passaggio allo standard in parametri se questo potrebbe essere un problema (gli amministratori con accesso root alla macchina potrebbero ovviamente controllare quali URL stai recuperando, ma presumibilmente ti fidi degli amministratori più di quanto ti fidi casualmente altri utenti). –