sh + 如何運行命令並將其設為參數( VAL )

sh + 如何運行命令並將其設為參數( VAL )

請看下面的指令,( shell 是

對我來說不太清楚的事情

當我跑步時- eval echo \$arr$n,我得到了值A正如預期的那樣

所以為什麼: 值=eval echo \$arr$n, 和回顯$VAL不列印相同的值A

在 arr1 中設定一個值

# n=1
# eval arr$n=a

列印 arr1 中的值

# n=1
# eval echo \$arr$n
  a

eval echo \$arr$n 進入價值,並列印$VAL

# VAL=` eval echo \$arr$n `
# echo $VAL
{*}1

命令中需要修復什麼 -值=eval echo \$arr$n,所以當我這樣做時回顯$VAL我會得到價值A

答案1

嘗試使用$()而不是反引號:

VAL=$(eval echo \$arr$n)

相關內容