Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Batchdatei soll eine in allen Laufwerken vorkommende Datei ändern

Frage Entwicklung Batch & Shell

Mitglied: Wollie11

Wollie11 (Level 1) - Jetzt verbinden

23.12.2008, aktualisiert 00:33 Uhr, 3627 Aufrufe, 5 Kommentare

Mein WinXP-prof-System (SP3 in aktueller Fassung) hat in einer mir nicht bekannten dunklen Stunde alle Dateien "Desktop.ini" mit unterschiedlichen Attributen versehen. Im Regelfall kann ich diese nicht über das Windows-Fenster "Dateieigenschaften" ändern, sondern nur über die Konsole per CMD-Befehl "attrib". Im Einzelfall mag die Tastatur-Hackerei ja zumutbar sein, aber nicht bei der Masse. Deshalb habe ich mir eine CMD-Datei geschrieben, mit der sich zumindest unter Eingabe des Pfadnamens per kopieren/einfügen die Änderung halbwegs elegant durchführen lässt.

Schön wäre es jedoch, wenn per CMD-Datei besagte Dateien selbständig gefunden und geändert würden. Nun bin ich aber in der Batch-Programmierung nicht so bewandert und auch im Internet habe ich nichts für mich verständliches gefunden. Daher meine Bitte, als Antwort mitzuteilen, welchen Code ich wie schreiben muss.

Auf Wunsch kann ich natürlich die gesamte Batch-Datei ins Forum stellen. Hinweis: Einen Auszug aus dieser Datei habe ich soeben gesondert eingestellt mit der Frage, wie in einer CMD-Datei die Abfrage einer Tastatureingabe zu formulieren ist (meine Programmierung funktioniert nämlich nicht).

Schon jetzt meinen herzlichen Dank aus der Stadt des Bartmannkruges.

Wollie
Mitglied: DerWoWusste
23.12.2008 um 01:33 Uhr
Ist es eine Option, die Dinger zu löschen? Sie erstellen sich von selbst wieder.
Bitte warten ..
Mitglied: Wollie11
23.12.2008 um 11:27 Uhr
Hallöchen,

nein, das ist überhaupt keine Option.

Verwaltet eine Desktop.ini doch z. B. das Hintergrund-Bild eines Explorer-Fenster (des rechten Fensters), die Schriftfarbe im rechten Explorer-Fenster (beides unter Win98 direkt einrichtbar, unter XP z. B. nur per Backgrounder), Symbole des jeweiligen Ordners (Eigenschaften/Anpassen/Anderes Symbol) und noch so einiges mehr.

Und diese Informationen dürften doch mit Deinem Vorschlag verloren gehen. Davon abgesehen wird nach meiner Kenntnis eine Desktop.ini doch nur auf den Einzelfall bezogen eingerichtet, also nicht generell.

Wollie
Bitte warten ..
Mitglied: bastla
23.12.2008 um 12:41 Uhr
Hallo Wollie11 und willkommen im Forum!

Da "attrib" ja den Schalter "/s" unterstützt, sollte das eigentlich keine so große Sache sein (im Beispiel für die komplette Partition C:
01.
attrib /s C:\desktop.ini -s -h -r 
02.
attrib /s C:\desktop.ini +s +h
Grüße
bastla
Bitte warten ..
Mitglied: Wollie11
23.12.2008 um 15:42 Uhr
Hallo bastla,

Bingo, das war's. Herzlichen Dank! Ich erinnere mich jetzt, dass ich die CMD-Hilfe zum Schalter /s nicht verstanden hatte, vermutlich weil die Lösung so unglaublich klang.

Jetzt bitte noch zum Luxus, weil grundsätzlicher Natur. Wie lässt sich eine solche Suche auf alle primären und logischen Laufwerke ausweiten, also nicht nur auf 1 Laufwerk bezogen (hier z. B. Lw C bis Lw. L).

Nochmals Danke

Wollie
Bitte warten ..
Mitglied: bastla
23.12.2008 um 16:51 Uhr
Hallo Wollie11!

Soferne kein Einwand gegen die Verwendung von etwas (integriertem) VBScript besteht, könnte der Batch so aussehen:
01.
@echo off & setlocal 
02.
set G=%temp%\GetLocalDrives.vbs 
03.
>%G% echo For Each d In CreateObject("Scripting.FileSystemObject").Drives:If d.DriveType=2 Then:L=L^&" "^&d.DriveLetter:End If:Next:WScript.Echo Mid(L,2) 
04.
for /f "delims=" %%i in ('cscript //nologo %G%') do set "DriveList=%%i" 
05.
 
06.
for %%i in (%DriveList%) do ( 
07.
    echo attrib /s %%i:\desktop.ini -s -h -r 
08.
    echo attrib /s %%i:\desktop.ini +s +h 
09.
)
Die beiden "echo" vor den "attrib"-Befehlen sind für das Testen gedacht - so werden die Befehle nur angezeigt, aber nicht ausgeführt. Wenn Du Ernst machen willst, einfach diese beiden "echo" entfernen.
Eine "halbautomatische" Version (in welcher Du die Laufwerksbuchstaben selbst vorgeben musst), würde als Ersatz der Zeilen 2 bis 4 entweder
set "DriveList=C E F"
oder
set "DriveList=%~1"
verwenden. Im zweiten Fall müsste der Batch dann mit
RepariereDesktopIniAufLaufwerken.cmd "C E F"
gestartet werden.

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Batchdatei auf einem Server ausführen mit psexec.exe (18)

Frage von imebro zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch Datei mit for Hilfe zum Ändern (6)

Frage von sysx220 zum Thema Batch & Shell ...

Batch & Shell
Batchdatei auch in den Unterverzeichnissen anwenden (7)

Frage von joejoesto zum Thema Batch & Shell ...

Batch & Shell
Wildcard im Dateinamen möglich bei Batchdatei? (3)

Frage von imebro zum Thema Batch & Shell ...

Neue Wissensbeiträge
Windows Installation

Unorthodoxer Weg, um an einen Offline-Installer für Adobe Flash zu kommen

(8)

Tipp von beidermachtvongreyscull zum Thema Windows Installation ...

Datenschutz

Gefährdeter Datenschutz: Firefox löscht lokale Datenbanken nicht

(1)

Information von BassFishFox zum Thema Datenschutz ...

Firewall

PfSense OpenVPN beschleunigen

Tipp von Dobby zum Thema Firewall ...

Utilities

CCleaner 5.33 mit Malware infiziert

(27)

Information von SeaStorm zum Thema Utilities ...

Heiß diskutierte Inhalte
Utilities
CCleaner 5.33 mit Malware infiziert (27)

Information von SeaStorm zum Thema Utilities ...

Festplatten, SSD, Raid
gelöst Problem mit DELL 815R Server und Windows Bluescreen (24)

Frage von Leo-le zum Thema Festplatten, SSD, Raid ...

Windows Systemdateien
Windows bootet nicht mehr Fehlermeldung 0xc0000098 (19)

Frage von franzgoerlich zum Thema Windows Systemdateien ...

Windows Netzwerk
Dateien mit Intelligenz per GPO ins Programmverzeichnis (14)

Frage von erwin.t zum Thema Windows Netzwerk ...