Пожалуйста, проверьте эту ссылку; http://www.howtoadvice.com/FirestarterVPN Надеюсь, что это поможет
Да, у вас есть отступ в Gedit. Откройте gedit и в Edit-> Preferences вы можете иметь опцию автоматического отступа.
О втором пункте, его высказывание, как будто TEMPDIR находится в /tmp месте.
[[ -z "$TEMPDIR" ]] && TEMPDIR=/tmp
, то есть «если $TEMPDIR пуст, оцените команду справа (назначьте /tmp на TEMPDIR)». Команда [[ является встроенной командой Bash, а [ является исполняемой командой в /usr/bin/[ (а также ее эквивалентом /usr/bin/test). Команда [[ имеет несколько плюсов и минусов против [ или test. Плюсы: это встроенная команда, поэтому она быстрее, и она имеет больше функциональности, например, регулярное выражение и анализ (помните: man bash - ваш друг). Минусы: он не переносится, поскольку он имеет разные операторы, доступные в каждом интерпретаторе оболочки, где он существует. Выражение $? является, как указано в man bash, специальным параметром, который разрешает или «расширяется» до состояния выхода последней команды. Если последняя команда была успешной, она должна возвращать true (0 для Bash), поэтому $? будет числовым нулем; в других случаях $? будет числом, возвращаемым командой. Например, в командной строке ls / echo будет отображаться значение ошибки, возвращаемое ls, пытаясь найти файл an-nonexistent-file.txt: ls an-nonexistent-file-txt ; echo $?
Bash, поскольку язык программирования имеет много причуды и особенности; Изучение руководства Баша - путь к успеху.
[Извините за очевидный дублированный ответ, но другие были неспецифичны и не отвечали на все вопросы, как им было задано (не означает обиды, я узнал пара несвязанных вещей).]