【发布时间】:2019-11-06 09:36:29
【问题描述】:
您好,我尝试将 awk 拆分为一个数组。我有这个脚本:
#!/bin/bash
vms_disks=( "${vms_disks[@]}" "$(virsh domblklist $vm --details | awk '/disk/{print $4}')" )
for disk in "${vms_disks[@]}"; do
echo "upload $disk"
done
此脚本应该在数组"${vms_disks[@]}" 中获取虚拟机"$vm" 的驱动器。但是这个脚本只用一个键填充数组"${vms_disks[@]}"。 echo 的输出应该是:
upload disk1.raw
upload disk2.raw
...
(为每个磁盘上传)
但我明白了:
upload disk1.raw disk2.raw ...
(所有磁盘一起上传一次)
如何从"$(virsh domblklist $vm --details | awk '/disk/{print $4}')"获取数组键
怎么做?
【问题讨论】:
-
为什么不从
vms_disks=( "$(printf 'hello\nworld\n')" )或类似的开始,然后尝试在添加所有其他复杂性之前先使其正常工作?