CMD - Datei bearbeiten
Andy123
- sonstiges
0 Vinzenz Mai0 Andy123
0 Andy123
Hallo,
ist es möglich eine CMD zu schreiben, welche einen Eintrag in eine Datei an eine bestimmte stelle macht?
Gruß,
Andy
Hallo Andy,
ist es möglich eine CMD zu schreiben, welche einen Eintrag in eine Datei an eine bestimmte stelle macht?
was verstehst Du unter "an eine bestimmte Stelle"?
Könntest Du das mit einem Beispiel klarer herausstellen?
Prinzipiell könnte es gehen - allerdings würde ich Dir den Windows Scripting
Host für diese Aufgabe empfehlen. Mit JScript, VB-Script oder Python ist diese
Aufgabe sicher viel einfacher zu erledigen.
Freundliche Grüße
Vinzenz
Hi,
ich will mir eine Batch-Datei schreiben, die die Datei C:\Windows\System32\drivers\etc\hosts öffnet und mir am Ende der Datei folgendes hineinschreibt:
192.168.1.1 router
das wars
Gruß
Hallo
ich will mir eine Batch-Datei schreiben, die die Datei C:\Windows\System32\drivers\etc\hosts öffnet und mir am Ende der Datei folgendes hineinschreibt:
192.168.1.1 router
das geht problemlos mit CMD
--- Version 1 ----------
@ECHO OFF
REM Haenge die IP-Adresse und den Namen eines Rechners an die Liste
REM der Eintraege in etc\hosts
REM mit der Umleitung >> hängt man an eine bestehende Datei an
REM Existiert die Datei noch nicht, dann wird sie angelegt.
ECHO 192.168.1.1 router >> C:\Windows\System32\drivers\etc\hosts
Besser verwendest Du vorhandene Umgebungsvariablen :-)
--- Version 2 ----------
@ECHO OFF
REM Haenge die IP-Adresse und den Namen eines Rechners an die Liste
REM der Eintraege in etc\hosts
REM Beachte %SYSTEMROOT% verweist auf das Windowsverzeichnis
ECHO 192.168.1.1 router >> %SYSTEMROOT%\System32\drivers\etc\hosts
Freundliche Grüße
Vinzenz
gudn tach!
ich will mir eine Batch-Datei schreiben, die die Datei C:\Windows\System32\drivers\etc\hosts öffnet und mir am Ende der Datei folgendes hineinschreibt:
192.168.1.1 router
spaeter fragest du nach, wie man diese zeile wieder loescht.
Vinzenz hat bereits gesagt, das fuer komplexere aufgaben vbscript, perl, python oder so geeignetere sprachen sind.
einzelne zeilen loeschen geht aber auch mit den alten haustools.
hilfe zu den einzelnen befehlen bekommst du meist mit "/?" als parameter:
findstr /?
mit findstr /v foo kannst du z.b. alle zeilen ausgeben, welche die zeichenfolge "foo" nicht enthalten. die ausgabe dessen kannst du in ein temp-file schreiben und anschliessend das tempfile auf hosts kopieren.
in etwa so:
findstr /v 192.168.1.1 hosts > hosts_bak
copy hosts_bak hosts
del hosts_bak
prost
seth
Hi,
nochmal zu dem Thread "CMD - Aus Datei löschen".
Also wenn es möglich ist soll das funktionieren ohne dass ich Tools installieren muss.
Ich will nur auf mein Batchfile klicken und es soll funktionieren.
Außerdem hab ich noch eine Frage.
Ich möchte eine for-Schleife in meine CMD schreiben.
In PHP würde der Quelltext so aussehen:
$ip = 192.168.1.1
$host1 = router
$host2 = routing
$host3 = gateway
for($i=1;$i==3;i++){
echo $ip.' '.$host.$i.'\n'
}
Jetzt wie funktioniert das in der CMD?
set ip=192.168.1.1
set host1=router
set host2=routing
set host3=gateway
REM und jetzt kommts... vom Rest hab ich keine Ahnung
FOR /L %%i IN (1,1,3) DO ECHO %host%%%i
REM wie verknüpfe ich die zwei Variablen???
nochmal zu dem Thread "CMD - Aus Datei löschen".
Also wenn es möglich ist soll das funktionieren ohne dass ich Tools installieren muss.
Ich will nur auf mein Batchfile klicken und es soll funktionieren.
ich hatte in https://forum.selfhtml.org/?t=164610&m=1074200 bereits was dazu geschrieben. mal ausprobiert? (findstr ist bei windows dabei)
Ich möchte eine for-Schleife in meine CMD schreiben.
In PHP würde der Quelltext so aussehen:$ip = 192.168.1.1
$host1 = router
$host2 = routing
$host3 = gatewayfor($i=1;$i==3;i++){
echo $ip.' '.$host.$i.'\n'
}
nee, da fehlt noch "eval" oder sowas. ansonsten kaem da die meldung dass $host nicht definiert ist. (aber ich weiss, was du machen moechtest.)
Jetzt wie funktioniert das in der CMD?
set ip=192.168.1.1
set host1=router
set host2=routing
set host3=gatewayREM und jetzt kommts... vom Rest hab ich keine Ahnung
FOR /L %%i IN (1,1,3) DO ECHO %host%%%i
REM wie verknüpfe ich die zwei Variablen???
wie waere es damit:
for %%i IN (router,routing,gateway) do echo %%i
prost
seth