首页 > 解决方案 > 如何将 cat 命令的多行输出存储在不同的变量中?

问题描述

我阅读了以下有关将多行输出保存到变量的帖子,将 命令的多行输出分配给变量

我无法将每一行保存到不同的变量中,我尝试使用数组,但不知何故数组的长度始终为零

my_array=()
cat check_status | while read line || [[ -n $line ]] ;
do
    echo $line
    my_array+=( $line)
done
echo ${#my_array[@]}
echo ${my_array[0]} 
echo ${my_array[1]} 

数组长度始终为0,数组内容始终为空

我的 cat 输出是

alpha
beta

我想将每一行保存到不同的变量中。我是 shell 脚本的新手,所以不确定使用数组是否是这里最好的解决方案。

标签: bash

解决方案


推荐阅读