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

Textdatei im unbekannten Ordner erstellen mit Namen des Ordners als Inhalt

Frage Entwicklung Batch & Shell

Mitglied: ed19dy

ed19dy (Level 1) - Jetzt verbinden

12.08.2017, aktualisiert 13:17 Uhr, 204 Aufrufe, 3 Kommentare

Hallo zusammen,

solangsam beiße ich mir die Zähne an folgender Aufgabe aus:

Auf dem Laufwerk "C" ("c:\Ordner") werden zufällig immer wieder Ordner mit verschiedenen Nummerierungen erstellt.
z.B. "C:\Ordner\72335" oder "C:\Ordner\68476" oder "C:\Ordner\68478"

Es soll nach allen Ordnern im Bereich c:\Ordner\* geprüft werden um dann in jedem der Ordner eine Textdatei zu erstellen. Z.B. "C:\Ordner\72335\info.txt" oder "C:\Ordner\68476\info.txt" oder "C:\Ordner\68478\info.txt"

Wichtig: In der Info.txt soll es einen Inhalt geben. Also der Name des Ordners.


Um zu erfahren welche Verzeichnise im Ordner liegen, habe ich bereits eine Batch Datei geschrieben. Diese Batchdatei legt eine *.ok Datei mit dem Ordnernamen in das Verzeichnis c:\Ordner.

Hier die Batch hierzu:
___________________
@echo off & setlocal

set "Quelle=c:\ordner"
set "Ziel=c:\Ordner_Ziel"

for /d /r "%Quelle%" %%i in (*) do set "Pfad=%%~fi" & call :ProcessDir "%%i"

goto :eof

:ProcessDir

call set "PfadRel=%%Pfad:%Quelle%=%%"

md "%Ziel%\%PfadRel%" 2>nul && copy nul "%Ziel%\%~nx1.ok">nul
for /D %%a in ("c:\Ordner_Ziel\*.*") do rd /q /s "%%a"
for /R "C:\Ordner_Ziel" %%f in (*) do (move %%f "C:\ordner")

goto :eof
_________________

Unter c:\ordner habe ich bereits also folgende Dateien

72335
68476
68478
72335.ok
68476.ok.
68478.ok

Ich dache das ich Anhand der Ok Dateien eine Abfrage erstellen kann die dann eine info.txt in die Verzeichnise schreibt. Ich weiß bloß noch nicht genau wie ich den Wert der Dateien in eine Variable bekomme. Die dann auch noch im Text File angezeigt wird. Wenn ich das ganze habe möchte ich Ordner für Ordner auf ein Netzlaufwerk verschieben. Klingt kompliziert
Hat jemand eine Idee wie man sowas hinbekommt?
Mitglied: Enygma
12.08.2017 um 13:51 Uhr
Hallo ed19dy.

Käme auch ein VB-Skript in Frage?
Dann wäre die Lösung wie folgt:

Const Verzeichnis = "C:\Ordner\"

Dim FSO
Dim oFolder
Dim oSubfol
Dim txtFile

Set FSO = CreateObject("Scripting.FileSystemObject")
Set oFolder = FSO.GetFolder(Verzeichnis)


For each oSubfol In oFolder.Subfolders

Set txtFile = FSO.CreateTextFile(Verzeichnis & oSubfol.Name & "\info.txt")
txtFile.WriteLine oSubfol.Name
txtFile.close

Next

Set txtFile = nothing
Set oFolder = nothing
Set FSO = nothing
Grüße
Bitte warten ..
Mitglied: Oneplus
12.08.2017, aktualisiert um 14:17 Uhr
01.
@echo off 
02.
For /d %%a in ("c:\ordner\*") do ( 
03.
    >"%%a\info.txt" (echo %%~nxa) 
04.
)
Gruß
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Sonderzeichen Fehler aus Textdatei vermeiden (16)

Frage von Peter32 zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch: alle Ordner mit einem bestimmten Namen kopieren (4)

Frage von Remsboys zum Thema Batch & Shell ...

SAN, NAS, DAS
gelöst Erstellen eines Ordners od. Freigabe auf der BOOT-Parition - NAS4free (3)

Frage von 130854 zum Thema SAN, NAS, DAS ...

Batch & Shell
Ordner mit selben Namen verschieben (13)

Frage von 918103 zum Thema Batch & Shell ...

Neue Wissensbeiträge
Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Viren und Trojaner

CNC-Fräsen von MECANUMERIC werden (ggf.) mit Viren, Trojanern, Würmern ausgeliefert

(4)

Erfahrungsbericht von anteNope zum Thema Viren und Trojaner ...

Windows 10

Windows 10: Erste Anmeldung Animation deaktivieren

(3)

Anleitung von alemanne21 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Router & Routing
gelöst Linksys wrt1200ac v2 mit dd-wrt: keine vlan-einstellungen im GUI (15)

Frage von Pixi123 zum Thema Router & Routing ...

E-Business
Wo tragt ihr eure privaten Termine ein? (13)

Frage von honeybee zum Thema E-Business ...

Batch & Shell
Batch zum suchen und verschieben von Verknüpfungen (12)

Frage von zeroblue2005 zum Thema Batch & Shell ...

Windows Server
Terminalserver starten willkürlich neu (12)

Frage von thaefliger zum Thema Windows Server ...