@UNIQUE[path[,prefix]] : Erzeugt eine Datei der Länge Null mit einem eindeutigen Namen im angegebenen Verzeichnis und gibt ihren vollständigen Namen und Pfad zurück. Wenn kein Pfad angegeben wird, wird die Datei im aktuellen Verzeichnis erstellt. Der Dateiname ist FAT-kompatibel, unabhängig vom Laufwerkstyp, auf dem die Datei erstellt wird. Mit dieser Funktion können Sie eine temporäre Datei erstellen, ohne eine bestehende Datei zu überschreiben.
Der Pfad muss in Anführungszeichen stehen, wenn er Leerzeichen oder Sonderzeichen enthält.
Wenn derPfad in Anführungszeichen steht, wird auch der zurückgegebene Dateiname in Anführungszeichen gesetzt (falls erforderlich).
Wenn einPräfix angegeben ist, verwendet @UNIQUE die ersten drei Zeichen als die ersten drei Zeichen des eindeutigen Dateinamens.
Da die Datei erstellt wird , müssen Sie, wenn die Konfigurationsoption Umgeleitete Ausgabedatei schützen gesetzt ist, die Umleitung style >! verwenden, um Fehler zu vermeiden.
Schnelle, wiederholte, aufeinanderfolgende Aufrufe von @UNIQUE können gelegentlich einen nicht eindeutigen Dateinamen zurückgeben (z. B. zweimal denselben Namen), was auf einen seit langem bestehenden Zeitfehler in Windows zurückzuführen ist. Wenn dieses Problem auftritt, müssen Sie möglicherweise DELAY, DELAY /M oder BEEP (mit einer Frequenz von weniger als 20 Hz) verwenden , um eine kurze Verzögerung zwischen den Aufrufen zu erzeugen. Möglicherweise können Sie das Problem auch umgehen, indem Sie zwischen den Aufrufen eine E/A-Aktivität auf der Festplatte durchführen, da dies die physische Erstellung der Datei auf der Festplatte erzwingen kann, bevor @UNIQUE erneut aufgerufen wird.
Beispiele:
echo %@unique[d:\takecommand28]
D:\takecommand28\UNIE810.tmp
echo %@unique[d:\takecommand28,tc]
D:\takecommand28\tc725F.tmp