nichtvorhandene Dateien Überprüfen
-
- Beiträge: 73
- Registriert: 01 Jul 2008, 13:12
- Wohnort: Mainz
nichtvorhandene Dateien Überprüfen
Hallo,
im Zuge meiner Skriptanpassung für die (De-) Installation diverser Produkte suche ich nach einer Lösung wie ich überprüfen kann ob Dateien nicht vorhanden sind !?!
Was ich vorhabe:
Ich möchte vor einer deinstallation eines Produktes überprüfen ob es auch wirklich NICHT vorhanden ist, da es ansonsten zu Fehlern kommen könnte.
Ob etwas vorhanden ist überprüfe ich mit IfFileExists, aber wie geht es andersrum ?!
Vielen Dank
im Zuge meiner Skriptanpassung für die (De-) Installation diverser Produkte suche ich nach einer Lösung wie ich überprüfen kann ob Dateien nicht vorhanden sind !?!
Was ich vorhabe:
Ich möchte vor einer deinstallation eines Produktes überprüfen ob es auch wirklich NICHT vorhanden ist, da es ansonsten zu Fehlern kommen könnte.
Ob etwas vorhanden ist überprüfe ich mit IfFileExists, aber wie geht es andersrum ?!
Vielen Dank
Re: nichtvorhandene Dateien Überprüfen
WIe wäre es schlicht mitmro-ncd hat geschrieben:Ich möchte vor einer deinstallation eines Produktes überprüfen ob es auch wirklich NICHT vorhanden ist, da es ansonsten zu Fehlern kommen könnte.
Ob etwas vorhanden ist überprüfe ich mit IfFileExists, aber wie geht es andersrum ?!
Code: Alles auswählen
if not (FileExists ("/a/b/c"))
Gruß
Dirk
-
- Beiträge: 73
- Registriert: 01 Jul 2008, 13:12
- Wohnort: Mainz
Re: nichtvorhandene Dateien Überprüfen
Danke das klappt, so einfach kann es sein!!!
und wie sieht es aus , wenn überprüft werden soll, ob mehrere dateien da sind ???
so ??
und wie sieht es aus , wenn überprüft werden soll, ob mehrere dateien da sind ???
Code: Alles auswählen
if FileExists("c:\Programme\citrix\ICA-Client\pdc40n.dll", "c:\Programme\citrix\ICA-Client\xyz.dll")
so ??
Re: nichtvorhandene Dateien Überprüfen
Ein wenig Handbuch (bzw. Reference Card http://download.uib.de/opsi3.3/doku/ops ... e-card.pdf, siehe Abschnitt 5.3) lesen hilft da ungemein!mro-ncd hat geschrieben:und wie sieht es aus , wenn überprüft werden soll, ob mehrere dateien da sind ???
Code: Alles auswählen
if FileExists("c:\Programme\citrix\ICA-Client\pdc40n.dll", "c:\Programme\citrix\ICA-Client\xyz.dll")

Code: Alles auswählen
if (FileExists("c:\Programme\citrix\ICA-Client\pdc40n.dll")) AND (FileExists("c:\Programme\citrix\ICA-Client\xyz.dll"))
Dirk
Re: nichtvorhandene Dateien Überprüfen
ich find es besser eine installierte software anhand des uninstall eintrags der registry zu deinstallieren wie z.b. bei openoffice
Code: Alles auswählen
;alte version 2.1.0 zum löschen
set $MsiCode$="{8FB1A5EA-7DA8-4D57-80FB-BD923CCCC852}"
set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\"+$MsiCode$+"] DisplayName")
if not ($DisplayName$ = "")
Message "Found "+$DisplayName$+" => uninstalling first"
set $UninstallCommand$ = "MsiExec.exe /x "+$MsiCode$+" /qb-! REBOOT=ReallySuppress"
Winbatch_uninstall
endif
Re: nichtvorhandene Dateien Überprüfen
Es ging hier doch gar nicht ums Deinstallieren, sondern um die Syntax von Bedingungen?rfrankow hat geschrieben:ich find es besser eine installierte software anhand des uninstall eintrags der registry zu deinstallieren wie z.b. bei openoffice
Gruß
Dirk
-
- Beiträge: 73
- Registriert: 01 Jul 2008, 13:12
- Wohnort: Mainz
Re: nichtvorhandene Dateien Überprüfen
Also, ich habe hier nochmal folgendes Skript erstellt:
Nun erscheint aber die Meldung:
Sektion Initial (Kommando in Zeilte 13):
not(FileExists("c:\Programme\Microsoft Office\Office10\EXCEL.exe")AND(""c:\Programme\Microsoft Office\Office10\OUTLOOK.exe"))
relation Symbol ("<",">","="...)expected
und
Sektion Initial (Kommando in Zeilte 13):
))
fehlerhafte Zeichen
Hier noch eben die LOG:
Code: Alles auswählen
if not (FileExists ("c:\Programme\Microsoft Office\Office10\EXCEL.EXE")AND("c:\Programme\Microsoft Office\Office10\OUTLOOK.EXE"))
ExitWindows /ImmediateLogout
else
WinBatch_uninstall_officexp
endif
[WinBatch_uninstall_officexp]
%SCRIPTPATH%\officexpuninstall.exe
Sektion Initial (Kommando in Zeilte 13):
not(FileExists("c:\Programme\Microsoft Office\Office10\EXCEL.exe")AND(""c:\Programme\Microsoft Office\Office10\OUTLOOK.exe"))
relation Symbol ("<",">","="...)expected
und
Sektion Initial (Kommando in Zeilte 13):
))
fehlerhafte Zeichen
Hier noch eben die LOG:
Code: Alles auswählen
LogLevel set to 2
Set $OS$ = GetOS
The value of the variable is now: "Windows_NT"
Set $MinorOS$ = GetNTVersion
The value of the variable is now: "WinXP"
If
Starting query if file exist ...
"c:\Programme\Microsoft Office\Office10\EXCEL.EXE": File Error 2 (Das System kann die angegebene Datei nicht finden)
"c:\Programme\Microsoft Office\Office10\OUTLOOK.EXE" <<< syntax error, no result!! - set to false
("c:\Programme\Microsoft Office\Office10\OUTLOOK.EXE" <<< syntax error, no result!! - set to false
FileExists ("c:\Programme\Microsoft Office\Office10\EXCEL.EXE")AND("c:\Programme\Microsoft Office\Office10\OUTLOOK.EXE" <<< syntax error,
no result!! - set to false
not (FileExists ("c:\Programme\Microsoft Office\Office10\EXCEL.EXE")AND("c:\Programme\Microsoft Office\Office10\OUTLOOK.EXE" <<< syntax
error, no result!! - set to false
Then
Else
EndIf
___________________
0 errors
0 warnings
Re: nichtvorhandene Dateien Überprüfen
Neptunium hat geschrieben:Es ging hier doch gar nicht ums Deinstallieren, sondern um die Syntax von Bedingungen?
Code: Alles auswählen
im Zuge meiner Skriptanpassung für die (De-) Installation diverser Produkte suche ich nach einer Lösung wie ich überprüfen kann ob Dateien nicht vorhanden sind !?!
-
- Beiträge: 73
- Registriert: 01 Jul 2008, 13:12
- Wohnort: Mainz
Re: nichtvorhandene Dateien Überprüfen
Neptunium hat schon recht, es geht mir um die bedingungen, wie ich etwas (de-) installiere bekomme ich schon hin, aber da die bedingungen und die skripte schnell komplex werden, habe ich da noch so meine Probleme.
Danke dir trotzdem
Danke dir trotzdem
Re: nichtvorhandene Dateien Überprüfen
Mein Beispiel war etwas zu schnell getippt. Aber man hätte das auch im Kapitel 6,7.3 vom Winst-Handbuch selber nachlesen können: Nur bei der Verwendung der Negation muß eine zusätzliche Klammer um diese Bedingung, ansonsten werden Bedingungen einfach durch AND oder OR erweitert. Allerdings muß auch jedesmal die Bedingung, auf die geprüft werden soll, explizit angegeben werden. Außerdem hast du vermutlich um AND keine Leerzeichen.mro-ncd hat geschrieben:Also, ich habe hier nochmal folgendes Skript erstellt:Code: Alles auswählen
if not (FileExists ("c:\Programme\Microsoft Office\Office10\EXCEL.EXE")AND("c:\Programme\Microsoft Office\Office10\OUTLOOK.EXE"))
Korrekt sollte also sein:
Code: Alles auswählen
if not (FileExists ("c:\Programme\Microsoft Office\Office10\EXCEL.EXE")) AND FileExists ("c:\Programme\Microsoft Office\Office10\OUTLOOK.EXE")

Gruß
Dirk