From: Aleksey Avdeev <solo@solin.spb.ru>
To: ALT Linux Team development discussions <devel@lists.altlinux.org>
Subject: Re: [devel] Автоматические release
Date: Tue, 04 Aug 2009 21:55:17 +0400
Message-ID: <4A787605.7040806@solin.spb.ru> (raw)
In-Reply-To: <200908042013.19211.ledest@gmail.com>
[-- Attachment #1: Type: text/plain, Size: 2011 bytes --]
Led пишет:
> On Tuesday 04 August 2009 20:07:19 Aleksey Avdeev wrote:
>> Michael Shigorin пишет:
>>> On Tue, Aug 04, 2009 at 07:29:54PM +0400, Aleksey Avdeev wrote:
>>>> Похоже начало вытанцовываться что-то похожее. Если использовать
>>>> прилагаемый макрофайл (см. вложение), то:
>>>>
>>>> Release: %distr_auto_release <prefix><number>[.<suffix>]
>>> IMHO чуточку лучше бы
>>>
>>> Release: %distro_release ...
>>>
>>> или вообще
>>>
>>> Release: %branch_release ...
>> OK. Тогда и остальные макросы в %branch_switch и %branch_release_num,
>> для единообразия.
>>
>>>> PS: Данный вариант мне нравиться дольше, чем используемый
>>>> сейчас. Думаю запаковать его. Прошу предлагать более внятные
>>>> названия для макросов и/или самого пакета.
>>> Да, вполне симпатично.
>>>
>>>> #auto_distr macros
>>>>
>>>> # release format: <prefix><number>[.<suffix>]
>>>> %distr_auto_release() %(if [ "%{?distr_switch}" = "" ]; then echo "%1";
>>>> else echo "%1"|sed -rn -e
>>>> 's@^([^[:space:]]+)([0-9]+)(|(\\.[^[:space:]]+))$@\\1/\\2/\\3@p'|awk -v
>>>> FS='/' -v distr_name='%{?distr_switch}' -v distr_num='%{?distr_num}'
>>>> 'BEGIN {if (distr_num == "") {num="1"} else {num=distr_num}; suf=("."
>>>> distr_name "." num) }; {print $1 ($2-1) suf $3}'; fi)
>>> Что-то подсказывает, что вместо if, echo, sed и awk можно
>>> обойтись просто awk; с другой стороны, так экономится пара
>>> циклов в тривиальном случае... :)
>> Вариант избавится от sed напрашивается. Но я не придумал, как в awk с
>> помощью регулярного выражения разрезать строку на 3 переменных:
>
> split()
Не понял как применить со сложным регекспом. То что придумал:
$ echo alt2|awk '{split($0, a,
"^([^[:space:]]+)([0-9]+)(|(\\.[^[:space:]]+))$");print "a[1]=" a[1] "
a[2]=" a[2] " a[3]=" a[3]}'
возвращает:
a[1]= a[2]= a[3]=
А мне нужно (при alt2 на входе) получить на выходе:
a[1]=alt a[2]=2 a[3]=
Кой для этого нужен регексп для split?
--
С уважением. Алексей.
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 552 bytes --]
next prev parent reply other threads:[~2009-08-04 17:55 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-05-18 9:58 [devel] rpmbph with git branches Eugene Prokopiev
2009-05-18 14:50 ` Max Ivanov
2009-05-18 15:00 ` Alexey I. Froloff
2009-05-18 15:25 ` Afanasov Dmitry
2009-05-18 15:32 ` Max Ivanov
2009-05-18 16:53 ` Eugene Prokopiev
2009-05-18 16:59 ` Alexey I. Froloff
2009-05-19 4:15 ` Eugene Prokopiev
2009-05-24 13:09 ` Michael Shigorin
2009-05-24 13:36 ` Afanasov Dmitry
2009-05-24 16:21 ` Grigory Batalov
2009-05-24 17:38 ` Afanasov Dmitry
2009-05-24 13:40 ` Aleksey Avdeev
2009-05-18 17:00 ` Igor Vlasenko
2009-05-18 17:04 ` Led
2009-05-18 15:40 ` Anton Farygin
2009-05-18 16:49 ` Eugene Prokopiev
2009-05-18 17:53 ` Anton Farygin
2009-05-18 18:10 ` Aleksey Avdeev
2009-05-18 19:37 ` Anton Farygin
2009-05-18 19:49 ` Aleksey Avdeev
2009-08-04 15:29 ` [devel] Автоматические release (was: rpmbph with git branches) Aleksey Avdeev
2009-08-04 16:40 ` Michael Shigorin
2009-08-04 17:07 ` [devel] Автоматические release Aleksey Avdeev
2009-08-04 17:13 ` Led
2009-08-04 17:55 ` Aleksey Avdeev [this message]
2009-08-07 14:59 ` Aleksey Avdeev
2009-08-07 19:56 ` Aleksey Avdeev
2009-08-08 9:12 ` [devel] I: У buildreq проблемы с %(<shell-coms>)? (was: Автоматические release) Aleksey Avdeev
2009-08-08 10:02 ` Alexey Tourbin
2009-08-08 11:47 ` [devel] I: У buildreq проблемы с %(<shell-coms>)? Aleksey Avdeev
2009-08-05 4:20 ` [devel] Автоматические release (was: rpmbph with git branches) Eugene Prokopiev
2009-08-05 4:30 ` Eugene Prokopiev
2009-08-05 11:50 ` [devel] Автоматические release Aleksey Avdeev
2009-05-18 20:06 ` [devel] rpmbph with git branches Vitaly Lipatov
2009-05-18 20:05 ` Aleksey Avdeev
2009-05-19 4:14 ` Eugene Prokopiev
2009-05-19 5:03 ` Vitaly Lipatov
2009-05-19 5:42 ` Anton Farygin
2009-05-19 7:53 ` Eugene Prokopiev
2009-05-19 8:06 ` Anton Farygin
2009-05-19 8:39 ` Eugene Prokopiev
2009-05-20 8:21 ` Vitaly Lipatov
2009-05-19 5:41 ` Anton Farygin
2009-05-19 9:56 ` Aleksey Avdeev
2009-05-19 10:34 ` Anton Farygin
2009-05-19 10:39 ` Max Ivanov
2009-05-19 10:58 ` Anton Farygin
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=4A787605.7040806@solin.spb.ru \
--to=solo@solin.spb.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