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 Werte filtern und in neue Datei schreiben mit Batch

Mitglied: fabmeister19

fabmeister19 (Level 1) - Jetzt verbinden

29.04.2010 um 15:04 Uhr, 4141 Aufrufe, 12 Kommentare

Hallo,
ich habe folgendes Problem: Ich habe als Grundlage ein ASCII-File in dem über 1.6 Mio Punkte in folgender Form vorhanden sind:

4494350.50 5755800.50 52.85
4494450.50 5756800.50 52.85
4494650.50 5757800.50 52.85

Dabei beschreibt der erste Wert den Rechtswert, der zweite den Hochwert und der dritte die Höhe. Nun hab ich folgendes Problem: Für mein digatales Geländemodell benötige ich von den 1.6 Millionen Punkten nur einen bestimmten Wertebereich.

Umgangssprachlich würde ich es folgendermaßen ausdrücken:

WENN RECHTSWERT größer als 4494350.50 UND HOCHWERT größer als 5755800.50 dann
SCHREIBE ZEILE IN ZIELDATEI.TXT
SONST LIES NÄCHSTE ZEILE

Ich möchte also mit if-Abfragen bestimmte Zeilen aus der ASCII - Datei filtern und diese in eine neue ASCII Datei schreiben, dabei soll er immer die aktuell gefundene Zeile an die jetzige anhängen.

Über eure Antworten würde ich mich freune und bedanke mich schonmal im Voraus.
Mitglied: maretz
29.04.2010 um 15:17 Uhr
Muss das ne Dos-Batch sein oder gehen auch Scriptsprachen wie Perl? Weil dann wäre es zimlich simpel -> gucken ob die erste Zahl im Bereich liegt -> wenn ja die Zeile in nen Array schreiben. Am ende der File die Quelldatei schliessen, ne neue Datei erstellen/öffnen und den Inhalt des Arrays da reinpumpen...
Bitte warten ..
Mitglied: Snowman25
29.04.2010 um 15:23 Uhr
Darf ich fragen, mit welchem Programm du arbeitest? (ArcGIS, etc.? )
Bitte warten ..
Mitglied: LotPings
29.04.2010 um 15:34 Uhr
Hallo fabmeister19,

kein Problem mit Batch vielleicht nicht superschnell.

01.
@Echo off 
02.
Set InFile=Test.asc 
03.
Set OutFile=Out.txt 
04.
 
05.
:: UNTEN  LINKS: (4494350.50 ; 5755800.50) = MinX,MinY 
06.
:: OBEN  RECHTS: (4494930.50 ; 5756000.50) = MaxX,MaxY 
07.
 
08.
Set MinX=4494350.50 
09.
Set MaxX=4494930.50 
10.
Set MinY=5755800.50 
11.
Set MaxY=5755800.50 
12.
 
13.
For /f "delims=" %%A in (%InFile%) Do Call :Check %%A 
14.
Goto :Eof 
15.
:Check 
16.
Echo All %* 
17.
if %1 LSS %MinX% goto :eof 
18.
if %1 GTR %MaxX% goto :eof 
19.
if %2 LSS %MinY% goto :eof 
20.
if %2 GTR %MaxY% goto :eof 
21.
Echo --- %* 
22.
>> %OutFile% Echo.%*
zu Testzwecken gebe ich zusätzlich alle Zeilem aus

Gruß
LotPings

Edit: Ich habe die X,Y Min,Max etwas eindeutiger formuliert
Bitte warten ..
Mitglied: fabmeister19
29.04.2010 um 15:35 Uhr
naja womit man das realisiert ist mir eigentlich egal. aber nur zu gucken ob die erste zahl im bereich liegt würde glaub ich nicht ausreichen, weil es gibt Punkte die haben gleiche Rechtswerte, aber unterschiedliche Hochwerte, aber wenn ich meinen Wertebereich mit nem Rechteck oder so ähnlich definiert habe, dann hätte ich ja den Wertebereich.
Bitte warten ..
Mitglied: fabmeister19
29.04.2010 um 15:37 Uhr
ja mit ArcGiS auch aber irgendwie will er die datei nicht importieren. in dem speziellen Falle aber nicht. auch umbennen etc hat nicht funktioniert.
Bitte warten ..
Mitglied: fabmeister19
29.04.2010 um 15:42 Uhr
ok danke ich teste das mal. Ich hab vorhin noch was vergessen, ich müsste überprüfen ob die Werte Rechts und Hoch größer sind als irgendwas aber gleichzeitig kleiner als nen anderer Wert.

ALSO für alle mal zum Verständnis ich habe mir ein Rechteck definiert mit folgenden Koordinaten:

OBEN LINKS: (4494350.50 ; 5756000.50)
UNTEN LINKS: (4494350.50 ; 5755800.50)
OBEN RECHTS: (4494930.50 ; 5756000.50)
UNTEN RECHTS: (4494930.50 ; 5755800.50)

In dem Bereich müssten also alle Zeilen liegen die ich in meine gefilterte Datei schreiben möchte.
Bitte warten ..
Mitglied: Snowman25
29.04.2010 um 15:47 Uhr
Tausche
01.
If %1 LEQ 4494350.50 Goto :Eof  
02.
If %2 LEQ 5755800.50 Goto :Eof
gegen
01.
If %1 GEQ 4494930.50 ( 
02.
  Goto :Eof 
03.
) else ( 
04.
  if %1 LEQ 4494350.50 ( 
05.
    Goto :Eof  
06.
07.
08.
If %2 GEQ 5756000.50 ( 
09.
  Goto :Eof 
10.
) else ( 
11.
  if %2 LEQ 5755800.50 ( 
12.
    Goto :Eof  
13.
14.
)
So sollte das passen..
Bitte warten ..
Mitglied: bastla
29.04.2010 um 16:29 Uhr
... obwohl:
01.
if %1 LSS 4494350.50 goto :eof 
02.
if %2 GTR 5756000.50 goto :eof 
03.
 
04.
if %1 GTR 4494930.50 goto :eof 
05.
if %2 LSS 5755800.50 goto :eof
wäre für mich übersichtlicher ...

Grüße
bastla
Bitte warten ..
Mitglied: Snowman25
29.04.2010 um 16:31 Uhr
hmm... stimmt eigentlich. Hab mal wieder Knoten im Hirn.
Bitte warten ..
Mitglied: fabmeister19
29.04.2010 um 19:19 Uhr
danke für eure schnelle Hilfe. Ich lass das mal durchlaufen und meld mich morgen nochmal ob es geklappt hat.
Bitte warten ..
Mitglied: LotPings
29.04.2010 um 19:45 Uhr
Hallo fabmeister19,

ich habe die vorgeschlagenen Änderungen oben direkt eingebaut und (hoffe ich) eindeutiger formuliert.

Gruß
LotPings
Bitte warten ..
Mitglied: fabmeister19
30.04.2010 um 07:08 Uhr
Super, ihr seid klasse!!! Hat funktioniert!
Danke vielmals!
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Batch Eingabe in Datei schreiben
gelöst Frage von MedicalAdBatch & Shell2 Kommentare

Hallo Leute, ich habe folgendes Problem, ich möchte ein Batch Programm was nacheinander > Computername, IP Adresse, Aufstellungsort und ...

Batch & Shell

Mit Batch-Datei eine Datei lesen, Zeilen ändern und als neue Datei schreiben

gelöst Frage von GeoSemBatch & Shell20 Kommentare

Hallo Ich versuche nun schon seit einiger Zeit das "kleine" Script (unter Windows 8) zum laufen zu bringen - ...

Windows 10

Mit einer batch Datei etwas in eine andere batch Datei schreiben und ausführen

Frage von RaphaelStockWindows 105 Kommentare

Hey Administratoren!! Ich habe ein Problem: Ich möchte alle 40 sek etwas in eine batch Datei schreiben und ausführen ...

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 ...

Neue Wissensbeiträge
Windows 10
Zero-Day-Lücke in Microsoft Edge
Information von kgborn vor 1 TagWindows 10

In Microsofts Edge-Browser klafft wohl eine nicht geschlossene (0-Day) Sicherheitslücke im Just In Time Compiler (JIT Compiler) für Javascript. ...

Sicherheit
Microsoft und Skype: Sicherheit
Information von kgborn vor 1 TagSicherheit

Die Tage gab es ja einige Berichte zur Sicherheit des Skype-Updaters. Der Updater von Skype läuft unter dem Konto ...

Datenschutz

Behörden ignorieren Sicherheitsbedenken gegenüber Windows 10

Information von Penny.Cilin vor 2 TagenDatenschutz8 Kommentare

Hallo, passend zum Thema Ablösung LIMUX in München ein Beitrag bei Heise (siehe Link folgend). Behörden ignorieren Sicherheitsbedenken gegenüber ...

Sicherheit
Information Security Hub Munich airport
Information von brammer vor 2 TagenSicherheit

Hallo, Neues Center für Cyber Kriminalität am Münchener Flughafen brammer

Heiß diskutierte Inhalte
DSL, VDSL
Mindestgeschwindigkeiten DSL Telekom
Frage von justlukasDSL, VDSL13 Kommentare

Hallo zusammen, Seit diesem Jahr habe ich Verständnisprobleme mit dem Verhalten der Telekom. Wir haben seit einem Jahr VDSL ...

Switche und Hubs
LANCOM-Switch: Probleme (no link) mit SFP-Modulen?
Frage von THETOBSwitche und Hubs10 Kommentare

Hi zusammen, ich habe folgendes Problem: Und zwar habe ich an einem Standort drei Switche verbaut - LANCOM GS-2326P+, ...

Firewall
RB2011 Firewall Rule eine bestimmte Mac oder IP Adresse nicht zu blockieren
Frage von lightmanFirewall10 Kommentare

Hallo liebes Forum mit ihren Spezialisten. Ich habe meine Firewall so konfiguriert das kein Endgerät ohne meine Speziellen Erlaubnis ...

Voice over IP
Vodafone IP Anlagenanschluss - TK-Anlage einrichten
Frage von BytedreherVoice over IP8 Kommentare

Moin Zusammen, wir hatten gestern bei uns die Umstellung auf den neuen IP Anschluss bei Vodafone. Vodafone IP Anlagenanschluss ...