Если вы можете изменить сценарий, измените его так, чтобы он говорил
a=${a:-20181214}
Это заставит использовать ранее установленное значение a
или 20181214
, если $a
пусто или переменная не установлена. Это стандартное расширение параметра .
Затем вы должны либо использовать
export a=20181212
./script.sh
или
a=20181212./script.sh
Последний из них избегает установки переменной в вызывающей среде и устанавливает ее только для среды сценария.
Если вы не можете изменить скрипт, то скрипт всегда будет переопределять ваше a
значение, что бы вы ни делали. В этом случае свяжитесь с человеком, который поддерживает сценарий, и объясните ситуацию. В худшем случае используйте копию сценария, которую вы можете модифицировать, предполагая, что сценарий не должен находиться в определенном месте.
Мой файл .bashrc
содержит следующие строки. Возможно, взгляните на строки export DISPLAY
и измените их по мере необходимости, чтобы отразить ваш дисплей.
# Added code for Windows Xwinrc
export DISPLAY=:0;
#export DISPLAY=localhost:0.0
#export LIBGL_ALWAYS_INDIRECT=1
#export GDK_DPI_SCALE=1