Я хочу сохранить несколько строк вывода blkid
в массиве.Проблема состоит в том, что эти строки содержат пробелы, а синтаксис массива принимает их в качестве разделителей для отдельных элементов массива, так что в результате я получаю разделенные строки в моем массиве вместо одной строки, содержащей один элемент массива.
Этокод, который у меня сейчас есть: devices=($(sudo blkid | egrep '^/dev/sd[b-z]'))
echo ${devices[*]}
дает мне следующий вывод:
/dev/sdb1: LABEL="ARCH_201108" TYPE="udf"
/dev/sdc1: LABEL="WD" UUID="414ECD7B314A557F" TYPE="ntfs"
Но echo ${#devices[*]}
дает мне 7
, но я хочу получить 2
.Я хочу, чтобы /dev/sdb1: LABEL="ARCH_201108" TYPE="udf"
был первым элементом в моем массиве устройств, а /dev/sdc1: LABEL="WD" UUID="414ECD7B314A557F" TYPE="ntfs"
- вторым.Как я могу это сделать?