2008年2月 2日

[linux-users:107917] Re: [linux-users:107916] Re: シェル ${1+"$@"} とは?

木村です。
man bash では説明が不十分と感じました。先に man sh-posix を知っていることが
前提のようです。ただ、手元のDebianには sh-posix のマニュアルは入っていませんでした。

> 純粋に
> ${1+"$@"}
> の文法に関する説明は、
> http://www.linux.or.jp/JM/html/GNU_bash/man1/bash.1.html

> では、
> どこの説明にあたりますでしょうか?

$1 は 「特殊パラメータ」 のところに書いてあっても良いと思うのですが、
"@" や "*" の説明に紛れ込んでいる程度です。

「パラメータの展開」のところで "${parameter:+word}" についての説明が
書かれていますが ":" についての説明が欠けているようです。

なので tanakaさんの質問の場合は man bash するよりも sh-posix のマニュアル
を読んだ方が良いと思います。

http://docs.hp.com/ja/B2355-90851/sh-posix.1.html

「パラメータの置換え」のところです。
echo ${d:-$(pwd)}
について説明があります。
"-" を "+" の置き換えてください。
"1", "2" と言う数字や "@", "${parameter:+word}" の説明もあります。

以上です。


投稿者 xml-rpc : 2008年2月 2日 16:45
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/69389
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。