在bash中将多个输入存储在多个变量中

时间:2016-09-22 18:18:05

标签: bash shell

我需要关于这个脚本做一个循环:

#!/bin/bash
exec 3>&1;
result=$(dialog --inputbox "Scan S/N" 10 23 2>&1 1>&3);
result1=$(dialog --inputbox "Scan S/N" 10 23 2>&1 1>&3);
result2=$(dialog --inputbox "Scan S/N" 10 23 2>&1 1>&3);
exec 3>$-;
clear
echo $result;
echo $result1;
echo $result2;

如果有一个变量,我可以选择循环运行的次数,这样会很棒......

我不必告诉你我这个嘿嘿的新手,谢谢你提前。 JB

2 个答案:

答案 0 :(得分:1)

每当你谈论可变数量的相关变量时,你需要一个数组。

n=3
for ((i=0; i<n; i++)); do
    results+=( $(dialog --inputbox "Scan S/N" 10 23 2>&1)) 
done

# individual results can be accessed with ${results[i]} for i=0,1,...,n-1
for res in "${results[@]}"; do
  echo "$res"
done

答案 1 :(得分:0)

循环和计数的基本方法是:

c=0
while true; do
  echo "count $c"
  ((c++))
  ((c==100)) && break
done

echo DONE