<Предыдущая | Содержание: | Следующая>
Удаление массива
Чтобы удалить массив, используйте команду сброшен команда:
[я @ linuxbox ~] $ фу=(abcdef)
[я @ linuxbox ~] $ эхо ${foo[@]}
abcdef
[я @ linuxbox ~] $ отключить фу
[я @ linuxbox ~] $ эхо ${foo[@]}
[я @ linuxbox ~] $
[я @ linuxbox ~] $ фу=(abcdef)
[я @ linuxbox ~] $ эхо ${foo[@]}
abcdef
[я @ linuxbox ~] $ отключить фу
[я @ linuxbox ~] $ эхо ${foo[@]}
[я @ linuxbox ~] $
unset также может использоваться для удаления отдельных элементов массива:
[я @ linuxbox ~] $ фу=(abcdef)
[я @ linuxbox ~] $ эхо ${foo[@]}
abcdef
[я @ linuxbox ~] $ отключить 'foo[2]' [я @ linuxbox ~] $ эхо ${foo[@]} Абдеф
[я @ linuxbox ~] $ фу=(abcdef)
[я @ linuxbox ~] $ эхо ${foo[@]}
abcdef
[я @ linuxbox ~] $ отключить 'foo[2]' [я @ linuxbox ~] $ эхо ${foo[@]} Абдеф
В этом примере мы удаляем третий элемент массива, индекс 2. Помните, массивы начинаются с индекса ноль, а не с единицы! Обратите также внимание, что элемент массива должен быть заключен в кавычки, чтобы оболочка не могла расширить путь.
Интересно, что присвоение массиву пустого значения не очищает его содержимое:
[я @ linuxbox ~] $ фу=(abcdef)
[я @ linuxbox ~] $ foo = [я @ linuxbox ~] $ эхо ${foo[@]} bcdef
[я @ linuxbox ~] $ фу=(abcdef)
[я @ linuxbox ~] $ foo = [я @ linuxbox ~] $ эхо ${foo[@]} bcdef
Любая ссылка на переменную массива без нижнего индекса относится к нулевому элементу массива:
[я @ linuxbox ~] $ фу=(abcdef)
[я @ linuxbox ~] $ эхо ${foo[@]}
abcdef [me@linuxbox ~]$ фу=А
[я @ linuxbox ~] $ эхо ${foo[@]}
bcdef
[я @ linuxbox ~] $ фу=(abcdef)
[я @ linuxbox ~] $ эхо ${foo[@]}
abcdef [me@linuxbox ~]$ фу=А
[я @ linuxbox ~] $ эхо ${foo[@]}
bcdef