Spreminjanje spremenljivke samo za branje
Rešitev 1
Spremenljivka, ki je deklarirana samo za branje, ni mogoče spreminjati med odhodnim procesom.
Če pa je spremenljivka izvožena v podrejeni lupini, jo lahko spremenite.
#! / bin / bash if ["$ PROC_PID"! = "$ PPID"]; nato izvozite PROC_PID = $$ var = "mype" echo "začetni $ var" izjavi -r var export var $ 0 & # otrok proces drugo echo "pred $ var" var = "netty5" echo "po $ var" fi
Rešitev 2
Uporaba posrednega razvoja.
# Deklaracija spremenljivke samo za branje $ readonly Z = "Y" $ echo $ ZY # Preprečevanje testa $ unset Z -l: unset: Z: ne more izklopiti: readonly spremenljivka # Replacement test $ Z = W -l: Z # Izjava o posredni spremenljivki $ Y = W $ echo "$ Y" W # Razvoj spremenljivke z indirekcijo $ echo "$ {! Z}" W $