Top-Themen

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

gelöst Batch-Copy-Filter für Dateien - Inhalt durchsuchen und selektiv per Filter(unterschiedliche IP-Adressen od. Range) in versch. verzeichnisse kopiert

Mitglied: IC-D

IC-D (Level 1) - Jetzt verbinden

28.08.2007, aktualisiert 30.08.2007, 8042 Aufrufe, 5 Kommentare

Hallo zusammen,

mein erster Weg war leider zu direkt.

Ich benötige ein kleines Batch-Programm,
dass aus einem Verzeichnis die enthaltenen Dateien, die im Text eine unterschiedliche IP-Adresse
enthält, in versch. Verzeichnisse kopiert: Also einen Filter

Wenn die Datei die IP-Adresse xxx.xxx.xxx.xxx enthält,
dann soll die Datei, in Laufwerk z,y od. k kopiert werden

Ablauf:

c:\LIS-Data-Forw\ - Verzeichniss

- hier liegen ca. 100 Dateien tägl. mit o.a. Inhalt.

datei.Endung ist: *.dat(ASCII)

Ich habe z.B. 4 gemappte Laufwerke:

Der Inhalt der Dateien – alle mit der Endung *.dat- müssen durchsucht werden
Nach bestimmten IP-Adressen und dann kopiert und zugeordnet werden.

Bsp: Varianten

Haus: Variable: mögliche IP-Adresse: kopiert in verzeichniss:

KH 1-1 set kh 1-1 = 192.168.2.1 q:\
KH 1-2 SET KH 1-2 = 192.168.2.2 q:\
KH 2-1 set kh 2-1 = 112.233.2.1 m:\
KH 2-2 Set kh 2-2 = 112.233.2.2 m:\


besser altern.
Ich gebe in 4 Files(.txt) die IP-Adressen der Häuser
an und die Batch liest die Variablen aus.

Oder die IP-Adressen unterscheiden sich nur in den ersten beiden points:

H1 = 192.168.x.x
H2 = 192.161.x.x

und verwenden diese dann als Filter für die
selektive copy anweisung der dateien.


Danke!


Batch-Filter: Datei-Inhalt durchsuchen und selektiv per Filter(unterschiedliche IP-Adresse) in versch. verzeichnisse kopiert
Mitglied: TuXHunt3R
28.08.2007 um 21:10 Uhr
Wie wärs hiermit (falls ich deinen Beitrag richtig interpretiert habe):

01.
 
02.
@echo off 
03.
 
04.
find /i <Pfad Textdatei 1> "IP-Adresse" 
05.
if errorlevel 0 ( 
06.
copy /v /y <Pfad Textdatei 1> <Ziel> 
07.
goto datei2 
08.
) else ( 
09.
goto datei2 
10.
11.
 
12.
 
13.
 
14.
:datei2 
15.
find /i <Pfad Textdatei 2> "IP-Adresse" 
16.
if errorlevel 0 ( 
17.
copy /v /y <Pfad Textdatei 2> <Ziel> 
18.
goto datei3 
19.
) else ( 
20.
goto datei3 
21.
22.
 
23.
 
24.
:datei3 
25.
 
26.
find /i <Pfad Textdatei 3> "IP-Adresse" 
27.
if errorlevel 0 ( 
28.
copy /v /y <Pfad Textdatei 3> <Ziel> 
29.
goto end 
30.
) else ( 
31.
goto end 
32.
33.
 
34.
 
35.
:: usw. 
36.
:: usw. 
37.
:: usw. 
38.
:: usw. 
39.
:: usw. 
40.
 
41.
 
42.
:end 
43.
 

Ist nicht getestet, sollte aber laufen
Bitte warten ..
Mitglied: bastla
28.08.2007 um 21:46 Uhr
Hallo IC-D!

Ich nehme an Du suchst etwas in der Art:
01.
for /f "delims=" %i in ('findstr /m "192.168.2.1 192.168.2.2" c:\LIS-Data-Forw\*.dat') do @echo copy "%i" q:\
Der obige One-Liner ist zum Testen von der Kommandozeile gedacht. Zur Verwendung innerhalb einer Batchdatei ist jeweils %%i zu schreiben. Das "@echo" dient dazu, den Kopierbefehl nur anzuzeigen, aber nicht auszuführen. "findstr" erlaubt auch die Angabe mehrerer, durch Leerzeichen getrennter, Suchkriterien, sodass also beide IP-Adressen in einem Durchgang überprüft werden können.
Deinen wirklich vielfältigen Beispieldaten entnehme ich zumindest folgende Grundidee: In einer Textdatei ("Zuordnung.txt") wird die Zuordnung zwischen Suchbegriff und Ziellaufwerk in der folgenden Form hinterlegt (welchen Sinn und Zweck die "Häuser" dabei haben sollen, erschließt sich mir derzeit noch nicht):
01.
192.168.2.1=q:\ 
02.
192.168.2.2=q:\ 
03.
112.233.2.1=m:\ 
04.
112.233.2.2=m:\
Ein Batch, um nach dem Muster der oben dargestellten Zeile daraus die gewünschten selektiven Kopieroperationen abzuleiten, könnte dann so aussehen:
01.
@echo off & setlocal 
02.
set "Zu=D:\Zuordnung.txt" 
03.
set "Quelle=c:\LIS-Data-Forw\*.dat" 
04.
 
05.
for /f "usebackq tokens=1,2 delims==" %%i in ("%Zu%") do ( 
06.
    for /f "delims=" %%f in ('findstr /m "%%i" "%Quelle%"') do @echo copy "%%f" "%%j" 
07.
)
Anzumerken wäre, dass Dateien, welche mehrere der überprüften IP-Adressen enthalten, auch mehrmals kopiert werden (für jede Übereinstimmung wird ein Kopiervorgang ausgeführt).

Grüße
bastla
Bitte warten ..
Mitglied: IC-D
29.08.2007 um 00:49 Uhr
Vielen Danke !!!!

das geht gute

habe jetzt:

qcm3-lis-data-sort2.bat
@echo off & setlocal
set "Zu=C:\Zuordnung.txt"
set "Quelle=c:\test\*.dat"

for /f "usebackq tokens=1,2 delims==" %%i in ("%Zu%") do (
for /f "delims=" %%f in ('findstr /m "%%i" "%Quelle%"') do copy "%%f" "%%j"
)

@echo off


und

c:\Zuordnung.txt

172.21.179.*=c:\test2
172.21.40.*=c:\test3
172.21.50.*=c:\test4


Wie kann ich noch sagen, dass er erst alle IPs ausliest,
und die die ich nicht zuordnen kann woanderst ablegt ?

Danke nochmals allen....

LG
John
Bitte warten ..
Mitglied: bastla
29.08.2007 um 02:16 Uhr
Hallo IC-D!

Wenn es genügt, alle vorher nicht kopierten Dateien als "Rest" in den Zielordner "C:\AlleAnderen" zu kopieren, etwa so (ungetestet):
01.
@echo off & setlocal 
02.
set "Zu=C:\Zuordnung.txt" 
03.
set "Quelle=c:\test\*.dat" 
04.
set "Erledigt=C:\Erledigt.txt" 
05.
set "ZielRest=C:\AlleAnderen" 
06.
 
07.
if exist "%Erledigt%" del "%Erledigt%" 
08.
for /f "usebackq tokens=1,* delims==" %%i in ("%Zu%") do ( 
09.
    for /f "delims=" %%f in ('findstr /m /i "%%i" "%Quelle%"') do copy "%%f" "%%j">nul & echo %%f>>"%Erledigt%" 
10.
11.
for %%f in ("%Quelle%") do findstr /c:"%%f" "%Erledigt%">nul || copy "%%f" "%ZielRest%">nul
Es wird jetzt zusätzlich für die zuordenbaren Dateien ein Eintrag in der "Erledigt"-Liste vorgenommen und danach für alle Quelldateien mit "findstr" überprüft, ob sie in dieser Liste enthalten sind - wenn nicht (||), in das "AlleAnderen"-Verzeichnis kopieren ...

Grüße
bastla
Bitte warten ..
Mitglied: IC-D
30.08.2007 um 12:50 Uhr
Tausen Dank an alle !!

Habe jetzt eine Datei, die alles macht !

sortieren der dateien nach IP-Range, z.B. 17.10.10.x und diese
dann backuped und in den Ordner der Schnittstelle verschiebt !!


tausen dank nochmals !!!!!

LG

Dirk

@echo off
rem wsc 06/2005
rem QCM-DATA-FW.BAT
rem script for qcm-data forward to external systems
rem Path C:\Program Files\QCM3

rem script runs as user labor (with password labor)
rem set frequency and user permissions in: Programs -> Accessories -> System Tools -> Sheduled Tasks
rem set proper acl file permission

rem qcm location: xxxxxx
rem date of activation: 12.04.05 / 14.06.05
rem remote_server: 10.10.45.2 (labor-server)
rem remote_share: qcmanager$
rem remote_optional_folder (optional): # in most cases not needed! baden-baden
rem remote_user: labor
rem remote_password: labor

rem forward qcm results from: (standard) 01.01.1999

rem copy all results to C:\LIS-DATA-ALL\
move C:\"Program Files"\QCM3\LISCom\DataForwardingDir\*.dat C:\LIS-DATA-ALL\


rem Sort the files specified by ip-adress-filter set in file c:\Zuordnung.txt

set "Zu=C:\Zuordnung.txt"
set "Quelle=C:\LIS-DATA-ALL\*.dat"

for /f "usebackq tokens=1,2 delims==" %%i in ("%Zu%") do (
for /f "delims=" %%f in ('findstr /m "%%i" "%Quelle%"') do move "%%f" "%%j"
)


rem Check if backup-protokoll-folder exist

rem check if folders LIS-Data-Baden-Baden already exist, if not creating them
if exist C:\LIS-Data-Baden-Baden\sent\ goto NEXT
md C:\LIS-Data-Baden-Baden\sent\
md C:\LIS-Data-Baden-Baden\sent\save
:NEXT

rem check if folders LIS-Data-Forbach already exist, if not creating them
if exist c:\LIS-Data-Forbach\sent\ goto NEXT
md C:\LIS-Data-Forbach\sent\
md C:\LIS-Data-Forbach\sent\save
:NEXT

rem check if folders LIS-Data-Gernsbach already exist, if not creating them
if exist c:\LIS-Data-Gernsbach\sent\ goto NEXT
md C:\LIS-Data-Gernsbach\sent\
md C:\LIS-Data-Gernsbach\sent\save
:NEXT

rem pause

rem @echo on

rem map the ISOFT-Server-Network-Drive as q:

rem - nur in home version - net use * /del /y

rem - nur in home version net use q: \\10.10.45.2\qcmanager$ /user:labor labor /persistent:no

rem copy the lis-files to specified locations and save them

move C:\LIS-Data-Baden-Baden\*.dat C:\LIS-Data-Baden-Baden\sent\
copy C:\LIS-Data-Baden-Baden\sent\*.dat q:\baden-baden\
move C:\LIS-Data-Baden-Baden\sent\*.dat C:\LIS-Data-Baden-Baden\sent\save\

move C:\LIS-Data-Forbach\*.dat C:\LIS-Data-Forbach\sent\
copy C:\LIS-Data-Forbach\sent\*.dat Q:\Forbach\
move C:\LIS-Data-Forbach\sent\*.dat C:\LIS-Data-Forbach\sent\save\

move C:\LIS-Data-Gernsbach\*.dat C:\LIS-Data-Gernsbach\sent\
copy C:\LIS-Data-Gernsbach\sent\*.dat q:\Gernsbach\
move C:\LIS-Data-Gernsbach\sent\*.dat C:\LIS-Data-Gernsbach\sent\save\

rem cut the mapped drive q:
rem - nur in home version net use * /del /y

rem pause

exit
Bitte warten ..
Ähnliche Inhalte
Windows Netzwerk

Tatsächlich freie IP-Adresse filtern

Frage von sbsnewbieWindows Netzwerk12 Kommentare

Moin Admins, gibt es eine Möglichkeit in einem Netzwerk das komplett undokumentiert ist, herauszufinden, welche IP-Adressen tatsächlich frei sind? ...

Batch & Shell

Powershell Filtern Filtern Filtern

gelöst Frage von H41mSh1C0RBatch & Shell10 Kommentare

Aloa in die Runde, ich brech mir gerade wieder etwas die Finger ^^ am Freitag. DataTable einmal durchlaufen und ...

Windows 7

Text filtern, mit Hilfe einer Batch Datei ?

Frage von meisterluehrsWindows 713 Kommentare

Hallo, ich bräuchte mal die Hilfe von ein paar "Experten" :D, die sich mit den Batch-Dateien, bzw der CMD ...

Batch & Shell

Powershell Get-Content Inhalt filtern

gelöst Frage von derhoeppiBatch & Shell1 Kommentar

Guten Morgen, ich habe eine Textdatei nach dem Beispielhaften Muster Nun möchte ich diese Datei einlesen, aber bestimmte Zeilen ...

Neue Wissensbeiträge
Multimedia & Zubehör
AVM Fritz USB WLAN Sticks schneller einschalten
Tipp von NetzwerkDude vor 1 TagMultimedia & Zubehör

Die AVM Fritz WLAN Sticks haben in der Firmware 2 Modis: Einmal als Massenspeicher und einmal als WLAN Netzwerkkarte ...

Windows Server

Windows Server Backup schlögt Fehl -Lösung 2008-2016

Tipp von BiGnoob vor 1 TagWindows Server

Hi zusammen , ich möchte gerne einen Lösungstipp abgeben für folgenden fehler: lösung ist folgende:

Humor (lol)
Telekom vs. O2 - 3:2
Erfahrungsbericht von the-buccaneer vor 1 TagHumor (lol)4 Kommentare

Unglaublich aber wahr: Nachdem mein privater Anschluss am 19.04.18 auf VOIP und VDSL umgestellt wurde, hatte ich seitdem 1,5 ...

Batch & Shell

Windows 10 Heimnetzgruppe abgeschaft. Ein Script für einfache Netzwerk - Freigabe im Heimnetzwerk

Anleitung von treehe vor 1 TagBatch & Shell3 Kommentare

Anleitung für eine einfache Netzwerkfreigabe unter Windows 10 Wie weiter hab mal ein kleines CMD - Script gebastelt. Womit ...

Heiß diskutierte Inhalte
Windows Tools
Virtueller Drucker gesucht (Schnittstelle: USB oder Seriell)
gelöst Frage von chrisButterflyWindows Tools21 Kommentare

Hi, ich suche einen virtuellen Drucker, den ich über eine USB oder serieller Schnittstelle ansprechen kann. Dieser Drucker soll ...

Windows Server
Windows Server 2012 - Update - Beim Booten bleibt der Server beim Windows Zeichen stehen
Frage von KeilbachWindows Server17 Kommentare

Hallo Zusammen, ich grüße euch, mein Name ist Michele. Ich bin hier ganz Neu - da ich einfach nicht ...

Windows Server
WinServer2016 AD DS
Frage von MaxHannoverWindows Server5 Kommentare

Hallo zusammen, ich habe eine Domäne, in dieser befinden sich mehrere Organisationseinheiten, die Struktur der OU steht also. Nun ...

Voice over IP
Lokales Telefonbuch von Grandstream GXP-2000 herunterladen
Frage von darodeskVoice over IP5 Kommentare

Hallo zusammen, ein Kunde besitzt ein altes Grandstream GXP-2000 Voip-Telefon, was jetzt durch ein neueres Gerät ersetzt wurde. Er ...