Estoy usando el wget
programa, pero quiero que no guarde el archivo html que estoy descargando. Quiero que se descarte después de que se reciba. ¿Cómo puedo hacer eso?
Estoy usando el wget
programa, pero quiero que no guarde el archivo html que estoy descargando. Quiero que se descarte después de que se reciba. ¿Cómo puedo hacer eso?
Respuestas:
Puede redirigir la salida de wget a / dev / null (o NUL en Windows):
wget http://www.example.com -O /dev/null
El archivo no se escribirá en el disco, pero se descargará.
Si no desea guardar el archivo y ha aceptado la solución de descargar la página /dev/null
, supongo que está utilizando wget para no obtener y analizar el contenido de la página .
Si su verdadera necesidad es activar alguna acción remota, verifique que la página exista y así sucesivamente, creo que sería mejor evitar descargar la página del cuerpo html.
Juegue con las wget
opciones para recuperar solo lo que realmente necesita, es decir, encabezados http, estado de la solicitud, etc.
asumiendo que necesita verificar que la página está bien (es decir, el estado devuelto es 200) puede hacer lo siguiente:
wget --no-cache --spider http://your.server.tld/your/page.html
si desea analizar los encabezados devueltos por el servidor, haga lo siguiente:
wget --no-cache -S http://your.server.tld/your/page.html
Consulte la página de manual de wget para obtener más opciones para jugar.
Ver lynx
también, como una alternativa a wget.
--no-cache
en la página de manual dice que hace que wget "envíe al servidor remoto una directiva apropiada ('Pragma: no-cache') para obtener el archivo del servicio remoto"
$ wget http://www.somewebsite.com -O foo.html --delete-after
--delete-after
opción es la opción cuando tiene que descargar de forma recursiva pero desea descartar el contenido real.
-O /dev/null
En caso de que también desee imprimir en la consola el resultado que puede hacer:
wget -qO- http://www.example.com
q
modo silencioso, (no genera progreso ni otra información) y O-
(escribe el documento recuperado en la consola).
Echa un vistazo a la opción "-spider". Lo uso para asegurarme de que mis sitios web están activos y enviarme un correo electrónico si no lo están. Esta es una entrada típica de mi crontab:
46 */2 * * * if ! wget -q --spider http://www.rochesterflyingclub.com/ >/dev/null 2>&1; then echo "Rochester Flying Club site is down" ; fi
Para un cuadro * NIX y uso wget
, sugiero omitir la escritura en un archivo. Noté en mi cuadro Ubuntu 10.04 que wget -O /dev/null
hizo que wget cancelara las descargas después de la primera descarga.
También noté que wget -O real-file
hace que wget olvide los enlaces reales en la página. Insiste en index.html
que esté presente en cada página. Es posible que dichas páginas no siempre estén presentes y wget no recordará los enlaces que ha visto anteriormente.
mkdir /dev/shm/1
cd /dev/shm/1
wget --recursive --relative --no-parent ...
Tenga en cuenta que no hay -O file
opción. wget escribirá en el directorio $ PWD. En este caso, es un sistema de archivos tmpfs solo RAM . Escribir aquí debería omitir la rotación del disco (dependiendo del espacio de intercambio) Y realizar un seguimiento de todos los enlaces. Esto debería rastrear todo el sitio web con éxito.
Después, por supuesto,
rm --recursive --force /dev/shm/1/*
Use la opción --delete-after, que elimina el archivo después de descargarlo.
Editar: Vaya, acabo de notar que ya se ha respondido.
/dev/null
Funcionaría?