Гость
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Запуск скрипта только из под bash / 3 сообщений из 3, страница 1 из 1
22.04.2019, 13:24
    #39804864
azirumga
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск скрипта только из под bash
Есть небольшой скрипт, начало которого выглядит вот так:

Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
#!/bin/bash

# Удалить базы и пользователя

# Проверяем параметры
if [[ $1 = '' ]] || [[ $2 = '' ]]
then
  echo 'ERROR: The script should be run with two parameters: drop_db_and_user db_postfix db_user'
  exit -1
fi




Случайно запустил его как sh имя_скрипта

В результате получил, что sh не понял условные операторы, но не вывалился с ошибкой, а выполнил всё, что понял.
Можно ли как-то от этого защититься?
Например:
1. Как то узнать, что скрипт запущен не под bash и его завершить, используя для этого команды shell.
2. Как то директивой запретить его выполнять из под чего либо кроме bash
3. Вообще запретить использование shell, а только bash
...
Рейтинг: 0 / 0
22.04.2019, 16:49
    #39804993
Scott Tiger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск скрипта только из под bash
Проверяйте $BASH.
...
Рейтинг: 0 / 0
22.04.2019, 17:34
    #39805018
azirumga
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск скрипта только из под bash
Scott TigerПроверяйте $BASH.
Спасибо, помогло!
...
Рейтинг: 0 / 0
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Запуск скрипта только из под bash / 3 сообщений из 3, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]