Код: Выделить всё
#!/bin/sh
#Вот эта переменная пусть будет одна и та же для всего скрипта
my_max=2
#Вот я её даже экспортирую
export my_max
echo $my_max 
find | while read LINE
do 
	#Изменяю её значение
	my_max=3
	echo $my_max
	exit
done
#А на самом деле оно неизменно, как было 2, так и осталось!
echo $my_max 
exitShell
user@astra:~$ ./foo.sh
2
3
2
user@astra:~$Ага, а разве export my_max не решает? Везде пишут:
Так себе экспорт, сказать прямо. Не воодушевляет даже:export - это одна из встроенных команд оболочки пользователя bash, и предназначена для экспорта переменных и функций текущего процесса в дочерний процесс.
Код: Выделить всё
#!/bin/sh
#Вот эта переменная пусть будет одна и та же для всего скрипта
my_max=2
#Вот я её даже экспортирую
export my_max
echo $my_max 
find | while read LINE
do 
	#Изменяю её значение
	echo $my_max
	my_max=3
	echo $my_max
	exit
done
#А на самом деле оно неизменно, как было 2, так и осталось!
echo $my_max 
exitShell
user@astra:~$ ./foo.sh
2
2
3
2
user@astra:~$


 ) Не знаю, видели ли вы такое поведение программы в момент написания или нет, но для меня это мина замедленного действия. И для этого парня тоже (
 ) Не знаю, видели ли вы такое поведение программы в момент написания или нет, но для меня это мина замедленного действия. И для этого парня тоже (
