Wget en URL met spaties

Pagina: 1
Acties:

  • Peter Power
  • Registratie: Juni 2001
  • Niet online
Hoi,

Ik wil 's nachts op de server (Redhat Linux 7.1 Text Modus)wel eens wat downloaden. Vaak zit er dan in het url een spatie wat wget niet pakt.

Ik heb in het bestand down.txt de namen van ftp's en de dir's staan.

Bv.
code:
1
ftp://username:pass@hostname.nl/bla/dit is een dir/bestand.exe

Uitgaande van dit voorbeeld ziet hij 'dit' als directory en niet 'dit is een dir'. Dus hij download niet.

Ik start wget altijd met wget -i downloads.txt -b -c -o log.txt & en hou het log in de gaten met tail -f log.txt

Heeft iemand enig idee?


Mvg,

Peter

irc.tweakers.net #php - Het channel voor de echte PHP-ers!


  • jeroen|IA
  • Registratie: Juni 1999
  • Laatst online: 26-05-2025
Heeeeeel simpel :) zet ""s om je urrel.

  • Peter Power
  • Registratie: Juni 2001
  • Niet online
Op zondag 16 september 2001 03:21 schreef jeroen het volgende:
Heeeeeel simpel :) zet ""s om je urrel.
Hmmz..
code:
1
"ftp://username:pass@hostname.nl/bla/dit is een dir/bestand.exe"

nog steeds niet :(

irc.tweakers.net #php - Het channel voor de echte PHP-ers!


  • Ro_meo
  • Registratie: Juni 2001
  • Laatst online: 09:31
verander de spaties in : %20
dus : dit%20is%20een%20dir/

iOS N3rd


  • deadinspace
  • Registratie: Juni 2001
  • Nu online

deadinspace

The what goes where now?

Op zondag 16 september 2001 03:23 schreef PeTeRPoWeR het volgende:
Hmmz..
code:
1
"ftp://username:pass@hostname.nl/bla/dit is een dir/bestand.exe"

nog steeds niet :(
Huh?
wget "ftp://hostname.tld/directory to file/file" werkt hier toch altijd prima hoor.

Het probleem is overigens dat je shell de spaties zit als scheiding tussen argumenten en zo aan wget vertelt dat hij 3 argumenten heeft, namelijk "ftp://hostname.tld/directory", "to" en "file/file", en dan gaat wget die alle3 proberen te downen (wat geen van 3en lukt).

Opties zijn:
• de spaties in %20 veranderen. Dan zitten er geen spaties in, en wget verandert de %20's naar spaties, net als browsers doen.
• aanhalings tekens (" dus) om de url heenzetten. Dan ziet je shell dat dat 1 argument is, zodat hij de hele url als 1 argument aan wget doorgeeft.
• de spaties escapen, dwz er een backslash ('\') voorzetten. Mijn voorbeeld zou dan `` wget [url="ftp://hostname.tld/directory\"]ftp://hostname.tld/directory\[/url] to\ file/file '' worden.

De laatste 2 hebben iig mijn voorkeur.

  • Peter Power
  • Registratie: Juni 2001
  • Niet online
Met " erom ziet hij gewoon weer het eerste stuk als dir (dus tot de spatie).

Met \ ervoor ziet hij het eerste stuk van de directory met een \ erachter als directory naam... Werkt dus ook niet.

Met %20 werkt het maar krijg ik hetvolgende:
code:
1
2
3
4
12:58:40 (2.97 KB/s) - `.listing' saved [3521]

Removed `.listing'.
No matches on pattern `bestand.exe'.

Krijg die nou geen dir listing ofzo :?

irc.tweakers.net #php - Het channel voor de echte PHP-ers!


  • Peter Power
  • Registratie: Juni 2001
  • Niet online
Op zondag 16 september 2001 12:48 schreef PeTeRPoWeR het volgende:
Met %20 werkt het maar krijg ik hetvolgende:
code:
1
2
3
4
12:58:40 (2.97 KB/s) - `.listing' saved [3521]

Removed `.listing'.
No matches on pattern `bestand.exe'.

Krijg die nou geen dir listing ofzo :?
Ja dus. Want andere dir + bestand doet hij wel goed.

Is er nou ook nog een manier om alle bestanden in een map binnen te halen inclusief sub dir's?

irc.tweakers.net #php - Het channel voor de echte PHP-ers!


  • jeroen|IA
  • Registratie: Juni 1999
  • Laatst online: 26-05-2025
En toch blijft het vaag dat de methode "" niet werkt. Gebruik je soms de DOS versie van wget?

  • Peter Power
  • Registratie: Juni 2001
  • Niet online
Op zondag 16 september 2001 13:26 schreef jeroen het volgende:
En toch blijft het vaag dat de methode "" niet werkt. Gebruik je soms de DOS versie van wget?
Nope de linux versie... redhat 7.1 text modus

GNU Wget 1.6 op precies te zijn

irc.tweakers.net #php - Het channel voor de echte PHP-ers!


  • deadinspace
  • Registratie: Juni 2001
  • Nu online

deadinspace

The what goes where now?

Hmm, als "" en \ niet werken, ligt dat (lijkt mij) aan je shell. Je zou het eens met enkele quotes ( ' ) kunnen proberen. Maar ik vraag me af welke shell je gebruikt (hint: 'echo $SHELL').
Als het [i]niet[/b] bash is, zou je eens 'exec bash' kunnen doen, en dan nog eens `` wget "bla bla" '' proberen.

  • Peter Power
  • Registratie: Juni 2001
  • Niet online
Op zondag 16 september 2001 22:10 schreef deadinspace het volgende:
Hmm, als "" en \ niet werken, ligt dat (lijkt mij) aan je shell. Je zou het eens met enkele quotes ( ' ) kunnen proberen. Maar ik vraag me af welke shell je gebruikt (hint: 'echo $SHELL').
Als het [i]niet[/b] bash is, zou je eens 'exec bash' kunnen doen, en dan nog eens `` wget "bla bla" '' proberen.
/bin/bash

staat er...

irc.tweakers.net #php - Het channel voor de echte PHP-ers!


  • deadinspace
  • Registratie: Juni 2001
  • Nu online

deadinspace

The what goes where now?

hmmz, dan snap ik echt niet wrom hij die " (schijnbaar) negeert. Heb je het al met enkele quotes ( dus wget 'url enzo' ) geprobeerd?

  • Peter Power
  • Registratie: Juni 2001
  • Niet online
Op zondag 16 september 2001 23:06 schreef deadinspace het volgende:
hmmz, dan snap ik echt niet wrom hij die " (schijnbaar) negeert. Heb je het al met enkele quotes ( dus wget 'url enzo' ) geprobeerd?
Euh nope, maar hij werkt met %20 perfect.

Enkel toevallig een idee hoe ik ook subdir's kan laten downloaden (-R werkt niet).

irc.tweakers.net #php - Het channel voor de echte PHP-ers!


  • Ssnake
  • Registratie: Februari 2001
  • Laatst online: 16-12-2021
Enkel toevallig een idee hoe ik ook subdir's kan laten downloaden (-R werkt niet).
Dat is niet zomaar mogelijk. De server waar je de bestanden vandaan haalt moet dan "directory browsing" aan hebben staan. Is dit niet het geval, dan kan wget er nooit achterkomen welke bestanden en directories er op de gegeven locatie staan.

  • Peter Power
  • Registratie: Juni 2001
  • Niet online
Op maandag 17 september 2001 00:01 schreef Ssnake het volgende:

[..]

Dat is niet zomaar mogelijk. De server waar je de bestanden vandaan haalt moet dan "directory browsing" aan hebben staan. Is dit niet het geval, dan kan wget er nooit achterkomen welke bestanden en directories er op de gegeven locatie staan.
Hmmz ok. En als de server het aan heeft staan hoe moet het dan?

irc.tweakers.net #php - Het channel voor de echte PHP-ers!

Pagina: 1