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, 7269 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

Sticky Notes - Autostart unterbinden

Tipp von Pedant zum Thema Windows 10 ...

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

Frage von Flodsche zum Thema Netzwerkmanagement ...

Batch & Shell
gelöst Verlinkung erstellen Batch Datei mit for Schleife (2)

Frage von rusdav zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch Datei Kopieren (17)

Frage von Frager zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Batch & Shell
gelöst Base64 Decode (Batch,VBS) (26)

Frage von clragon zum Thema Batch & Shell ...

Flatrates
DeutschlandLAN der Telekom - welche internen IPs? (19)

Frage von qualidat zum Thema Flatrates ...

Linux
gelöst Schmaler Scrollbalken in Python-Anwendung (14)

Frage von indi955 zum Thema Linux ...