Hi!
Warum funktioniert folgendes nicht?
echo 'SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0d:34:26:ec:1e", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"' |sed 's/".*:.*:.*:.*:.*:.*"/bla/g'ich möchte eigentlich folgendes zurück bekommen
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="*", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
warum wird beim zweiten Aufruf von sed die Ersetzung nicht durchgeführt?
susi:~ # cp -a /etc/udev/rules.d/{70-persistent-net.rules,70-persistent-net.rules.bak}
susi:~ # search=grep eth0 /etc/udev/rules.d/70-persistent-net.rules
susi:~ # replace=echo ${search} |sed -r 's/([0-9a-f]{2}:){5}[0-9a-f]{2}/\*/'
susi:~ # echo ${search}
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0d:34:26:ec:1e", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
susi:~ # echo ${replace}
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="*", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
susi:~ # sed -i "s/${search}/${replace}/g" /etc/udev/rules.d/70-persistent-net.rules
susi:~ # grep eth0 /etc/udev/rules.d/70-persistent-net.rules*
/etc/udev/rules.d/70-persistent-net.rules:SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0d:34:26:ec:1e", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
/etc/udev/rules.d/70-persistent-net.rules.bak:SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0d:34:26:ec:1e", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
Klara