1

test_var という bash に変数を設定したい 基本的には、echo test_var に次のように出力させたい:

%let output="file_20120601.csv";

ここで、20120601 は変数です。私はこれを使用してこれをやろうとしています:

test_var='%let output="file_$1.csv";'
echo test_var

$1 は変数として解釈されず、文字通り $1 として解釈されるため、これは機能しません

これを変更して、やりたいことを実行する方法を知っている人はいますか?

4

2 に答える 2

4

一重引用符のため、機能しません。彼らはすべてを文字通りにします。

$ var='123'
$ foo="\"%hi there file_$var\""

$ echo $foo
"%hi there file_123"
于 2012-06-21T18:58:26.200 に答える
0

これも効く

test_var='%let output="file_'"$1"'.csv";'

変数は一重引用符の間で展開されないためです。横に文字列を書くだけで、一重引用符と二重引用符の間で文字列を連結できます。

于 2012-06-21T19:20:43.253 に答える