Использование опорной переменной имени в функции:
arrayParser () {
declare -n arr="$1"
printf 'Array: %s\n' "${arr[*]}"
printf 'Array element at index 3: %s\n' "${arr[3]}"
}
myarray=( alpha beta gamma "bumbling bee" )
arrayParser myarray
Внутри функции любая ссылка на ссылочную переменную имени arr
будет ссылаться на переменную, переданную функции в качестве ее первого аргумента.
Ссылочные имена переменных были введены в версии bash
4.3.
Не знаю, какой у вас расширенный жесткий диск. Мне никогда не удавалось заставить драйверы Nvidia загружаться в режиме реального времени. Я думаю, что это связано с ядром и возможностью отключения модулей, связанных с Xorg/Nouveau. Вы можете установить Kali на USB-накопитель, он будет работать медленно, но затем вы сможете установить исправленные драйверы OpenCL. Я получил карты Kali и AMD для Hashcat и очень быстро по сравнению с процессором.
ИЛИ
https://askubuntu.com/questions/880367/updating-nvidia-drivers-on-casper-rw-partitioned-usb-prevents-bootССЫЛКА