Thread iwlist wlan mit Sonderzeichen auslesen (10 answers)
Opened by cbxk1xg at 2021-02-23 23:29

cbxk1xg
 2021-02-23 23:29
#193144 #193144
User since
2003-10-20
496 Artikel
BenutzerIn
[default_avatar]
Ich habe mich nochmal an der Pipe-Variante versucht die ich in einem anderen Thread gelernt habe.

Mein Ziel ist es, eine Version mit escaped Characters des iwlist scans auszulesen, weil diese unter anderem mit Sonderzeichen und Emojis umgehen kann.

Code: (dl )
Thomas Müller‘s iPhone


Leider wird der Befehl
Code: (dl )
echo -e $(iwlist wlan0 scan | grep ESSID)
nicht richtig ausgeführt. Warum?

Code (perl): (dl )
1
2
3
4
5
6
7
my $cmd = "echo -e $(iwlist wlan0 scan | grep ESSID)";

open my $pipe, '-|', $cmd or die "(E) could not execute: $cmd: $!\n";
        while ( my $line = <$pipe> ) {
                print Dumper($line);
        }
close $pipe;


Momentan mache ich das mit einem Shell-Script und lese dann das Ergebnis in Perl aus der Datei.

Code: (dl )
1
2
3
4
5
#!/bin/bash

export DEBIAN_FRONTEND=noninteractive
echo -e $(iwlist wlan0 scan | grep ESSID) > /opt/wifiWebUI/temp/getWifiNets.dat
exit


Kurios und un-elegant, aber funktioniert. Geht das auch besser?


Es geht mir vor allem darum, daß ein encode("utf-8", $string); oder decode nicht funktioniert. Apostrophen und Emojis werden nicht richtig umgewandelt wenn ich es via Backticks oder System ausführe.
Last edited: 2021-02-24 00:25:44 +0100 (CET)

View full thread iwlist wlan mit Sonderzeichen auslesen