Эту проблему необходимо решать для каждого конкретного терминала. В случае mlterm
вы добавляете эти строки в файл ярлыков~/.mlterm/key
:
Prior=PAGE_UP
Next=PAGE_DOWN
Что касается терминалов gnome -и lxterminal, окно настроек не позволяет это изменить.
Чтобы в основном ответить на ваш вопрос, ключевое слово «экспорт» перед назначением переменной сделает его доступным для всех оболочек sub -, которые вы будете запускать, например:
export DESTINATARIO="mail"
Однако, если причина в том, что ваш сценарий "слишком большой", вы можете также рассмотреть возможность организации ваших сценариев оболочки в библиотеки, с верхним сценарием, вызывающим функции во включаемых файлах. Пример:
#!/bin/bash
# load functions defined in mylib1.sh and mylib2.sh
source mylib1.sh
source mylib2.sh
# set my var
VAR1=123abc
# call functions from mylib1.sh and mylib2.sh
lib1func1 $VAR1
lib2func2 $VAR1
Наличие, например, в mylib1.sh определения функции lib1func1:
lib1func1() {
local firstvar=$1 # reading
echo $firstvar
}
Конечно, верхняя оболочка также может экспортировать переменные (глобальные ), которые будут известны библиотекам, но я бы не рекомендовал этот способ, поскольку он менее модульный.