【发布时间】:2022-01-12 08:16:49
【问题描述】:
我正在编写一个小的 shell 脚本来读取和打印 一个文件。
#!/bin/csh
set IN_FILE=$1
set i=1
foreach line ( "`cat $IN_FILE`" )
set F$i="`echo $line`"
echo ${F${i}}
@ i = $i + 1
end
执行时出现以下错误
Missing '}'.
我想知道如何回显一个变量,其中包含 名称中的另一个变量。
【问题讨论】:
-
尝试使用 eval?在 bash 中,尝试“帮助评估”。
-
eval ${F${i}} 给出了同样的错误。
-
记住总是引用。你将什么参数传递给你的脚本?
-
您可以使用
echo ${!i},请参阅:stackoverflow.com/a/18124325/724039(或者仅此 bash 吗?) -
@linuxfansaysReinstateMonica 我正在传递一个文件的名称,它必须读取并打印每一行