Ich habe die folgenden Befehle ausprobiert:
Das Ausführen der folgenden Zeile ergibt den genannten Ausgabetext.
cat $tmp_list_address | sort | uniq | sed 's/^/address=\//;s/$/\/192.168.1.1/' > $tmp_list_final
Das Ausführen der folgenden Zeile ergibt den genannten Ausgabetext.
sed -i 's/.*/address=&\/192.168.1.1/' $tmp_list_address
Ich habe sogar versucht, die Dinge separat zu machen. Im Folgenden wird der
address=
Teil hinzugefügt. Aber wenn am Ende versucht wird, die IP hinzuzufügen, ändert es sich in den folgenden Ausgabetext.sed -i 's/^/address=/' $tmp_list_address sed -i 's/$/$pixelserv_ip/' $tmp_list_ip
Ich versuche, die Originalliste abzurufen. Darin werden auch Leerzeichen und Zwischenräume gespeichert, die ich entferne, bevor ich versuche, Text hinzuzufügen.
curl -s http://www.malwaredomainlist.com/hostslist/hosts.txt | grep -v "#" | sed '/^$/d' | sed 's/\ /\\ /g' | awk '{print $3}' | grep -v '^\\' | grep -v '\\$' | sort >> $tmp_list
sed -i 's/^ *//; s/ *$//; /^$/d' $tmp_list
Gewünschte Ausgabe:
address=/0koryu0.easter.ne.jp/0.0.0.0
address=/109-204-26-16.netconnexion.managedbroadband.co.uk/0.0.0.0
address=/11.lamarianella.info/0.0.0.0
Hinweis: 0.0.0.0
kann auch eine andere IP-Adresse sein, wie z 192.168.1.1
. B. .
Eingabetext:
0koryu0.easter.ne.jp
109-204-26-16.netconnexion.managedbroadband.co.uk
11.lamarianella.info
1866809.securefastserver.com
2amsports.com
3.bluepointmortgage.com
Ausgabetext:
/10.0.0.1109-204-26-16.netconnexion.managedbroadband.co.uk
/10.0.0.111.lamarianella.info
/10.0.0.11866809.securefastserver.com
/10.0.0.12amsports.com
/10.0.0.13.bluepointmortgage.com
Antwort1
Verwenden Sie die Sed-Gruppierung.
curl -s http://www.malwaredomainlist.com/hostslist/hosts.txt | sed 's#^\([0-9.]*\) \([a-z0-9.]*\)#address=/\2/0.0.0.0#'