2017-02-22 85 views
0

我有一个变量$x,该变量的值为脚本参数的位置(例如8)。我需要将第8个参数(例如1)中的值捕获到另一个变量y中,并且可以使用它作为变量$y($ 1)来引用文件中的列。在Unix中使用变量

+1

澄清你的问题,请出示与8个或9参数的函数。另请说明你的问题。 (我没有看到问号) – Roland

+0

不清楚你问的是什么。请包括来自该数据的样本输入和预期输出,以及您解决问题的最佳尝试。祝你好运。 – shellter

+1

欢迎来到Stack Overflow。请尽快阅读[关于]和[问]页面。你在使用哪种外壳? bash,csh,dash,ksh,zsh的答案会有所不同。另外,当你说'引用一个文件中的列'时,这意味着什么?你会将它传递给'cut'或'awk',或者直接在shell中使用,不知何故,也许可以作为数组下标吗?你应该展示你所尝试过的 - 尽你最大的努力 - 并解释它有什么问题;这是创建MCVE([MCVE])的一部分。 –

回答

1

您可以使用间接引用${!var}做到这一点:

set one two three four five six seven eight 
x=8 
y=${!x} 
echo $y 

你得到这样的输出:

eight 
+0

如果OP使用Bash(或者可能是相关的shell)。这并没有得到普遍支持。 –