باعرض سلام، برای تعریف متغیر غیرقابل تغییر از دستور گفته شده استفاده میکنم
pc@localhost:~$ set ${name:=amirhosseyn}
pc@localhost:~$ echo $name
amirhosseyn
اما با تغییر متغیر، متغیر تغییر میکند
pc@localhost:~$ name=ali
pc@localhost:~$ echo $name
ali
ممکنه در این خصوص راهنمایی کنید.