Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

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 aus einer Datei in eine andere schreiben

Frage Entwicklung Batch & Shell

Mitglied: Larz

Larz (Level 2) - Jetzt verbinden

30.03.2010, aktualisiert 08:54 Uhr, 4427 Aufrufe, 7 Kommentare

Lese Inhalt ab Zeile 4, schreibe in neue Datei

Hallo zusammen,

ich habe eine Datei "sqlvalue.txt" mit folgendem Inhalt:

Ausfhrungszeit: 0,016 Sekunden
Feld_Name
Inhalt des Feldes mit Leerzeichen

(Erste 1 Zeilen)

Aus dieser Datei möchte ich die vierte Zeile (den Inhalt) auslesen und in eine andere Datei "sqlvalue3.txt" schreiben.
Das wollte ich so machen, dass ich die ersten 3 Zeilen überspringe und ab da alle Zeilen in eine neue Datei schreibe. Dafür habe ich folgenden Befehl:
01.
for /F "delims=\ tokens=* skip=3"  %%a in ("%temp%\sqlvalue.txt") DO echo %%a>>%temp%\sqlvalueline3.txt
Jedoch passiert nichts, wenn ich skip=3 im Befehl stehen habe. Ohne skip=3 schreibt er mir eine Datei, aber anstatt dem Inhalt der sqlvalue.txt schreibt er mir den Pfad zur Datei rein...
Bin jetzt ehrlich gesagt etwas überfragt, woran das liegen könnt.
Kann mir jemand kurz "Schützenhilfe" geben?!

Vielen Dank

Lars
Mitglied: bastla
30.03.2010 um 10:12 Uhr
Hallo Larz!

Je nachdem, ob Du alles ab Zeile 4 oder nur Zeile 4 schreiben möchtest, würden sich zB folgende Varianten anbieten:

Ab Zeile 4:
for /f "usebackq skip=3 delims=" %%a in ("%temp%\sqlvalue.txt") do >>"%temp%\sqlvalueline3.txt" echo %%a
(wobei Leerzeichen verloren gehen und die Zieldatei vorweg gelöscht werden müsste) oder einfacher:
more +3 "%temp%\sqlvalue.txt">"%temp%\sqlvalueline3.txt"
Nur Zeile 4:
01.
@echo off & setlocal 
02.
set "Zeile=" 
03.
for /f "usebackq skip=3 delims=" %%a in ("%temp%\sqlvalue.txt") do if not defined Zeile set "Zeile=%%a" 
04.
>"%temp%\sqlvalueline3.txt" echo\%Zeile%
Noch ein Hinweis zu "usebackq": Dieses ist erforderlich, weil der Pfad zu "sqlvalue.txt" unter Anführungszeichen angegeben ist (was bei Verwendung von "Original"-%temp% - siehe unten - und Vermeidung von Leerzeichen im Dateinamen eigentlich nicht nötig wäre) ...

Grüße
bastla
Bitte warten ..
Mitglied: KHP
30.03.2010 um 10:22 Uhr
Hallo Lars,

ich hab's jetzt nicht getestet, meine erste Idee war die Anführungszeichen wegzulassen. Allerdings kann es da Probleme geben, wenn die %temp% ein Leerzeichen enthält.
Das würde halt den Pfad-Output erklären.

Versuch's aber mal mit: tokens=4

Hier: http://www.robvanderwoude.com/ntfortokens.php
...ist eine ganz gute Erklärung für tokens+delims

Gruß, Tobias
Bitte warten ..
Mitglied: bastla
30.03.2010 um 10:31 Uhr
@KHP
Allerdings kann es da Probleme geben, wenn die %temp% ein Leerzeichen enthält
Richtiger Einwand; soferne%temp% allerdings nicht durch einen eigenen Wert überschrieben wurde (also - zB unter XP - noch auf den Ordner "TEMP=C:\Dokumente und Einstellungen\Username\Lokale Einstellungen\Temp" verweist), wird automatisch (aus Kompatibilitätsgründen) die Kurzschreibweise "C:\DOKUME~1\USER\LOKALE~1\Temp" verwendet ...

Grüße
bastla
Bitte warten ..
Mitglied: KHP
30.03.2010 um 10:43 Uhr
Danke bastla, wußte ich nicht...
Bitte warten ..
Mitglied: bastla
30.03.2010 um 10:48 Uhr
@KHP
Gerne : -)

Übrigens: Für einen Überblick über die (meisten) der vom System zur Verfügung gestellten Variablen einfach an der Kommandozeile "set" eingeben ...

Grüße
bastla
Bitte warten ..
Mitglied: Larz
30.03.2010 um 12:09 Uhr
Hallo Bastla,

super, danke, das usebackq war der springende Punkt - jetzt klappt's!
Auch dein Beispiel zum auslesen einer definierten, einzelnen Zeile ist prima - sowas hab ich schon öfters gesucht...

Gruß
Lars
Bitte warten ..
Mitglied: Larz
30.03.2010 um 12:10 Uhr
Hallo Tobias,

danke für den Link! In einer ruhigen Minute muss ich mir den mal anschauen...

Gruß
Lars
Bitte warten ..
Ähnliche Inhalte
Sicherheits-Tools
gelöst Hash-Wert fest in Audiodatei schreiben (4)

Frage von Hamoe2 zum Thema Sicherheits-Tools ...

Microsoft Office
gelöst Excel-Werte eingeben und in neue Tabelle schreiben (9)

Frage von werner1966 zum Thema Microsoft Office ...

Neue Wissensbeiträge
Windows 10

Neues Win10 Funktionsupdate verbuggt RemoteApp

Information von thomasreischer zum Thema Windows 10 ...

Microsoft

Die neuen RSAT-Tools für Win10 1709 sind da

(1)

Information von DerWoWusste zum Thema Microsoft ...

Humor (lol)

Wohnt jemand in Belgien und kann nicht mehr ruhig ausschlafen?

(6)

Information von LordGurke zum Thema Humor (lol) ...

Heiß diskutierte Inhalte
Hosting & Housing
Mailserver Software Empfehlungen (21)

Frage von sunics zum Thema Hosting & Housing ...

Voice over IP
DeutschlandLAN IP Voice Data M Premium, Erfahrung mit Faxgeräte? (16)

Frage von liquidbase zum Thema Voice over IP ...

TK-Netze & Geräte
TK-Anlage VoIP - DECT Erweiterung (15)

Frage von Lynkon zum Thema TK-Netze & Geräte ...