我有命令後輸出:BASH設置多個變量,然後將它們作爲命令的參數
$some_command
id
274725
275050
275065
277560
277801
277814
277817
277862
277863
我需要忽略第一行,並設置所有數字變量:
var1=274725
var2=275050
...
...
var9=277863
那麼我想這些變量作爲參數運行命令:
$ some_cmd $ VAR1 $ VAR2 ... $ VARN
與我的非常有限的知識,我必須知道如何找出變量的數目:
varN1=`some_command | wc -l`
varsN=`expr $varN1 - 1`
但是這不會是最簡單的解決方案,我不知道如何使循環,我將設置變量以及如何構建命令。也許類似?:
for i in (1...$varsN)
do
var$i=.... ?
你可以試試這個'set $(some_command); shift',那麼它們全部將被放置爲'$ 1'..'$ N'和'$#'將是變量的數量。數組變量'$ @'也將被設置。然後你可以調用一個新程序並像'newprog'一樣傳遞數組$ @「' – alvits