Shell 在Unix中使用变量

Shell 在Unix中使用变量,shell,variables,unix,Shell,Variables,Unix,我有一个变量$x,它的值是脚本参数的位置,比如说8。我需要将第8个参数(比如1)中的值捕获到另一个变量y中,并能够将其作为变量$y$1引用文件中的一列。您可以使用间接引用${!var}来执行此操作: set one two three four five six seven eight x=8 y=${!x} echo $y 您将获得以下输出: eight 为了澄清您的问题,请用8或9个参数显示函数。也请说明你的问题。我看不出你在问什么问题。请包括该数据的示例输入和预期输出,以及您解决问题的

我有一个变量$x,它的值是脚本参数的位置,比如说8。我需要将第8个参数(比如1)中的值捕获到另一个变量y中,并能够将其作为变量$y$1引用文件中的一列。

您可以使用间接引用${!var}来执行此操作:

set one two three four five six seven eight
x=8
y=${!x}
echo $y
您将获得以下输出:

eight

为了澄清您的问题,请用8或9个参数显示函数。也请说明你的问题。我看不出你在问什么问题。请包括该数据的示例输入和预期输出,以及您解决问题的最佳尝试。祝你好运。欢迎来到Stack Overflow。请尽快阅读这两页。你用的是哪个外壳?bash、csh、dash、ksh、zsh的答案会有所不同。另外,当你说“引用文件中的一列”时,这是什么意思?您将把它传递给cut或awk,或者直接在shell中使用,不知何故,可能作为数组下标?你应该展示你已经尝试过的——你尽了最大的努力——并解释它有什么问题;这是创建MCVE的一部分。如果OP使用的是Bash或者相关的shell。这并没有得到普遍支持。