«Шпионское ПО» встроено в Unity's Dash, поэтому, пока вы не используете Unity (т.е. пока вы не используете «ванильный» аромат), вы «свободны от шпионского ПО».
Кстати, «шпионское ПО» будет отключено по умолчанию, начиная с Ubuntu 16.04 .
Изменить
#!/bin/bash
export var1="value1"
export var2="value2"
export var3="value3"
program
в
#!/bin/bash
if [ "$1" != "debug" ]; then
export var1="value1"
fi
export var2="value2"
export var3="value3"
program
Первый аргумент командной строки для вашего скрипта будет доступен в $1
, и если это не строка debug
, export
, переменная окружения var1
.
Строка#!
-может быть изменена на #!/bin/sh
, поскольку скрипт (, как написано выше ), не использует никаких специфических функций bash
-.
Вариант вышеописанного, который делает это по-другому с массивом, без фактической установки переменных в самом скрипте (только для program
при его запуске):
#!/bin/bash
if [ "$1" != "debug" ]; then
vars=( var1="value1" )
fi
vars+=( var2="value2" var3="value3" )
env "${vars[@]}" program
или, для /bin/sh
,
#!/bin/sh
mode=$1
set -- var2="value2" var3="value3"
if [ "$mode" != "debug" ]; then
set -- var1="value1" "$@"
fi
env "$@" program