Выполнение ряда внешних / сторонних программ в Заявлении IF ELIF - PullRequest
0 голосов
/ 25 октября 2011

В моем скрипте есть очень длинная инструкция IF ELIF, которая работает.Мои проблемы начались, когда я начал пытаться заставить его выполнять внешние программы / программное обеспечение сторонних производителей.

.....; then
prog1 -some flags
prog2 -some flags
prog3 -some more flags
prog4 -even more flags
elif [......]

Как вы можете догадаться, я обнаружил, что это не платно, единственное, что я могу увидеть, эточто я поместил эти команды в отдельный скрипт оболочки и назвал его следующим образом:

.....; then
./myshellscript.sh
elif [......]

Есть ли возможность содержать это в самом скрипте без необходимости вызывать скрипты оболочки для выполнения всех моих задач.Я обычно кусал бы пули и делал это, но это означало бы иметь сотни внешних сценариев оболочки, которые загромождали бы папку, а не один дефинирующий сценарий, содержащий весь код, необходимый для выполнения поставленной задачи.

Еще раз, любая помощь будет принята с благодарностью.

1 Ответ

1 голос
/ 25 октября 2011

Если вас просто беспокоит количество обращений к сценариям в каждой ветви, и если сценарии, вызываемые в каждой ветви, одинаковы, то вы можете просто использовать функции bash для выполнения этой работы.

Посмотрите на эту страницу , чтобы узнать, как писать функции в bash.

Это в основном то же самое, что и тот, в котором вы бы выделяли общий код в функции практически на любом языке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...