2017-02-22 82 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)。這並沒有得到普遍支持。 –