Проблемы с областью действия переменных, определенных в функциях оболочки

Область действия переменной, определенной вне функции, начинается там, где она определена, и заканчивается там, где заканчивается оболочка, или там, где она явно удаляется.
Область действия переменных, определенных внутри функции, начинается с того места, где она вызывается, и заканчивается там, где заканчивается оболочка или удаляется явно.

Очень простой пример иллюстрирует проблему:

	#!/bin/bash
	func_(){
    
    
	    var1='123'
	}
	func_
	echo $var1

Вывод результатов

123

Следовательно, после вызова функции переменные, определенные внутри функции, все еще существуют после выхода из функции.
Эта проблема может легко привести к ошибкам в программе, поэтому будьте внимательны.

Supongo que te gusta

Origin blog.csdn.net/weixin_43669978/article/details/132540601
Recomendado
Clasificación