* [devel] Передача аргумента с пробелом внутри
@ 2008-06-22 22:11 Vitaly Lipatov
2008-06-22 22:17 ` Dmitry V. Levin
0 siblings, 1 reply; 5+ messages in thread
From: Vitaly Lipatov @ 2008-06-22 22:11 UTC (permalink / raw)
To: devel
[-- Attachment #1: Type: text/plain, Size: 683 bytes --]
Пытаюсь передать --define='_source_payload w9.gzdio' в rpmbuild
и по дороге аргумент разрывается на две части по пробелу.
Пример скрипта приложен (запустить в каталоге с любым спеком
test.spec).
У меня такой вывод:
$ ./test_arg.sh
test.spec --define='_source_payload w9.gzdio' --nodeps
ошибка: Недопустимое имя (%define) макроса %
ошибка: Недопустимое имя (%define) макроса %
Платформы для сборки: i586
Сборка для платформы i586
Записан: /home/lav/RPM/SRPMS/test-1.1.2-alt0.M40.1.src.rpm
Возможно ли вообще коррктно передавать такие параметры между
функциями в shell?
--
С уважением,
Виталий Липатов
Санкт-Петербург
GNU! ALT Linux Team! WINE! LaTeX! LyX! http://freesource.info
[-- Attachment #2: test_arg.sh --]
[-- Type: application/x-shellscript, Size: 200 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [devel] Передача аргумента с пробелом внутри
2008-06-22 22:11 [devel] Передача аргумента с пробелом внутри Vitaly Lipatov
@ 2008-06-22 22:17 ` Dmitry V. Levin
2008-06-22 22:44 ` Vitaly Lipatov
0 siblings, 1 reply; 5+ messages in thread
From: Dmitry V. Levin @ 2008-06-22 22:17 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 492 bytes --]
On Mon, Jun 23, 2008 at 02:11:45AM +0400, Vitaly Lipatov wrote:
> Пытаюсь передать --define='_source_payload w9.gzdio' в rpmbuild
> и по дороге аргумент разрывается на две части по пробелу.
> Пример скрипта приложен
Вот что там происходит, на более простом примере:
$ rpmbuild -bs "--define='_source_payload w9.gzdio' --nodeps" /dev/null
ошибка: Недопустимое имя (%define) макроса %
ошибка: Недопустимое имя (%define) макроса %
ошибка: Не обычный файл: /dev/null.
--
ldv
[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [devel] Передача аргумента с пробелом внутри
2008-06-22 22:17 ` Dmitry V. Levin
@ 2008-06-22 22:44 ` Vitaly Lipatov
2008-06-22 22:56 ` Dmitry V. Levin
0 siblings, 1 reply; 5+ messages in thread
From: Vitaly Lipatov @ 2008-06-22 22:44 UTC (permalink / raw)
To: ALT Devel discussion list
On 23 июня 2008, Dmitry V. Levin wrote:
> On Mon, Jun 23, 2008 at 02:11:45AM +0400, Vitaly Lipatov wrote:
> > Пытаюсь передать --define='_source_payload w9.gzdio' в
> > rpmbuild и по дороге аргумент разрывается на две части по
> > пробелу. Пример скрипта приложен
>
> Вот что там происходит, на более простом примере:
>
> $ rpmbuild -bs "--define='_source_payload w9.gzdio' --nodeps"
> /dev/null ошибка: Недопустимое имя (%define) макроса %
> ошибка: Недопустимое имя (%define) макроса %
> ошибка: Не обычный файл: /dev/null.
Да. Осталось понять, возможно ли передать в функцию shell
параметры в сохранности, или нет.
--
С уважением,
Виталий Липатов
Санкт-Петербург
GNU! ALT Linux Team! WINE! LaTeX! LyX! http://freesource.info
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [devel] Передача аргумента с пробелом внутри
2008-06-22 22:44 ` Vitaly Lipatov
@ 2008-06-22 22:56 ` Dmitry V. Levin
2010-07-01 22:31 ` Dmitry V. Levin
0 siblings, 1 reply; 5+ messages in thread
From: Dmitry V. Levin @ 2008-06-22 22:56 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 914 bytes --]
On Mon, Jun 23, 2008 at 02:44:03AM +0400, Vitaly Lipatov wrote:
> On 23 июня 2008, Dmitry V. Levin wrote:
> > On Mon, Jun 23, 2008 at 02:11:45AM +0400, Vitaly Lipatov wrote:
> > > Пытаюсь передать --define='_source_payload w9.gzdio' в
> > > rpmbuild и по дороге аргумент разрывается на две части по
> > > пробелу. Пример скрипта приложен
> >
> > Вот что там происходит, на более простом примере:
> >
> > $ rpmbuild -bs "--define='_source_payload w9.gzdio' --nodeps"
> > /dev/null ошибка: Недопустимое имя (%define) макроса %
> > ошибка: Недопустимое имя (%define) макроса %
> > ошибка: Не обычный файл: /dev/null.
> Да. Осталось понять, возможно ли передать в функцию shell
> параметры в сохранности, или нет.
Конечно, но сперва надо уловить, как работает квотирование в shell;
см. напр. bash(1) про QUOTING.
В /bin/shell-quote есть готовый инструмент для более сложных случаев.
--
ldv
[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [devel] Передача аргумента с пробелом внутри
2008-06-22 22:56 ` Dmitry V. Levin
@ 2010-07-01 22:31 ` Dmitry V. Levin
0 siblings, 0 replies; 5+ messages in thread
From: Dmitry V. Levin @ 2010-07-01 22:31 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 1131 bytes --]
On Mon, Jun 23, 2008 at 02:56:33AM +0400, Dmitry V. Levin wrote:
> On Mon, Jun 23, 2008 at 02:44:03AM +0400, Vitaly Lipatov wrote:
> > On 23 июня 2008, Dmitry V. Levin wrote:
> > > On Mon, Jun 23, 2008 at 02:11:45AM +0400, Vitaly Lipatov wrote:
> > > > Пытаюсь передать --define='_source_payload w9.gzdio' в
> > > > rpmbuild и по дороге аргумент разрывается на две части по
> > > > пробелу. Пример скрипта приложен
> > >
> > > Вот что там происходит, на более простом примере:
> > >
> > > $ rpmbuild -bs "--define='_source_payload w9.gzdio' --nodeps"
> > > /dev/null ошибка: Недопустимое имя (%define) макроса %
> > > ошибка: Недопустимое имя (%define) макроса %
> > > ошибка: Не обычный файл: /dev/null.
> > Да. Осталось понять, возможно ли передать в функцию shell
> > параметры в сохранности, или нет.
>
> Конечно, но сперва надо уловить, как работает квотирование в shell;
> см. напр. bash(1) про QUOTING.
> В /bin/shell-quote есть готовый инструмент для более сложных случаев.
Наглядный пример реализации с использованием shell-quote:
$ gear-rpm -bp --define='_source_payload w9.gzdio'
--
ldv
[-- Attachment #2: Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2010-07-01 22:31 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-06-22 22:11 [devel] Передача аргумента с пробелом внутри Vitaly Lipatov
2008-06-22 22:17 ` Dmitry V. Levin
2008-06-22 22:44 ` Vitaly Lipatov
2008-06-22 22:56 ` Dmitry V. Levin
2010-07-01 22:31 ` Dmitry V. Levin
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