Hostname auflösen und Datei ändern

Gast #5210549
Lesenswert?

Unter DOS anpingen und die Rückgabe (IP in der 1. Zeile) auswerten.
1
C:\ping mikrocontroller.net
2

3
Pinging mikrocontroller.net [78.46.249.179] with 32 bytes of data:
4
Reply from 78.46.249.179: bytes=32 time=66ms TTL=49
5
Reply from 78.46.249.179: bytes=32 time=66ms TTL=49
6
Reply from 78.46.249.179: bytes=32 time=64ms TTL=49
7
Reply from 78.46.249.179: bytes=32 time=65ms TTL=49
8

9
Ping statistics for 78.46.249.179:
10
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
11
Approximate round trip times in milli-seconds:
12
    Minimum = 64ms, Maximum = 66ms, Average = 65ms
13

14
C:\
Gast #5228382
Lesenswert?

Jim M. schrieb:
> Rolf M. schrieb:
>> Gibt's da kein Pendant zu einem "LANG=C" aus der Unix-Welt?
>
> Ist in den meisten Windows Versionen leider fest einkompiliert.
>
> Unter neuestem Windows 10 könnte man sich IMO direkt mit dem Ping aus
> dem Linux/Ubuntu Substystem behelfen - aber das ist natürlich erst zu
> installieren.

Ach du mein lieber Schwan ! (pun intended)
Da lob ich mir eine verlässlich konforme POSIX-/GNU-Umgebung, zur Not 
aus cygwin
1
$ OTHERHOSTIP=$(host test.ddns.org ¦ grep -oP '(?<= has address )[\.\d]+')
2
$ sed -i -e 's:\[HOST\]:'"$OTHERHOSTIP"':g' /path/to/config.cfg

Standard caveats apply, YMMV.
Und ja, das geht auch als Einzeiler ohne die Hilfsvariable.
Gast #5228863
Lesenswert?

Jack schrieb:

> Windows Powershell's Resolve-DnsName mag eine Alternative sein.
> Allerdings muss man erst mal mit der Windows Powershell Quatsch warm
> werden.

Ja.

Wenn man aber erstmal damit warmgeworden ist, dann stellt man sehr 
schnell fest, dass das Zeug eine bash weit in den Schatten stellt. 
OO-Programmierung auf der Kommandozeile, ohne kaum überschaubare 
Quoting-Orgien und ohne völlig abstruse Kontrollstrukturen-Syntax.

Das ist definitiv die Zukunft. Bzw.: die Gegenwart, auch unter Linux, 
denn auch dort wird man jedes nichttriviale Problem heute bevorzugt mit 
einer OO-Scriptsprache erledigen, wie etwa Perl oder Python. Deren 
Konzepte entsprechen ziemlich genau dem der MS-PS. Welch' ein Zufall...

Nur Ewiggestrige haben den Schuss nicht gehört und hakeln weiter mühsam 
mit dem historischen Dreck rum...
Gast #5228948
Lesenswert?

S. R. schrieb:
> Manfred schrieb:
>> ping mikrocontroller.net -n 1 |find /i "Bytes=" >>c:\temp\antwort.txt
>
> Beachte, dass die Ausgaben von Windows-Befehlen immer in der Sprache des
> Windows erfolgen.

Ist mir bekannt!

Und nun rate mal, weshalb ich find nicht auf "Antwort" bzw. "reply" 
angesetzt habe, sondern auf "Bytes". Dann schauen wir noch, was "/i" 
bewirkt und freuen uns, dass sowohl "bytes" als auch "Bytes" einen 
Treffer erzielt.

Mein Vorschlag ist nicht als sauber fertige Lösung zu verstehen, ich 
habe "Ansatz:" drüber geschrieben. Egal, es sollte genügen sich eine 
Lösung zu erarbeiten.
Gast #5229785
Lesenswert?

> Wenn man aber erstmal damit warmgeworden ist, dann stellt man sehr
> schnell fest, dass das Zeug eine bash weit in den Schatten stellt.
> OO-Programmierung auf der Kommandozeile, ohne kaum überschaubare
> Quoting-Orgien und ohne völlig abstruse Kontrollstrukturen-Syntax.
>
> Das ist definitiv die Zukunft. Bzw.: die Gegenwart, auch unter Linux,
> denn auch dort wird man jedes nichttriviale Problem heute bevorzugt mit
> einer OO-Scriptsprache erledigen, wie etwa Perl oder Python. Deren
> Konzepte entsprechen ziemlich genau dem der MS-PS. Welch' ein Zufall...

Ich bin prinzipiell ganz bei deinem Gedankengang, inkl. /shell quoting 
hell/ und sogar beim Schluss dass MS v.A. Gutes zukauft oder 
abgekupfert.  >:-)

> Nur Ewiggestrige haben den Schuss nicht gehört und hakeln weiter mühsam
> mit dem historischen Dreck rum...

Und? Zeig her die Problemlösung nach Deiner Geschmacksrichtung!
Hat Dein Kunde/Chef diese bereits operativ auf dem Tisch liegen?
Oder überlegt er sich noch ob er Dich überhaupt engagieren soll?

Ich bevorzuge auch Python weil ich Perl nicht mag, zitiere hier aber L. 
Wall: "Get the job done right before you get fired."

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren