配列拡張

配列拡張

配列を展開すると、予期しない結果が表示されます。誰かが私が見るものを見る理由を説明できることを願っています。 fdisk -lを使用して配列を埋め、単一の要素のみを取得しようとしています。パスワード:

#!/bin/bash
declare -a PARTITIONS=();

PARTITIONS=$(fdisk -l ubuntu-minimal-16.04-desktop-armhf-raspberry-pi-2.img | grep -i ubuntu-minimal-16.04-desktop-armhf-raspberry-pi-2.img | sed '/Disk/d' | cut -d " " -f1)

echo "PARTITIONS[@]:${PARTITIONS[@]}"

echo "ELEMENT 0: ${PARTITIONS[0]}"

echo "ELEMENT 1: ${PARTITIONS[1]}"

出力:

 PARTITIONS[@]:ubuntu-minimal-16.04-desktop-armhf-raspberry-pi-2.img1 ubuntu-minimal-16.04-desktop-armhf-raspberry-pi-2.img2

 ELEMENT 0: ubuntu-minimal-16.04-desktop-armhf-raspberry-pi-2.img1 ubuntu-minimal-16.04-desktop-armhf-raspberry-pi-2.img2

 ELEMENT 1: 

要素1はありません。私は何が間違っていましたか?

ベストアンサー1

配列に割り当てる場合:

array=( elements )

つまり、

PARTITIONS=( $(fdisk ... ) )

おすすめ記事