Я думаю, ваше замешательство связано со словом «ссылка».
Вы не ссылаетесь на переменную массива после объявить
вообще; вы указываете только имя x
.
Чтобы ссылаться на переменную, вы должны поставить перед именем $
.
Попробуйте поискать на странице руководства bash все экземпляры referenc
и прочитать их.
Что касается второго вопроса:
В
[[-v myarr]]
,myarr
означает массив илиmyarr [0]
?
По тесту это означает myarr [0]
.
$ declare -p myarr
bash: declare: myarr: not found
$ myarr=()
$ declare -p myarr
declare -a myarr='()'
$ echo $myarr
$ [[ -v myarr ]] && echo is set
$ [[ -v myarr[0] ]] && echo is set
$ [[ -v myarr[1] ]] && echo is set
$ myarr+=([1]=b)
$ declare -p myarr
declare -a myarr='([1]="b")'
$ echo $myarr
$ [[ -v myarr ]] && echo is set
$ [[ -v myarr[0] ]] && echo is set
$ [[ -v myarr[1] ]] && echo is set
is set
$ myarr+=([0]=q)
$ declare -p myarr
declare -a myarr='([0]="q" [1]="b")'
$ echo $myarr
q
$ [[ -v myarr ]] && echo is set
is set
$ [[ -v myarr[0] ]] && echo is set
is set
$ [[ -v myarr[1] ]] && echo is set
is set
$
En mi humilde opinión, Linux aún no ha alcanzado el punto en el que podría usarse con GUI normalmente, especialmente con tarjetas nVidia... Tuve el mismo problema hace un tiempo y configuré CLUTTER_PAINT=disable-clipped-redraws:disable-culling
en /etc/environment
e inicialmente funcionó bien. Algunas actualizaciones después de que apareciera el problema -. Puede intentar agregar evdi
a /etc/modules
y luego options evdi initial_device_count=2
a /etc/modprobe.d/evdi.conf
En mi sistema, esto resolvió el problema... Si tienes la suerte, también ayudará en tu sistema... ¡Buena suerte!