Karakterek levagasa string elejerol-vegerol

Fórumok

Karakterek levagasa string elejerol-vegerol

Hozzászólások

Ismet egy bash szkripthez kellene megoldas:
egy konfig fajlban igy szerepel egy intreface: "eth0"
Le kellene vagnom rola a "-eket, azaz eredmenykent eth0 -t kapni.
Leszamolni az elejet, meg hanyadik a vegen stb nem jo, mert valtozhat a bejegyzes pozicioja a soron belul, azaz tobb scpace elotte stb.
Valami lavagni a "-karaktereket kellne.
Koszi a segitseget.

[quote:e44ef236b1="tempix"]Ismet egy bash szkripthez kellene megoldas:
egy konfig fajlban igy szerepel egy intreface: "eth0"
Le kellene vagnom rola a "-eket, azaz eredmenykent eth0 -t kapni.
Leszamolni az elejet, meg hanyadik a vegen stb nem jo, mert valtozhat a bejegyzes pozicioja a soron belul, azaz tobb scpace elotte stb.
Valami lavagni a "-karaktereket kellne.
Koszi a segitseget.

Levagni a " karaktereket: tr -d '"'

[code:1:e44ef236b1]echo '"eth0"' | tr -d '"'[/code:1:e44ef236b1]

[code:1:3962c5ad49]
$ var=interface:\ \"eth0\"
$ var2=${var#*\"}
$ echo $var
interface: "eth0"
$ echo $var2
eth0"
$ echo ${var2%\"}
eth0
[/code:1:3962c5ad49]

Sok sikert!

L. Á.

Én így írnám:
[code:1:31ff79c226]v=`echo $v | sed s/\"//g`[/code:1:31ff79c226]

Az "interface:"-ot nem kell levágni? Mert akkor tényleg sokminden egyszerűbb, mint amit fent írtam, pl.:

[code:1:21f86dec62]
$ valtozo=\"alma\"
$ echo ${valtozo}
"alma"
$ echo ${valtozo//\"/}
alma
[/code:1:21f86dec62]

Á.

[code:1:d45b221cb4]
fules@chaos:~$ echo "interface: \"eth0\" ingyombingyom"
interface: "eth0" ingyombingyom
fules@chaos:~$ echo "interface: \"eth0\" ingyombingyom" | sed 's/.*\(eth[0-9]*\).*/\1/'
eth0
[/code:1:d45b221cb4]