Ich schreibe eine kleine Batchdatei, um die Themen und Diagramme der Benutzer in Office zu ersetzen. Ich habe die untenstehende Batch-Datei, die gut funktioniert.
cd c:\documents and settings\%username%\application data\microsoft\templates
echo Y | rmdir charts /s
mkdir charts
echo Y | del "c:\documents and settings\%username%\application data\microsoft\templates\document themes\*.*"
net use o: \\servername\sms
copy "o:\ppt themes\charts\*.*" "c:\documents and settings\%username%\application data\microsoft\templates\charts"
copy "o:\ppt themes\Document Themes\*.*" "c:\documents and settings\%username%\application data\microsoft\templates\document themes"
c:
net use o: /delete
Jetzt möchte ich, dass das obige nur dann ausgeführt wird, wenn es noch nicht zuvor ausgeführt wurde. Wir werden dies etwa zwei Wochen lang allen Benutzern vorschieben, um Leute zu erwischen, die nicht jeden Tag im Spiel sind.
Gibt es eine Möglichkeit, den Befehl damit zu beginnen, nach einem der bereits heruntergedrückten neuen Themen / Diagramme zu suchen, und wenn es vorhanden ist, dann nicht ausführen?
Jede Hilfe zu diesem Thema wäre sehr dankbar, da ich diese Batch-Dateien noch ziemlich neu finde.
command-line
script
batch
Rossaluss
quelle
quelle
rmdir /s/q somedirectory
- keine nicht benötigten Aufforderungen; 2) du kannstcopy
direkt aus\\servername\share\path\file
, sonet use
ist nicht notwendig./q
Flagge mit derdel
Befehl auch.del
Die leeren Unterverzeichnisse werden zurückgelassen.echo Y | del C:\Path\*
Aussage, also dachte ich, der Fragesteller könnte diesen Leckerbissen nützlich finden.Antworten:
Beachten Sie den Doppelpunkt vor dem Label (in diesem Fall 'Ende') - es ist wichtig. Das eigentliche Etikettenwort "Ende" ist keine Zauberei. Jedes Wort (an beiden Stellen verwendet) würde ausreichen.
quelle
cmd.exe
Sie können verwendengoto :eof
Stattdessen braucht es kein Etikett.