将shell返回的结果保存至数组

如下,我需要将u1和u2提取出保存至数组,方便后续的调用

root@ubuntu:~# lxc list
+------+---------+--------------------------------+------------------+------------+-----------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
+------+---------+--------------------------------+------------------+------------+-----------+
| u1 | RUNNING | 192.168.1.102 (eth0) | | PERSISTENT | 0 |
+------+---------+--------------------------------+------------------+------------+-----------+
| u2 | RUNNING | 192.168.1.179 (eth0) | | PERSISTENT | 0 |
+------+---------+--------------------------------+------------------+------------+-----------+
| wan | RUNNING | 10.239.233.171 (lxdbr0) | 3d00::1 (hsibr0) | PERSISTENT | 0 |
| | | 10.101.0.1 (hsibr0) | | | |
+------+---------+--------------------------------+------------------+------------+-----------+

 

root@ubuntu:~# array=(`  lxc list | grep eth0 | awk -F "|"  '{print $2}'  `)
root@ubuntu:~# echo ${array[@]}
u1 u2
root@ubuntu:~# echo ${array[1]}
u2
root@ubuntu:~# echo ${array[0]}
u1

 

补充:shell中数组元素的基本操作

1. 获取数组元素的个数:

$ {#arrayname[@]}

$ {#arrayname[*]}    

 

2. 获取数组中的一个元素:

$ arrayname[index]

 

3.修改该数组中的一个元素:

arrayname[index] = 新值

 

4. 获取数组中的所有元素:

$ {arrayname[*]}

$ {arrayname[@]}

转载于:https://www.cnblogs.com/studyddup0212/p/8534404.html

你可能感兴趣的:(将shell返回的结果保存至数组)