noobstar0815
Goto Top

Wget missing url trotz richtiger URL Angabe

Guten morgen Admins =)
Ich versuche per wget automatisiert Java Updates etc herunterzuladen. Dazu habe ich mir eine Datei erstellt die auch funktioniert, das einzige woran ich hänge ist wget.
Um z.B. Flash Player zu aktualisieren habe ich folgenden Code:
:FlashPlayerAcitveX
if %age%==error DEL /Q "%lw%\%ordner%*.*" & wget --continue --directory-prefix="%lw%\%ordner%" --timestamping http://download.macromedia.com/get/flashplayer/current/licensing/win/install_flash_player_11_active_x.msi  
if %age% GTR 15 DEL /Q "%lw%\%ordner%*.*" & wget --continue --directory-prefix="%lw%\%ordner%" --timestamping http://download.macromedia.com/get/flashplayer/current/licensing/win/install_flash_player_11_active_x.msi  

goto loop
Sinn: Ist die Datei älter als 15 Tage oder das Alter ist "error" soll die vorhandene Datei gelöscht und neu heruntergeladen werden. Die URL an sich ist korrekt, allerdings gibt mir wget immer wieder die Meldung 'wget: missing URL'. Wisst ihr weiter?

Content-Key: 207122

Url: https://administrator.de/contentid/207122

Ausgedruckt am: 19.03.2024 um 06:03 Uhr

Mitglied: falscher-sperrstatus
falscher-sperrstatus 28.05.2013 um 11:21:22 Uhr
Goto Top
Guten Morgen,

ich habe die entsprechenden wget Parts gerade durchgeprüft, bei mir funktioniert alles wunderbar @debian. Scheint also am vorhergehenden oder an der Umgebung zu liegen?

Allerdings hätte ich Interesse an dem kompletten Flashplayer UpdateSkript, wenn du Lust und Zeit hast darfst du daraus gerne einen Wissensbeitrag machen.

Grüße
Mitglied: Noobstar0815
Noobstar0815 28.05.2013 um 11:28:20 Uhr
Goto Top
Ich poste hier einfach mal den gesamten Code, aber dieser Code ist nur dafür da, um die Aktualität der Daten sicher zu stellen, nicht zum installieren, dazu hatte ich mal einen Wissensbeitrag gemacht =)
Mein PC hier arbeitet unter XP, unser Server unter Windows 2003
cls
@echo on
rem lw vorab auf default K: setzen
set lw=K:
echo Der aktuell ausgewaehlte Laufwerksbuchstabe ist "%lw%". Falls Sie ihn aendern     moechten geben Sie bitte einen neuen Laufwerksbuchstaben an.  
set /p lw="Bitte freien Laufwerksbuchstaben angeben (G:...[K:]...Z:) "  
net use %lw% \\WWW-HGR\BDR\BDR-Benutzer\Ausbildung\automatischeUpdateswoechentlich
set /A counter=0

for /f "tokens=1-5 delims=. " %%i in ("%date%") do set "dayc=%%j" & set "monthc=%%k" & set "yearc=%%l"  

:loop

set /A counter=%counter%+1

if %counter%==1 set ordner=Adobe Flash Player Active X\& set ProgName=Adobe Flash Player Active X
if %counter%==2 set ordner=Adobe Flash Player Plug-In\& set ProgName=Adobe Flash Player Plug-In
if %counter%==3 set ordner=Adobe Reader\& set ProgName=Adobe Reader
if %counter%==4 set ordner=Adobe Shockwave\& set ProgName=Adobe Shockwave
if %counter%==5 set ordner=Firefox\& set ProgName=Firefox
if %counter%==6 set ordner=Java\& set ProgName=Java
if %counter%==7 set ordner=Microsoft Defender\& set ProgName=Microsoft Defender
if %counter%==8 goto END

for /f "delims=" %%i in ('dir /a-d /tc "G:\%ordner%" ^| findstr /b [0-9]') do (  
	for /f "tokens=1-6*delims=.: " %%a in ("%%i") do (  
		set "dayf=%%a"  
		set "monthf=%%b"  
		set "yearf=%%c"  
	)
)

if %dayf%==08 set "Svar=08" & set /a dayf=1%Svar%-100  
if %dayf%==09 set "Svar=09" & set /a dayf=1%Svar%-100  
if %monthf%==08 set /a set "Svar=09" & set /a monthf=1%Svar%-100  
if %monthf%==09 set /a set "Svar=09" & set /a monthf=1%Svar%-100  
if %dayc%==08 set "Svar=08" & set /a dayc=1%Svar%-100  
if %dayc%==09 set "Svar=09" & set /a dayc=1%Svar%-100  
if %monthc%==08 set /a set "Svar=09" & set /a monthc=1%Svar%-100  
if %monthc%==09 set /a set "Svar=09" & set /a monthc=1%Svar%-100  

set /a yearf=%yearf%
set /a yearc=%yearc%

set dDiv1=0
set dDiv2=0
set mDiv1=0
set mDiv2=0
set yDiv1=0
set yDiv2=0

if %dayf% GTR %dayc% (
	set /a dDiv1=%dayf%-%dayc%
	) else (
	set /a dDiv2=%dayc%-%dayf%
	)

if NOT %dDiv1%==0 set /a dDiv=%dDiv1%
if NOT %dDiv2%==0 set /a dDiv=%dDiv2%

if %monthf% GTR %monthc% (
	set /a mDiv1=%monthf%-%monthc%
	) else (
	set /a mDiv2=%monthc%-%monthf%
	)

if %yearf% LSS %yearc% set /a %yDiv1%=%yearf%-%yearc%

if %mDiv1%==0 (
	set /a mDivd=0
	) else (
	set /a mDivd=%mDiv1%*30
	)

if %mDiv2%==0 (
	set /a mDivd=0
	) else (
	set /a mDivd=%mDiv2%*30
	)

if %yDiv1%==0 (
	set /a yDivd=0
	) else (
	set /a yDivd=%yDiv1%*365
	)

if %yDiv2%==0 (
	set /a yDivd=0
	) else (
	set /a yDivd=%yDiv2%*365
	)

if /i %yearf% LSS %yearc% (
	if /i %monthf% LSS %monthc% (
		if /i %dayf% LSS %dayc% (
			set /a age=365+%mDivd%+%dDiv%
			) else (
			set /a age=365+%dDiv%-%mDivd%
			)
		) else (
	set /a age=365-(%dDiv%+%mDivd%)
	)
	) else (
		if /i %monthf% LSS %monthc% (
			if /i %dayf% LSS %dayc% (
				set /a age=%mDivd%+%dDiv%
				) else (
				set /a age=%mDivd%-%dDiv%
			)
			) else (
			set /a age=%mDivd%+%dDiv%
			)
		)
		
echo Das Programm %ProgName% ist vom %dayf%.%monthf%.%yearf% und ist somit %age% Tage alt.

if "%age%"=="" set age=error  

if %counter%==1 goto FlashPlayerAcitveX
if %counter%==2 goto FlashPlayerPlug-In
if %counter%==3 goto AdobeReader
if %counter%==4 goto Shockwave
if %counter%==5 goto Firefox
if %counter%==6 goto Java
if %counter%==7 goto MSDefender



goto LOOP

:FlashPlayerAcitveX
if %age%==error DEL /Q "%lw%\%ordner%*.*" & wget --continue --directory-prefix="%lw%\%ordner%" --timestamping http://download.macromedia.com/get/flashplayer/current/licensing/win/install_flash_player_11_active_x.msi  
if %age% GTR 15 DEL /Q "%lw%\%ordner%*.*" & wget --continue --directory-prefix="%lw%\%ordner%" --timestamping http://download.macromedia.com/get/flashplayer/current/licensing/win/install_flash_player_11_active_x.msi  

goto loop

:FlashPlayerPlug-In
if %age%==error DEL /Q "%lw%\%ordner%*.*" & wget --continue --directory-prefix="%lw%\%ordner%" --timestamping http://download.macromedia.com/get/flashplayer/current/licensing/win/install_flash_player_11_plugin.msi  
if %age% GTR 15 DEL /Q "%lw%\%ordner%*.*" & wget --continue --directory-prefix="%lw%\%ordner%" --timestamping http://download.macromedia.com/get/flashplayer/current/licensing/win/install_flash_player_11_plugin.msi  

goto loop

:AdobeReader
if %age%==error DEL /Q "%lw%\%ordner%*.*" & wget --continue --directory-prefix="%lw%\%ordner%" --timestamping ftp://ftp.adobe.com/pub/adobe/reader/win/11.x/11.0.03/de_DE/AdbeRdr11003_de_DE.exe  
if %age% GTR 15 DEL /Q "%lw%\%ordner%*.*" & wget --continue --directory-prefix="%lw%\%ordner%" --timestamping ftp://ftp.adobe.com/pub/adobe/reader/win/11.x/11.0.03/de_DE/AdbeRdr11003_de_DE.exe  

goto loop

:Shockwave
if %age%==error DEL /Q "%lw%\%ordner%*.*" & wget --continue --directory-prefix="%lw%\%ordner%" --timestamping http://www.adobe.com/go/sw_msi_installer  
if %age% GTR 15 DEL /Q "%lw%\%ordner%*.*" & wget --continue --directory-prefix="%lw%\%ordner%" --timestamping http://www.adobe.com/go/sw_msi_installer  

goto loop

:Firefox
if %age%==error DEL /Q "%lw%\%ordner%*.*" & wget --continue --directory-prefix="%lw%\%ordner%" --timestamping http://hicap.frontmotion.com/Firefox/Firefox-21.0/Firefox-21.0-de.msi  
if %age% GTR 15 DEL /Q "%lw%\%ordner%*.*" & wget --continue --directory-prefix="%lw%\%ordner%" --timestamping http://hicap.frontmotion.com/Firefox/Firefox-21.0/Firefox-21.0-de.msi  

goto loop
	
:Java
if %age%==error DEL /Q "%lw%\%ordner%*.*" & wget --continue --directory-prefix="%lw%\%ordner%" --timestamping http://javadl.sun.com/webapps/download/AutoDL?BundleId=76860  
if %age% GTR 15 DEL /Q "%lw%\%ordner%*.*" & wget --continue --directory-prefix="%lw%\%ordner%" --timestamping http://javadl.sun.com/webapps/download/AutoDL?BundleId=76860  

goto loop

:MSDefender
if %age%==error DEL /Q "%lw%\%ordner%*.*" & wget --continue --directory-prefix="%lw%\%ordner%" --timestamping http://download.microsoft.com/download/b/2/3/b2353327-ad30-4800-a256-51d6ec99baec/windowsdefender.msi  
if %age% GTR 15 DEL /Q "%lw%\%ordner%*.*" & wget --continue --directory-prefix="%lw%\%ordner%" --timestamping http://download.microsoft.com/download/b/2/3/b2353327-ad30-4800-a256-51d6ec99baec/windowsdefender.msi  

goto loop


:END
net use %lw% /d
pause
Ich denke zwar, dass man es auch einfacher prüfen könnte, aber was solls... :D
Mitglied: Noobstar0815
Noobstar0815 28.05.2013 um 11:36:40 Uhr
Goto Top
Achso, und der ganze wget Kram läuft an sich bei mir, habe die ganzen wget Sachen in einer eigenen Datei oder irgend was anderes, da läuft alles ohne Probleme, auch mit Zielangabe etc, nur hier in dieser Datei will es einfach nicht. Habe es auch schon versucht per "call" eine andere Datei mit getestetem Code aufzurufen, selbe Fehler.
Mitglied: falscher-sperrstatus
falscher-sperrstatus 28.05.2013 um 11:39:52 Uhr
Goto Top
OK, unter Windows würde ich auch eher ein entsprechendes Powershell cmdlet nutzen. Funktioniert der Aufruf denn nativ ohne Skript?
Mitglied: Noobstar0815
Noobstar0815 28.05.2013 um 11:47:18 Uhr
Goto Top
Wie meinst du das mit "nativ"?
Mitglied: Noobstar0815
Noobstar0815 28.05.2013 um 12:07:36 Uhr
Goto Top
Problem solved. Die Variable %ordner% hatte ein \ am Ende, was ich für eine andere Codezeile dort eingefügt hatte. Leider mag wget dieses \ nicht, so dass ich es dort entfernen und in der anderen Zeile eintragen musste.