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
GELÖST

Batch. Nach einer Datei auf dem ganzen PC suchen (also alle Laufwerke durchsuchen) und dann deren Pfad in eine Variable schreiben

Frage Entwicklung Batch & Shell

Mitglied: Motorcross

Motorcross (Level 1) - Jetzt verbinden

18.02.2010 um 17:40 Uhr, 7204 Aufrufe, 6 Kommentare

Hallo Administratoren

ich versuche gerade einen Batchscript zu programmieren der nach einer Datei auf dem ganzen PC suchen soll und dann deren Pfad in eine Variable schreiben soll.
Wie könte man der Batchskript aussehen?
Wir nennen die Datei mal datei.txt
Gruß Motorcross
Mitglied: Biber
18.02.2010 um 18:16 Uhr
Moin Motorcross,

Zitat von Motorcross:
Wie könte man der Batchskript aussehen?
Als ich diesen Satz gelesen hatte, dachte ich.... Hey, nachher nehm ich nicht den Fahrstuhl, sondern das Fenster.


Aber egal... vorher noch die Frage:
- die Datei "datei.txt"... du siehst es als gesichert an, dass die genau ein einziges Mal auf der ganzen Spielwiese von C: - Z: vorkommt?
- wenn ja, soll die Suche dann abgebrochen werden? (Wenn auf C: gefunden, dann braucht ja kein Skript noch auf D:, E: ...Z: weitersuchen)
- wenn nein... welche willst du denn schreiben in deine Variable? Die Erste? die Letzte?

Nur Lokale Festplatten untersuchen? Auch DVD? Auch Netzlaufwerke?

Schreib doch mal was zu deinem Plan...

Grüße
Biber
Bitte warten ..
Mitglied: Motorcross
18.02.2010 um 18:22 Uhr
Hallo Biber,
also wenn die Datei auf C: gefunden wird kann die suche natürlich abbrechen
es soll nur auf festpaltten bzw. Usbsticks gesucht werden
Als Vriable kannst du %pfad% benutzen.
Gruß Motorcross
Bitte warten ..
Mitglied: Biber
18.02.2010 um 18:54 Uhr
Moin Motorcross,

dann könnte das Grundgerüst so aussehen in deinem "programmierten Batchskript":

01.
@echo off & setlocal 
02.
.... 
03.
SET "dieZuSuchende=datei.txt" 
04.
IF not defined PfadGefunden FOR /F "delims=" %%i in ('dir /b /s "c:\%dieZuSuchende%" ^2^>Nul') do Set "PfadGefunden=%%~dpi" 
05.
IF not defined PfadGefunden FOR /F "delims=" %%i in ('dir /b /s "d:\%dieZuSuchende%" ^2^>Nul') do Set "PfadGefunden=%%~dpi" 
06.
IF not defined PfadGefunden FOR /F "delims=" %%i in ('dir /b /s "g:\%dieZuSuchende%" ^2^>Nul') do Set "PfadGefunden=%%~dpi" 
07.
IF not defined PfadGefunden FOR /F "delims=" %%i in ('dir /b /s "h:\%dieZuSuchende%" ^2^>Nul') do Set "PfadGefunden=%%~dpi" 
08.
 
09.
If not defined Pfadgefunden ( 
10.
   echo Datei "%dieZusuchende%" nicht gefunden. 
11.
) ELSE ( 
12.
  Echo Datei "%dieZusuchende%" im Pfad "%PfadGefunden%" gefunden. 
13.
14.
...
[Ungetestet]
Du kannst natürlich auch alle (gewünschten) Laufwerke auch über eine äußere FOR-Anweisung abarbeiten.

Grüße
Biber
[Edit Tipp- bzw. Copy&Paste-Fehler, siehe unten/]
Bitte warten ..
Mitglied: Motorcross
18.02.2010 um 19:21 Uhr
Funktioniert leider nicht könntest du es testen?
Bitte warten ..
Mitglied: bastla
18.02.2010 um 19:33 Uhr
Hallo Motorcross!

Ändere jeweils "%%dpi" auf "%%~dpi" ...

Grüße
bastla
Bitte warten ..
Mitglied: Biber
18.02.2010 um 19:35 Uhr
Upps,

sorry, da fehlt noch eine Tilde bei der Auflösung der abgeleiteten FOR-Laufvariablen.
Es muss "...SET "PfadGefunden=%%~dpi" heißen statt "...=%%dpi".

Ich korrigiere es oben.

Grüße
Biber
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Netzwerkmanagement
gelöst Batch Datei auf anderem PC öffnen (35)

Frage von Flodsche zum Thema Netzwerkmanagement ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (34)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...