ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: Sergey Vlasov <vsu@altlinux.ru>
To: devel@lists.altlinux.org
Subject: Re: [devel] bash4
Date: Fri, 13 Aug 2010 22:30:16 +0400
Message-ID: <20100813183016.GA6764@atlas.home> (raw)
In-Reply-To: <20100813154321.GA7685@imap.altlinux.org>

[-- Attachment #1: Type: text/plain, Size: 1267 bytes --]

On Fri, Aug 13, 2010 at 07:43:21PM +0400, Alexey Tourbin wrote:
> Есть ещё одна нехорошая засада - у нас /bin/sh и /bin/bash собраны
> в очень разной конфигурации: у них отличается синтаксис.  Я ставил
> этот вопрос ещё 6 лет назад!
> 
> $ sh -c 'diff <(echo a) <(echo b)'
> sh: -c: line 0: syntax error near unexpected token `('
> sh: -c: line 0: `diff <(echo a) <(echo b)'
> $ bash -c 'diff <(echo a) <(echo b)'
> 1c1
> < a
> ---
> > b
> $ 

Это не конфигурация, а документированная зависимость поведения bash от
имени, использованного при вызове, и отключение поддержки process
substitution в режиме совместимости с POSIX (документировано только в
info bash, в man в явном виде не описано):

$ bash --posix -c 'diff <(echo a) <(echo b)'
bash: -c: line 0: syntax error near unexpected token `('
bash: -c: line 0: `diff <(echo a) <(echo b)'
$ ln -s /bin/bash sh; ./sh -c 'diff <(echo a) <(echo b)'
./sh: -c: line 0: syntax error near unexpected token `('
./sh: -c: line 0: `diff <(echo a) <(echo b)'
$ sh -c 'set +o posix
diff <(echo a) <(echo b)'
1c1
< a
---
> b

(в последнем случае нужно именно \n в строке, через разделитель ';'
не сработает - видимо, переключение опции posix происходит только при
разборе следующей строки).

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]

  reply	other threads:[~2010-08-13 18:30 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-08-09  8:40 Ildar Mulyukov
2010-08-09  9:40 ` Dmitry V. Levin
2010-08-09 10:58   ` Kirill A. Shutemov
2010-08-09 11:02     ` Michael Shigorin
2010-08-09 11:52       ` Kirill A. Shutemov
2010-08-09 11:02     ` Ildar Mulyukov
2010-08-09 11:13       ` Alexey I. Froloff
2010-08-09 11:16         ` Andrey Rahmatullin
2010-08-09 11:21           ` Ildar Mulyukov
2010-08-09 11:25             ` Alexey I. Froloff
2010-08-09 12:36           ` Alexey Gladkov
2010-08-09 12:39             ` Ildar Mulyukov
2010-08-09 12:42               ` Alexey Gladkov
2010-08-09 13:43               ` Michael Shigorin
2010-08-09 12:41             ` Andrey Rahmatullin
2010-08-09 12:56               ` Alexey Gladkov
2010-08-09 13:11               ` Alexey Gladkov
2010-08-09 13:13                 ` Andrey Rahmatullin
2010-08-09 13:21                   ` Alexey Gladkov
2010-08-09 13:29                     ` Ildar Mulyukov
2010-08-09 13:38                       ` Andrey Rahmatullin
2010-08-09 13:40                       ` Alexey Gladkov
2010-08-10 12:15                         ` Ildar Mulyukov
2010-08-10 12:25                           ` Andrey Rahmatullin
2010-08-12 21:22                             ` Michael Shigorin
2010-08-12 21:44                             ` Dmitry V. Levin
2010-08-13  3:27                               ` Andrey Rahmatullin
2010-08-13 12:48                               ` Денис Смирнов
2010-08-13 15:43                                 ` Alexey Tourbin
2010-08-13 18:30                                   ` Sergey Vlasov [this message]
2010-08-13 19:43                                     ` Alexey Tourbin
2010-08-09 13:38                     ` Alexey I. Froloff
2010-08-09 13:39                       ` Andrey Rahmatullin
2010-08-09 13:14                 ` Ildar Mulyukov
2010-08-09 13:11               ` Dmitriy Kruglikov
2010-08-09 12:47           ` Dmitry V. Levin
2010-08-16  4:14             ` Alexey Tourbin
2010-08-16 10:12               ` Dmitry V. Levin
2010-08-16 12:55                 ` Денис Смирнов
2010-08-16 13:01                   ` Alexey Gladkov
2010-08-16 13:07                     ` Денис Смирнов
2010-08-10 12:28         ` Dmitry V. Levin
2010-08-10 12:32           ` Ildar Mulyukov
2010-08-10 13:24           ` Alexey I. Froloff

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20100813183016.GA6764@atlas.home \
    --to=vsu@altlinux.ru \
    --cc=devel@lists.altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/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 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

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


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