OOTANI TAKASHI
tksot****@mail*****
2011年 12月 24日 (土) 01:03:19 JST
大谷と申します。 From: 長南洋一 <cyoic****@maple*****> Subject: [JM:00526] bash.1 の翻訳で意見が分かれています Date: Sat, 10 Dec 2011 20:35:01 +0900 (JST) > 要するに、"Bash uses the value of the variable formed from the rest of > parameter as the name of the variable" の as の付き方の解釈が、わたしと > 高橋さんで違うわけです。 !を除いた残りが変数(名)であることは、the variable formed from the rest of parameter で示されているので、 Bash uses the value (of the variable formed 〜) as the name (of the variable) という構造だと思います。 で、セミコロンの直後の this variable は セミコロン直前の the variable のこと。 ということは、長南さんと同じと言うことかな? 私が訳すなら、 parameter の最初の文字が感嘆符ならば、変数間接展開が行われます。 bash は残りの parameter からなる変数の値を変数の名前と見なします。 そしてそこで得られた名前の変数を展開した値を、置換処理の続きで使います。 これが間接展開です。 "そこで得られた名前の"は原文に無い追加です(2つの「変数」の区別のため)。 rather than 節はくどいので省略。 the rest of the substitutionは、% や # や / 等による修正の事でしょう。 高橋さんの解釈だと、the rest of the substitution は、AAA を展開した続き ですよね。そうだとすると、 $ AAA=BBB/z/x ; BBB=zzz ; echo ${!AAA} xzz になって欲しいですね。ver4は手元に無いのでver3で試すとなりません。 -- OOTANI TAKASHI <tksot****@mail*****>