Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Autor Téma: Bash: rekurzivne ziskavanie linkov z webservera na stardantny vystup  (Přečteno 1638 krát)

flashrobot

  • Aktivní člen
  • *
  • Příspěvků: 107
Zdravim,
potrebujem spravit skript, ktory na FTP a HTTP serveroch bude vyhladavat urcite typy suborov (napr. video a hudbu). Cize spustim skript s adresou ftp/http servera a ten mi vypise zelane subory.
Ako vidite v prilohe, FTP vyhladavanie som vyriesil tak, ze som si to mountol cez curlftps a tam som jednoducho findom prebehol adresar a pomocou file som zistil mime typ suboru.
Avsak ked som chcel tymto istym sposobom riesit aj HTTP, nastalo niekolko problemov: mountnut to viem iba ked na serveri bezi webdav, taktiez je treba dodatocne zadavat cestu k adresaru kde je webdav (napr /public/webdav) a najhorsie je to, ze pri spusteni FINDu to zamrzne pri vacsich .avi suboroch.
Potrebujem teda poradit, ako by som nejak rekurzivne ziskal vsetky priame linky k suborom, ktore su na webserveri, tym padom by som to nemusel ani mountovat a pouzivat webdav. Wget vie rekurzivne zistit linky, no zacne ich hned vsetky stahovat a to nemozem... Viac info komentare v skripte:)

http://pastebin.org/198379

Uvitam akekolvek napady vratane navrhov na vylepsenie uz fungujuceho FTP vyhladavaca, napr. aby nebolo potrebne pouzivat nadstardantne baliky ako curlftps.
Vsetkym vopred dakujem.

MacHala

  • Stálý člen
  • **
  • Příspěvků: 1104
  • Big Bro iz watching joo!
    • ZlejT
Re: Bash: rekurzivne ziskavanie linkov z webservera na stardantny vystup
« Odpověď #1 kdy: 04 Května 2010, 23:05:11 »
rtfm!
Citace: man wget
       ·   Chcete stáhnout všechny GIFy z adresáře na HTTP serveru.  Zkusili jste wget
           http://www.server.com/dir/*.gif, ale to nefungovalo, protože stahování z HTTP nepodporuje globbing. V
           tom případě použijte:

                   wget -r -l1 --no-parent -A.gif http://www.server.com/dir/

           Delší, ale ve výsledku stejné.  -r -l1 znamená rekurzivní stahování s maximální hloubkou 1. --no-par-
           ent znamená, že odkazy na rodičovský adresář se ignorují a -A.gif znamená, že mají být staženy pouze
           soubory GIF files.  -A "*.gif" by fungovalo stejně.

Prislusnik ligy, za kreativni pouzivani interpunkcnich znamenek, carek, predevsim.
=======================================
Tweetuju jako http://twitter.com/zl8

DuckD

  • Stálý člen
  • **
  • Příspěvků: 878
  • Open Srdcař
    • www.duckd.cz
Re: Bash: rekurzivne ziskavanie linkov z webservera na stardantny vystup
« Odpověď #2 kdy: 05 Května 2010, 08:17:55 »
rtfm!
Citace: man wget
       ·   Chcete stáhnout všechny GIFy z adresáře na HTTP serveru.  Zkusili jste wget
           http://www.server.com/dir/*.gif, ale to nefungovalo, protože stahování z HTTP nepodporuje globbing. V
           tom případě použijte:

                   wget -r -l1 --no-parent -A.gif http://www.server.com/dir/

           Delší, ale ve výsledku stejné.  -r -l1 znamená rekurzivní stahování s maximální hloubkou 1. --no-par-
           ent znamená, že odkazy na rodičovský adresář se ignorují a -A.gif znamená, že mají být staženy pouze
           soubory GIF files.  -A "*.gif" by fungovalo stejně.


rtft!

píše o stáhnutí linků na soubory, nemá zájem stáhnout konkrétní soubory...
8) Lidé žijí v souborech. ===>> LINUXTERO <<=== Pravidelná dávka tvého linuxtera!

Peterx

  • Aktivní člen
  • *
  • Příspěvků: 403
Re: Bash: rekurzivne ziskavanie linkov z webservera na stardantny vystup
« Odpověď #3 kdy: 05 Května 2010, 10:12:06 »
man wget....
Kód: [Vybrat]
wget --spider -r -l2 --no-parent -A.gif http://www.ubuntu.cz

MacHala

  • Stálý člen
  • **
  • Příspěvků: 1104
  • Big Bro iz watching joo!
    • ZlejT
Re: Bash: rekurzivne ziskavanie linkov z webservera na stardantny vystup
« Odpověď #4 kdy: 06 Května 2010, 01:32:35 »
errare humanum est.. zakladni rada (rtfm) ale byla kazdopadne spravna
Prislusnik ligy, za kreativni pouzivani interpunkcnich znamenek, carek, predevsim.
=======================================
Tweetuju jako http://twitter.com/zl8

flashrobot

  • Aktivní člen
  • *
  • Příspěvků: 107
Re: Bash: rekurzivne ziskavanie linkov z webservera na stardantny vystup
« Odpověď #5 kdy: 09 Května 2010, 23:47:59 »
Diky moc chlapi, hlavny problem bol v tom, ze som mal stary wget a ten mal v rezime spider ovela skromnejsi vystup :)

 

Provoz zaštiťuje spolek OpenAlt.