Batchdateien zum Erstellen von Verknüpfungen an mehreren Orten mithilfe der If-Bedingung

Batchdateien zum Erstellen von Verknüpfungen an mehreren Orten mithilfe der If-Bedingung

Wir haben eine Batchdatei, die Verknüpfungen auf Windows 2003-Rechnern erstellt. Der Befehl, den wir verwenden, lautet etwa:

echo copy the shortcut to the server All Users folder for windows 2003...
xcopy "%OutputDir%%LocalOutputDir%\Shortcuts\*.*" "\\%SERVERNAME%\c$\Documents and Settings\All Users\Start Menu\Programs\Startup\*.*"

Jetzt haben wir auch einige neue Windows 2008-Maschinen und deren Pfad des Verknüpfungsordners (ALLE BENUTZER) ist anders (C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup).

Meine Frage lautet also: Wie legen wir eine IF-Bedingung fest, sodass die Verknüpfung am Speicherort der Maschine von 2008 gespeichert wird, wenn die Batchdatei den Speicherort von 2003 nicht findet …

Danke!

Antwort1

IF <statement>  (
..
..
) ELSE (
...
...
)

....... oder separate IF-Anweisungen ohne ELSE, falls es einen dritten Pfad gibt

IF exist "\\%SERVERNAME%\c$\Documents and Settings\" (
...
...
)

IF exist "\\%SERVERNAME%\C:\ProgramData\Microsoft\Windows\Start Menu\" (
...
...
) 

Sie möchten möglicherweise die Umgebungsvariable "ALLE BENUTZERPROFIL" Sie erhalten automatisch Zugriff auf die folgenden Ordner:

unter XP und 2000> C:\Dokumente und Einstellungen\Alle Benutzer
unter Vista/Win7/+> C:\ProgramData

wenn Sie die Variable anstelle des fest codierten Pfads verwenden, brauchen Sie die IF-Anweisung nicht ...

xcopy "%OutputDir%%LocalOutputDir%\Shortcuts\*.*" "\\%SERVERNAME%\%ALLUSERSPROFILE%\Start Menu\Programs\Startup\*.*"

verwandte Informationen