AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Delphi-PRAXiS - Lounge Betriebssysteme Gute Tutorials / Beispiele zu sed und awk gesucht
Thema durchsuchen
Ansicht
Themen-Optionen

Gute Tutorials / Beispiele zu sed und awk gesucht

Ein Thema von Phoenix · begonnen am 31. Dez 2010 · letzter Beitrag vom 6. Jan 2011
Antwort Antwort
Seite 3 von 3     123   
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.639 Beiträge
 
#21

AW: Gute Tutorials / Beispiele zu sed und awk gesucht

  Alt 4. Jan 2011, 09:59
Das alte sed hat aber wie gesagt zumindest bei mir nicht die gewünschte Ausgabe
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Benutzerbild von Assarbad
Assarbad

Registriert seit: 8. Okt 2010
Ort: Frankfurt am Main
1.234 Beiträge
 
#22

AW: Gute Tutorials / Beispiele zu sed und awk gesucht

  Alt 4. Jan 2011, 11:08
Aaah, gerade auf unserem Mac mini geschaut. Handelt sich also um BSD sed.

Versuch mal:

Code:
sed -E -e '/Device:/!d; s/^\(Hardware Port: *(.*), *Device: *(.*)\)$/\2:\1/'
Bei mir ergibt das:
Code:
Bluetooth-Modem:Bluetooth DUN
en3:USB-Ethernet
en0:AirPort
en2:iPhone-USB
en1:Bluetooth PAN
... welches man durch sort und dann durch ein while read jagen kann ...
Oliver
"... aber vertrauen Sie uns, die Physik stimmt." (Prof. Harald Lesch)
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.639 Beiträge
 
#23

AW: Gute Tutorials / Beispiele zu sed und awk gesucht

  Alt 4. Jan 2011, 11:58
Dann schau ich mal dass ich das nachher in der Mittagspause zusammenpfriemel. Diese Regex da versteh ich schon längen besser als die davor *g*

Hervorragend, so tut's jetzt
Code:
#!/usr/bin/env bash
echo "Network information:"
echo "===================="
LISTSERVICES="networksetup -listnetworkserviceorder"
AIRPORTI="airport -I"

# Ermitteln ob WLAN aktiv
WLANACTIVE=1
($AIRPORTI|grep -q 'AirPort: Off') && WLANACTIVE=0

# Entsprechend 'schöne' Ausgaben erzeugen
if (( WLANACTIVE )); then
        while read line; do
          case "$line" in
             agrCtlRSSI:*)
            QUALITY=${line##*: }
               ;;
             lastTxRate:*)
            SPEED=${line##*: }
               ;;
             SSID:*)
            SSID=${line##*: }
            
               ;;
         channel:*)
            CHANNEL=${line##*: }
         ;;    
             *)
               ;;
          esac
    done < <($AIRPORTI)

   if [ "$SSID" = "SSID:" ]; then
      echo "WIFI:       enabled (not connected)"
   else
      echo "WIFI:       enabled"
      echo "Network:    $SSID"
      echo "Speed:      $SPEED Mbit/s"
          echo "Quality:    $QUALITY dB"
   fi
else
   echo "WIFI:       disabled"
fi

# make some lines
echo

# Geräte ermitteln
#             ... unnötige Teile herausschneiden.

while read device; do
   #empty line / placeholder
   echo
   IFACE=${device%%:*}
   NAME=${device##*:}

   case "$IFACE" in
        en*)
             echo "Interface: $NAME"
         echo "========================"
         ifconfig $IFACE
             # TODO: hier muß erweitert werden
          ;;
      Bluetooth-Modem*)
         #echo $NAME
      ;;
        *)
          ;;
     esac
done < <($LISTSERVICES|sed -E -e '/Device:/!d; s/^\(Hardware Port: *(.*), *Device: *(.*)\)$/\2:\1/'|sort)
Die Ausgabe bisher:
Code:
smartair:Scripte Sebastian$ ./networkinfo.sh
Network information:
====================
WIFI:       enabled
Network:    SH_SECURED_1OG
Speed:      54 Mbit/s
Quality:    -61 dB



Interface: AirPort
========================
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
   ether 10:93:e9:00:ca:1a
   inet6 fe80::1293:e9ff:fe00:ca1a%en0 prefixlen 64 scopeid 0x4 
   inet 192.168.2.120 netmask 0xffffff00 broadcast 192.168.2.255
   media: autoselect
   status: active

Interface: Bluetooth PAN
========================
en1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
   ether 10:93:e9:00:ca:1b
   media: autoselect
   status: inactive

Interface: iPhone-USB
========================
ifconfig: interface en2 does not exist

Interface: USB-Ethernet
========================
ifconfig: interface en3 does not exist
smartair:Scripte Sebastian$
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org

Geändert von Phoenix ( 4. Jan 2011 um 13:27 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Assarbad
Assarbad

Registriert seit: 8. Okt 2010
Ort: Frankfurt am Main
1.234 Beiträge
 
#24

AW: Gute Tutorials / Beispiele zu sed und awk gesucht

  Alt 6. Jan 2011, 20:19
Cool. Wird dann noch was gebraucht?
Oliver
"... aber vertrauen Sie uns, die Physik stimmt." (Prof. Harald Lesch)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:05 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz