将cat输出存储到数组 - shell脚本中

时间:2013-03-13 15:39:36

标签: shell

如何将每行cat命令输出存储到数组中? 例如,如果 猫/守护进程给了我

11.11.11-1

22.22.22-2

33.33.33-3

44.44.44-4

然后如何使用shell脚本将输出存储到数组中并检查单个if条件(但不在迭代内)中该数组中是否存在“11.11.11-1”?

1 个答案:

答案 0 :(得分:0)

使用

$ cat file.txt | readarray arr
$ echo "${arr[@]}"
$ echo "${arr[2]}"

见:

help readarray

对于第二个要求:

  

检查单个if条件中的数组中是否存在“11.11.11-1”(但不在迭代内)?

我担心在shell中是不可能的,但在Perl中就可以了。例如。

编辑:如果要通过迭代复制数组:

for i in "${arr[@]}"; do
    arr2[1]=$[arr[i}}
done