Eseguire lynx -dump in background?
-
06-09-2019 - |
Domanda
Ho un mystuff
script bash contenente una linea del tipo
lynx -dump http://example.com >tmpfile
e lo script funziona bene, compreso questa parte, tranne quando l'eseguo in modo non interattivo:
$ ./mystuff &
[1] 3712
$ jobs
[1]+ Stopped
Il processo viene interrotto. Trovo che la lince è il colpevole. Anche l'esecuzione di questo comando direttamente dal prompt bash provoca il lavoro di essere fermato immediatamente:
$ lynx -dump http://example.com >tmpfile &
[1] 1836
$ jobs
[1]+ Stopped
Perché non il Lynx eseguito in background? Come posso risolvere questo problema?
Modifica
Sto usando lince perché non voglio avere per analizzare il codice HTML grezzo. La differenza tra wget
e lynx -dump
è che lynx renderà il codice HTML; si nasconderà tutti i tag, organizzare il testo piacevolmente, ecc.
Soluzione
Lynx vuole parlare con il vostro terminale, ma non può, quindi fa un SIGSTP (ingresso TTY) e attende che l'utente in primo piano il processo.
Come detto sopra MGB: uso wget. wget -O tmpfile http://example.com
fa la stessa cosa di quello che stai facendo con lynx sopra.
Altri suggerimenti
Non è la risposta che stai lookign per, ma si potrebbe semplicemente usare wget invece ?
Sul mio sistema, il comando lince Funziona già così com'è. Provate questo e vedere cosa succede:
lynx -dump -term=xterm http://example.com >tmpfile &
Abbiamo avuto la fortuna lince esecuzione --source http_setting:. // qualunque | bash
In esecuzione come bash ha permesso al processo in background di bypassare correre con le mie credenziali personali e discrepanze TTY.