ALT Linux Sisyphus discussions
 help / color / mirror / Atom feed
* [sisyphus] awk bug?
@ 2004-10-08 19:03 Peter V. Saveliev
  2004-10-11  9:00 ` Stanislav Ievlev
  2004-10-11 14:32 ` Alexey Gladkov
  0 siblings, 2 replies; 4+ messages in thread
From: Peter V. Saveliev @ 2004-10-08 19:03 UTC (permalink / raw)
  To: sisyphus

...

Пример странного поведения awk:

[peet@acer rt-network]$ echo "interface ethernet 0" | awk '{gsub(/ethernet[[:blank:]]+([0-9]+)/,"eth\1"); print $0}'
interface eth
[peet@acer rt-network]$ echo "interface ethernet 0" | awk '{gsub(/ethernet[[:blank:]]+([0-9]+)/,"eth\\1"); print $0}'
interface eth\1
[peet@acer rt-network]$ echo "interface ethernet 0" | awk '{print gensub(/ethernet[[:blank:]]+([0-9]+)/,"eth\1","g")}'
interface eth
[peet@acer rt-network]$ echo "interface ethernet 0" | awk '{print gensub(/ethernet[[:blank:]]+([0-9]+)/,"eth\\1","g")}'
interface eth0

Кто что может сказать на эту тему? Или "очередное злодейство в виде расширения gnu"
отключили, мол, ну никак не должен awk оперировать бэкреференсами в gsub? ;)

Вешать багу? Или само срастётся?

-- 
Peter V. Saveliev

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [sisyphus] awk bug?
  2004-10-08 19:03 [sisyphus] awk bug? Peter V. Saveliev
@ 2004-10-11  9:00 ` Stanislav Ievlev
  2004-10-11  9:10   ` Peter V. Saveliev
  2004-10-11 14:32 ` Alexey Gladkov
  1 sibling, 1 reply; 4+ messages in thread
From: Stanislav Ievlev @ 2004-10-11  9:00 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussion list

On Fri, Oct 08, 2004 at 11:03:44PM +0400, Peter V. Saveliev wrote:
> ...
> 
> Пример странного поведения awk:
> 
> [peet@acer rt-network]$ echo "interface ethernet 0" | awk '{gsub(/ethernet[[:blank:]]+([0-9]+)/,"eth\1"); print $0}'
> interface eth
> [peet@acer rt-network]$ echo "interface ethernet 0" | awk '{gsub(/ethernet[[:blank:]]+([0-9]+)/,"eth\\1"); print $0}'
> interface eth\1
> [peet@acer rt-network]$ echo "interface ethernet 0" | awk '{print gensub(/ethernet[[:blank:]]+([0-9]+)/,"eth\1","g")}'
> interface eth
> [peet@acer rt-network]$ echo "interface ethernet 0" | awk '{print gensub(/ethernet[[:blank:]]+([0-9]+)/,"eth\\1","g")}'
> interface eth0
> 
> Кто что может сказать на эту тему? Или "очередное злодейство в виде расширения gnu"
> отключили, мол, ну никак не должен awk оперировать бэкреференсами в gsub? ;)
Пётр, не надо злорадствовать. Никто ничего не отключал кроме сети.
> 
> Вешать багу? Или само срастётся?
Повесьте, посмотрим на досуге, что тут такое.
> 
> -- 
> Peter V. Saveliev

> _______________________________________________
> Sisyphus mailing list
> Sisyphus@altlinux.ru
> https://lists.altlinux.ru/mailman/listinfo/sisyphus



^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [sisyphus] awk bug?
  2004-10-11  9:00 ` Stanislav Ievlev
@ 2004-10-11  9:10   ` Peter V. Saveliev
  0 siblings, 0 replies; 4+ messages in thread
From: Peter V. Saveliev @ 2004-10-11  9:10 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussion list

On Monday 11 October 2004 13:00, Stanislav Ievlev wrote:
<skip />
> Пётр, не надо злорадствовать. Никто ничего не отключал кроме сети.

Прошу прощения. Просто очень больная тема в своё время оказалась.

<skip />
> Повесьте, посмотрим на досуге, что тут такое.
<skip />

Ok, спасибо.

-- 
Peter V. Saveliev

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [sisyphus] awk bug?
  2004-10-08 19:03 [sisyphus] awk bug? Peter V. Saveliev
  2004-10-11  9:00 ` Stanislav Ievlev
@ 2004-10-11 14:32 ` Alexey Gladkov
  1 sibling, 0 replies; 4+ messages in thread
From: Alexey Gladkov @ 2004-10-11 14:32 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussion list

Peter V. Saveliev wrote:
> ...
> 
> Пример странного поведения awk:
> 
> [peet@acer rt-network]$ echo "interface ethernet 0" | awk '{gsub(/ethernet[[:blank:]]+([0-9]+)/,"eth\1"); print $0}'
> interface eth
> [peet@acer rt-network]$ echo "interface ethernet 0" | awk '{gsub(/ethernet[[:blank:]]+([0-9]+)/,"eth\\1"); print $0}'
> interface eth\1
> [peet@acer rt-network]$ echo "interface ethernet 0" | awk '{print gensub(/ethernet[[:blank:]]+([0-9]+)/,"eth\1","g")}'
> interface eth
> [peet@acer rt-network]$ echo "interface ethernet 0" | awk '{print gensub(/ethernet[[:blank:]]+([0-9]+)/,"eth\\1","g")}'
> interface eth0
> 

А что не нравиться в приведенном выводе ? все правильно.

> Кто что может сказать на эту тему? Или "очередное злодейство в виде расширения gnu"
> отключили, мол, ну никак не должен awk оперировать бэкреференсами в gsub? ;)
> 

gsub не умел пользоваться \n . Функция gensub - это gnu'шное 
расширение и оно нормально работает. Так что никто ничего не выключал.

> Вешать багу? Или само срастётся?

В 'man awk' все четко описано по этому поводу. Так что этот баг не в gawk.

-- 
Rgrds, legion


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2004-10-11 14:32 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-10-08 19:03 [sisyphus] awk bug? Peter V. Saveliev
2004-10-11  9:00 ` Stanislav Ievlev
2004-10-11  9:10   ` Peter V. Saveliev
2004-10-11 14:32 ` Alexey Gladkov

ALT Linux Sisyphus discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/sisyphus/0 sisyphus/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 sisyphus sisyphus/ http://lore.altlinux.org/sisyphus \
		sisyphus@altlinux.ru sisyphus@altlinux.org sisyphus@lists.altlinux.org sisyphus@lists.altlinux.ru sisyphus@lists.altlinux.com sisyphus@linuxteam.iplabs.ru sisyphus@list.linux-os.ru
	public-inbox-index sisyphus

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.sisyphus


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git