From: "Dmitry V. Levin" <ldv@altlinux.org> To: ALT Devel discussion list <devel@lists.altlinux.org> Subject: Re: [devel] glibc: обработка пустых подстрок в PATH, LD_PRELOAD etc Date: Sat, 29 Mar 2008 04:03:05 +0300 Message-ID: <20080329010305.GB9619@wo.int.altlinux.org> (raw) In-Reply-To: <200803271326.42171.khedin@mail.ru> [-- Attachment #1: Type: text/plain, Size: 1834 bytes --] On Thu, Mar 27, 2008 at 01:26:42PM +0300, Konstantin S. Uvarin wrote: > Давно не дает мне покоя один вопрос: для чего glibc интерпретирует пустую > подстроку в $PATH, $LD_PRELOAD и т.п. как текущий каталог? Ведь если > пользователю нужно именно текущий каталог указать, он и укажет PATH=$PATH:. Это требование стандарта (legacy feature). Привожу цитату из SUSv3 про $PATH полностью (жаль, что вы её не нашли раньше): "This variable shall represent the sequence of path prefixes that certain functions and utilities apply in searching for an executable file known only by a filename. The prefixes shall be separated by a colon ( ':' ). When a non-zero-length prefix is applied to this filename, a slash shall be inserted between the prefix and the filename. A zero-length prefix is a legacy feature that indicates the current working directory. It appears as two adjacent colons ( "::" ), as an initial colon preceding the rest of the list, or as a trailing colon following the rest of the list. A strictly conforming application shall use an actual pathname (such as .) to represent the current working directory in PATH . The list shall be searched from beginning to end, applying the filename to each prefix, until an executable file with the specified name and appropriate execution permissions is found. If the pathname being sought contains a slash, the search through the path prefixes shall not be performed. If the pathname begins with a slash, the specified path is resolved (see Pathname Resolution). If PATH is unset or is set to null, the path search is implementation-defined." > А так получается, что команда PATH=$PATH:$SOMEVAR делает не то, что > задумывалось, если SOMEVAR неопределена. Тогда пишите правильно, например, PATH="$PATH${SOMEVAR:+:$SOMEVAR}" -- ldv [-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]
prev parent reply other threads:[~2008-03-29 1:03 UTC|newest] Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top 2008-03-27 10:26 [devel] [JT] " Konstantin S. Uvarin 2008-03-27 10:38 ` Slava Semushin 2008-03-29 1:03 ` Dmitry V. Levin [this message]
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=20080329010305.GB9619@wo.int.altlinux.org \ --to=ldv@altlinux.org \ --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