Variable expansion at definition time
新城@筑波大学情報です。こんにちは。
bash で、関数定義があります。関数の中でシェル変数を使うと、
実行時の値が使われます。定義時の値を使う方法はないでしょうか。
たとえば、次の例では、"file1 file2" と表示させたい時にどうす
るかということです。
------------------------------------------------------------
$ x="file1 file2"
$ echo_x()
> {
> echo $x
> }
$ x="file3 file4"
$ echo_x
file3 file4
$
------------------------------------------------------------
定義時の値を取れない、ということなら、それでもいいんですけれ
ど。やってみてもダメだし、マニュアルを見ても取れそうにはない
けれど、何か技があればと思って fj のみなさんにお尋ねします。
やりたいのは、シェル・スクリプトですけれど、シェル・スクリプ
ト以外の言語でも出きるものがあれば教えて下さい。定義時の値が
取れる言語というと、Forth を思い出します。他にありましたっけ?
Forth だったら、こんな感じだったかなあ。。。最近使ってないの
で、自身がありません。
: push3 [ 1 2 + , ] ;
3 の即値をコンパイルしているつもりだけど、単に数を書込む(,)
ではダメかも。immediate のコードを書いてその後に 3 を書込む
だったかな。忘れました。
\\ 新城 靖 (しんじょう やすし) \\
\\ 筑波大学 電子・情報 \\
Fnews-brouse 1.9(20180406) -- by Mizuno, MWE <mwe@ccsf.jp>
GnuPG Key ID = ECC8A735
GnuPG Key fingerprint = 9BE6 B9E9 55A5 A499 CD51 946E 9BDC 7870 ECC8 A735