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

Über eine Batch datei etwas in die 4. Zeile einer Textdatei schreiben

Frage Entwicklung Batch & Shell

Mitglied: Bjoern909

Bjoern909 (Level 1) - Jetzt verbinden

01.02.2008, aktualisiert 02.02.2008, 7569 Aufrufe, 11 Kommentare

Hallo Batch spezialisten,

Ich bin gerade dabei eine Batch datei zu schreiben doch ich hänge an einem Problem. Wie gebe ich eine Batch datei den Befehl etwas in die 4. Zeile einer Textdatei zu schreiben?

WÜrde mich über eine schnelle Antwort freuen und sage schon mal im Vorraus danke.
Mitglied: miniversum
01.02.2008 um 11:02 Uhr
Soll den die 4. Zeile die schon in der Textdatei drinsteht dan überschreiben werden oder soll eine Zeile nach der 3. Zeile eingefügt werden?
Bitte warten ..
Mitglied: Bjoern909
01.02.2008 um 11:15 Uhr
Es soll eine Neue Zeile nach der 4. Zeile eingefügt werde und dort soll dann der Text rein.
Bitte warten ..
Mitglied: Bjoern909
01.02.2008 um 11:29 Uhr
und noch eine Frage: Wie kann ich eine Bestimmte zeile, also ein Wort oder auch einen Satz einer Text datei, als Variable in einer anderen batch datei einsetzen?

MfG Bjoern
Bitte warten ..
Mitglied: bastla
01.02.2008 um 15:14 Uhr
Hallo Bjoern909 und willkommen im Forum!

Mit dem folgenden Batch wird die angegebene Zeile als neue Zeile 4 eingefügt - solltest Du nach der Zeile 4 einfügen wollen (Deine diesbezüglichen Aussagen sind nicht eindeutig), musst Du nur die Zeile "set Z=1" durch "set Z=0" ersetzen:
01.
@echo off & setlocal 
02.
set "Datei=D:\DeineDatei.txt" 
03.
set EinfZeile=4 
04.
set "NeueZeile=Zeileninhalt der neuen Zeile" 
05.
 
06.
set "Bak=%Datei%.bak" 
07.
move "%Datei%" "%Bak%" 
08.
set Z=1 
09.
for /f "usebackq delims=" %%i in ("%Bak%") do set "Zeile=%%i" & call :ProcessLine 
10.
goto :eof 
11.
 
12.
:ProcessLine 
13.
if %Z% neq %EinfZeile% goto :SchreibeZeile 
14.
echo %NeueZeile%>>"%Datei%" 
15.
 
16.
:SchreibeZeile 
17.
echo %Zeile%>>"%Datei%" 
18.
set /a Z+=1
Die ursprüngliche Textdatei bleibt als Sicherungskopie (mit dem Zusatz ".bak") erhalten - falls Du das nicht willst, füge die Zeile
01.
del "%Bak%"
vor der Zeile "goto :eof" ein.
Zu Deiner anderen Frage: Wodurch wird die "bestimmte Zeile" bestimmt, und wie ist dann das gesuchte Wort zu erkennen?

Grüße
bastla
Bitte warten ..
Mitglied: Bjoern909
01.02.2008 um 16:06 Uhr
ich habe eine 1. Batch datei die eine Batchdatei 2 aufruft. in dieser 2. batch datei ist dann in der 1. Zeile ein Name. Dieser ist jedoch unbekannt. Diesen möchte ich dann in Batch 1. als variable %nb% haben. Ist das mögglich?

nochmals danke für die schnelle Antwort auf Frage 1.
Bitte warten ..
Mitglied: Bjoern909
01.02.2008 um 16:15 Uhr
funktioniert der Code für Frage 1 auch für Batch dateien? Irgendwie erstellt der dann eine bak datei. Was ist das und was soll das bringen?
Bitte warten ..
Mitglied: bastla
01.02.2008 um 16:15 Uhr
Hallo Bjoern909!

in dieser 2. batch datei ist dann in der 1. Zeile ein Name.
Du kannst die gesamte erste Zeile so einlesen:
01.
set /p ErsteZeile=<Batch2.bat
Mehr kann ich Dir, ohne dass Du diese Zeile bzw das Kriterium zum Auffinden des Namens näher beschreibst, nicht anbieten ...

Grüße
bastla
Bitte warten ..
Mitglied: bastla
01.02.2008 um 16:21 Uhr
funktioniert der Code für Frage 1 auch für Batch dateien?
Grundsätzlich für alle Textdateien, daher: ja.
Irgendwie erstellt der dann eine bak datei. Was ist das ...
... eine Sicherungskopie (Textdatei vor dem Einfügen der Zeile)
... und was soll das bringen?
Sicherheit

Ansonsten magst Du ja vielleicht oben nochmals nachlesen, wie Du diese Kopie einfach wieder los wirst ...

Grüße
bastla
Bitte warten ..
Mitglied: Bjoern909
01.02.2008 um 16:25 Uhr
okay trotzdem danke für die Hilfe

MfG Bjoern
Bitte warten ..
Mitglied: Bjoern909
02.02.2008 um 14:40 Uhr
Ach und beinahe hätt ich es vergessen:
Was muss ich machen wenn ich in die 4. Zeile etwas reinschreiben will und dort schon ein Befehl steht, den ich jedoch entfernen möchte?

Also so:

@echo off
echo hallo
echo ich bins
Echo wie gehts?
pause >NUL

nach dem ausführen der Batch datei steht da dann:

@echo off
echo Hallo
echo ich bins
Echo Testsatz
pause >NUL

Also das war jetzt nur so als Besipiel genommen. natürlich stehen da ganz andere sachen.
Geht das irgendwie?
Bitte warten ..
Mitglied: bastla
02.02.2008 um 16:58 Uhr
Hallo Bjoern909!

Um die Zeile 4 zu ersetzen:
01.
@echo off & setlocal 
02.
set "Datei=D:\DeineDatei.txt" 
03.
set EinfZeile=4 
04.
set "NeueZeile=Zeileninhalt der neuen Zeile" 
05.
 
06.
set "Bak=%Datei%.bak" 
07.
move "%Datei%" "%Bak%" 
08.
set Z=1 
09.
for /f "usebackq delims=" %%i in ("%Bak%") do set "Zeile=%%i" & call :ProcessLine 
10.
goto :eof 
11.
 
12.
:ProcessLine 
13.
if %Z% neq %EinfZeile% (echo %Zeile%>>"%Datei%") else echo %NeueZeile%>>"%Datei%" 
14.
set /a Z+=1
Nochmals zu
in dieser 2. batch datei ist dann in der 1. Zeile ein Name.
Falls Du mich missverstanden haben solltest: Es ist nicht so, dass ich Dir nicht helfen wollte, sondern dass ich es ohne zusätzliche Informationen über diese Zeile nicht kann.

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Erstellungsdatum vor jede Zeile einer Textdatei schreiben
gelöst Frage von freakonaleashBatch & Shell5 Kommentare

Hallo zusammen, ich habe einen Ordner mit ganz vielen Textdateien. Ich bräuchte eine Batch, die in jede Datei vor ...

Batch & Shell
Mittels Batch jede Zeile einer Textdatei prüfen
gelöst Frage von Peter32Batch & Shell4 Kommentare

Hallo, ich habe eine Textdatei (Projekte.txt), die etwa so aufgebaut ist Nun möchte ich gerne, dass ein Batch-Script jede ...

Batch & Shell
Bestimmte Zeile einer Textdatei mit Batch auslesen
gelöst Frage von PinkFLuffyUnicornBatch & Shell2 Kommentare

Hi, ich habe ein kleines Batch Script, welches mir den Status der Firewall ausgeben soll(ob an oder aus) der ...

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

Neue Wissensbeiträge
Windows 10

Autsch: Microsoft bündelt Windows 10 mit unsicherer Passwort-Manager-App

Tipp von kgborn vor 1 TagWindows 106 Kommentare

Unter Microsofts Windows 10 haben Endbenutzer keine Kontrolle mehr, was Microsoft an Apps auf dem Betriebssystem installiert (die Windows ...

Sicherheits-Tools

Achtung: Sicherheitslücke im FortiClient VPN-Client

Tipp von kgborn vor 2 TagenSicherheits-Tools

Ich weiß nicht, wie häufig die NextGeneration Endpoint Protection-Lösung von Fortinet in deutschen Unternehmen eingesetzt wird. An dieser Stelle ...

Internet

USA: Die FCC schaff die Netzneutralität ab

Information von Frank vor 2 TagenInternet5 Kommentare

Jetzt beschädigt US-Präsident Donald Trump auch noch das Internet. Der neu eingesetzte FCC-Chef Ajit Pai ist bekannter Gegner einer ...

DSL, VDSL

ALL-BM200VDSL2V - Neues VDSL-Modem mit Vectoring von Allnet

Information von Lochkartenstanzer vor 2 TagenDSL, VDSL2 Kommentare

Moin, Falls jemand eine Alternative zu dem draytek sucht: Gruß lks

Heiß diskutierte Inhalte
Batch & Shell
Kann man mit einer .txt Datei eine .bat Datei öffnen?
gelöst Frage von HelloWorldBatch & Shell20 Kommentare

Wie schon im Titel beschrieben würde ich gerne durch einfaches klicken auf eine Text oder Word Datei eine Batch ...

Router & Routing
OpenWRT bzw. L.E.D.E auf Buffalo WZR-HP-AG300H - update
gelöst Frage von EpigeneseRouter & Routing11 Kommentare

Guten Tag, ich habe auf einem Buffalo WZR-HP-AG300H die alternative Firmware vom L.E.D.E Projekt geflasht. Ich bin es von ...

LAN, WAN, Wireless
WLAN Reichweite erhöhen mit neuer Antenne
gelöst Frage von gdconsultLAN, WAN, Wireless9 Kommentare

Hallo, ich besitze einen TL-WN722N USB-WLAN Dongle mit einer richtigen Antenne. Ich frage mich jetzt ob man die Reichweite ...

Windows Server
Ping auf einen bestimmten Server nicht möglich
gelöst Frage von a.thierWindows Server7 Kommentare

Hallo, ich habe folgendes Problem. srv-dc1: Ping srv-nav > geht Ping srv-exchange > geht nicht srv-exchange: Ping srv-dc1 > ...