<Предыдущая | Содержание: | Следующая>
Вывод всего содержимого массива
Подписки * и @ может использоваться для доступа к каждому элементу в массиве. Как и в случае с позиционными параметрами, @ обозначение является более полезным из двух. Вот демонстрация:
[я @ linuxbox ~] $ животные = ("собака" "кошка" "рыба") [я @ linuxbox ~] $ для i в $ {animals [*]}; сделать echo $ i; сделано a
собака кошка рыба
[я @ linuxbox ~] $ для i в $ {animals [@]}; сделать echo $ i; сделано
собака кошка рыба
[я @ linuxbox ~] $ для i в "$ {animals [*]}"; сделать echo $ i; сделано
собака кошка рыба
[я @ linuxbox ~] $ для i в "$ {animals [@]}"; сделать echo $ i; сделано
собака кошка рыба
[я @ linuxbox ~] $ животные = ("собака" "кошка" "рыба") [я @ linuxbox ~] $ для i в $ {animals [*]}; сделать echo $ i; сделано a
собака кошка рыба
[я @ linuxbox ~] $ для i в $ {animals [@]}; сделать echo $ i; сделано
собака кошка рыба
[я @ linuxbox ~] $ для i в "$ {animals [*]}"; сделать echo $ i; сделано
собака кошка рыба
[я @ linuxbox ~] $ для i в "$ {animals [@]}"; сделать echo $ i; сделано
собака кошка рыба
Создаем массив животные и присвойте ему три строки из двух слов. Затем мы выполняем четыре цикла, чтобы увидеть влияние разбиения слов на содержимое массива. Поведение обозначений $
{animals [*]} и $ {animals [@]} идентичны, пока они не процитированы. Обозначение * приводит к одному слову, содержащему содержимое массива, тогда как обозначение @ дает три строки из двух слов, которые соответствуют «реальному» содержимому массива.