Jump to content

Archivflag setzen bei versteckten Dateien


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Recommended Posts

Posted

Hallo zusammen!

 

Hab mir ein Script erstellt, dass alle Dateien in einem bestimmten Pfad mit einem Archivflag setzen soll.

 

attrib +A c:\Ordnername\* /S

 

Nun folgendes Problem.

Das Archivflag wir bei allen Dateien, außer versteckten Dateien, zurückgesetzt.

Bei versteckten Dateien bekomm ich folgende Fehlermeldung.

 

"Versteckte Datei wird nicht zurückgesetzt ..."

 

Auf den manuellen Weg über die Dateieigenschaften, lässt sich das Archivflag aber setzen!

 

Kennt von euch jemand dieses Problem?

 

Danke für eure Hilfe!

 

ThaPate

Posted

Hallo,

 

das geht mit Attrib so nicht. Das Attribut für versteckte Dateien muss erst entfernt werden.

 

Folgendes Script übernimmt einen Verzeichnisnamen als Parameter (script.cmd ordnername). Fehlt dieser, wird das aktuelle Verzeichnis benutzt.

Für alle versteckten Dateien wird erst das Attribut 'versteckt' entfernt, das Archiv-Attribut gesetzt und dann werden sie wieder versteckt.

@echo off
for /F "eol=; tokens=1* delims= " %%i in ('dir %1 /s  /ah /b') do (attrib -h %%i
attrib +a %%i
attrib +h %%i)

 

In Kombination mit Deiner Zeile Code kannst Du so alle Dateien bearbeiten.

 

Grüße,

 

Sigma

  • 2 weeks later...
Posted

Sorry das ich mich so spät melde....

 

Vielen Dank für die Hilfe!

Musste am Script noch kleine Änderungen vornehmen, hat dann aber super geklappt!

 

Vielen DANK

 

Grüße

ThaPate

Posted

Ja, vielen Dank auch von mir, Sigma:thumb1:

 

Musste am Script noch kleine Änderungen vornehmen

Welcher Änderungen waren das denn? Poste doch einfach mal Deinen Code zurück. Man lernt ja schließlich nie aus ;)

  • 13 years later...
Posted (edited)
On 11/2/2010 at 5:19 PM, iDiddi said:

Ja, vielen Dank auch von mir, Sigma:thumb1:

Welcher Änderungen waren das denn? Poste doch einfach mal Deinen Code zurück. Man lernt ja schließlich nie aus ;)

Obiger Code funzt nicht bei Dateinamen mit Leerzeichen. Überhaupt ist die Tokentrennung überflüssig

So geht's:
for /F "usebackq delims=" %%i in (`dir %1 /s /ah /b`) do ( ...

 

Edited by KaptainKrampus
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!
Guest
This topic is now closed to further replies.
×
×
  • Create New...