Тест, если вход в систему является scp соединением

Мы используем два подхода части, наши регулярные резервные копии переходят удаленные к Айен-Маунтину точно так же, как использование GregD однажды в неделю. Мы обычно сохраняем нашу ежедневную газету возрастающей и полное резервное копирование на сайте в нашей ленточной библиотеке.

Один набор лент месяц однако переходит к сейфу в Wells Fargo. Всегда два из нас идут, иногда три (его право рядом, куда мы иногда идем на ланч, настолько удобный). Это - только несколько блоков далеко, и у нас есть запасной случай Айен-Маунтина, который мы используем для этой транспортировки.

Ленты, не используемые или которые являются obsoleted, хранятся здесь в бетоне выровненный несгораемый корпус, который может заблокировать.

4
задан 20 March 2011 в 14:31
3 ответа

В ударе я использую shopt -q login_shell протестировать на это. Например, в .bashrc:

if shopt -q login_shell
then
    echo "interesting stuff"
fi

Это должно не допустить "интересный материал" в Ваш scp/sftp.

7
ответ дан 3 December 2019 в 02:30

Согласно странице справочника, необходимо протестировать на присутствие "i" в $-.

PS1 установлен, и $ - включает меня, если удар является интерактивным, позволяя сценарию оболочки или файлу запуска тестировать это состояние.

Например:

if [[ $- == *i* ]]
then
    # do interactive stuff
fi
4
ответ дан 3 December 2019 в 02:30

Исторически, в чисто настроенных оболочках стиля границы, это - "тест, если PS1 установлен", но это повреждается, если некоторый шутник экспортирует PS1 в среду.

Совместимый стандартами метод SUS должен протестировать, если 'я' нахожусь в $ - как Dennis отмечает, хотя [[...]] нестандартно, как == компаратор. Таким образом, самая портативная совместимая стандартами проверка:

case $- in
 *i*) # do interactive stuff
  ;;
esac

Затем Вы имеете shopt -q login_shell для удара (на Cakemox), и оба [[ -o interactive ]] и [[ -o login ]] для zsh.

1
ответ дан 3 December 2019 в 02:30

Теги

Похожие вопросы