Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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, 3603 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 ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Batch & Shell
gelöst In Html-Datei per Batchdatei das Datum und die Uhrzeit eintragen (2)

Frage von Hakiegold zum Thema Batch & Shell ...

XML
gelöst XML Datei per Skript ändern (12)

Frage von chrisen zum Thema XML ...

Batch & Shell
gelöst In Batchdatei Variablen befüllen - mit Werten aus einer TXT-Datei (6)

Frage von donnyS73lb zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Router & Routing
gelöst Ipv4 mieten (22)

Frage von homermg zum Thema Router & Routing ...

Exchange Server
gelöst Exchange 2010 Berechtigungen wiederherstellen (20)

Frage von semperf1delis zum Thema Exchange Server ...

Windows Server
DHCP Server switchen (20)

Frage von M.Marz zum Thema Windows Server ...

Hardware
gelöst Negative Erfahrungen LAN-Karten (19)

Frage von MegaGiga zum Thema Hardware ...