怎么把shell后台输出赋值给变量
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么把shell后台输出赋值给变量相关的知识,希望对你有一定的参考价值。
我有两个命令需要同时执行,输出结果赋值给两个变量,例子如下:
r0=`sleep 10;echo 10.0` &
r1=`sleep 10;echo 20.0` &
wait
echo $r0, $r1
结果显示:
,
怎么才能正常运行?
$ cat a.sh
#!/bin/bash
declare -i k
declare -i m
declare -a arr
k=0
m=0
rm -fr num.txt
touch num.txt
sleep 10;echo "10.0" >> num.txt; &
sleep 10;echo "20.0" >> num.txt; &
wait
while read line
do
arr[$k]=$line
((k++));
done < num.txt
while [ $m -lt $k ]
do
echo $arr[$m]
((m++))
done
运行它:
$ chmod +x a.sh
$ a.sh (或者 ./a.sh)
10.0
20.0
谢谢。因为不了解你的详细情况和需求。仅供参考。本回答被提问者和网友采纳
以上是关于怎么把shell后台输出赋值给变量的主要内容,如果未能解决你的问题,请参考以下文章
linux shell 如何把txt文本中每一行提取出来赋值给一变量,再输出这一变量