|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Yury Ivliev 2:5049/96.35 04 Nov 2002 20:42:10 To : Andrey Ostanovsky Subject : Re: awk -------------------------------------------------------------------------------- .RFC-X-Complaints-To: usenet@shelob.esterdev.com .RFC-NNTP-Posting-Date: Mon, 4 Nov 2002 16:42:10 +0000 (UTC) .RFC-User-Agent: slrn/0.9.7.4 (FreeBSD) On Mon, 04 Nov 02 18:16:45 +0300, Andrey Ostanovsky <Andrey.Ostanovsky@f1957.n5030.z2.fidonet.org> wrote: > >> Делаем разбор командной строки > >> > >> echo "2:5030/1957"|awk --field-separator ":|\/" '{print " zone="$1 " > >> net=" $2 " node=" $3}' > >> > >> zone=2 net=5030 node=1957 > >> > >> Хочется эти переменные использовать для синтаксического разбора > >> введенного параметра в sh-скрипте. Hе получается их передать в виде > >> переменных $zone, $net, $node. > >> > >> Подскажите - в какую сторону копать. > > YI> echo "2:5030/1957"\ > YI> |awk --field-separator "[:/]" '{print $1" "$2" "$3}' \ > YI> |(read zone net node;echo $zone:$net/$node) > > > YI> echo "2:5030/1957"\ > YI> |(IFS=':/';read zone net node;echo $zone:$net/$node) > > Мне надо, чтобы после выполнения команды остались отдельные переменные в > окружении. В твоем варианте этого не происходит.:( Вся работа, использующая переменные, должна выполняться внутри () ибо это другой subshell - за пределы его окружения переменные не попадают. /yury --- ifmail v.2.15-yi3 * Origin: Black CaT's Point (2:5049/96.35@fidonet) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/1615340f91727.html, оценка из 5, голосов 10
|