Я утверждал бы, что это - самый гибкий путь. Сценарий позволяет Вам настраивать параметры, добавлять условные выражения, изменять команду по мере необходимости, все на основе исходных данных.
Существуют способы "вызвать" команду в authorized_keys
. Но я не знаю о способе вынудить tty выделение покинуть кроме командную строку или вызвать команду на удаленном сервере из локальных файлов конфигурации стороны.
Самостоятельно, у меня есть сценарий, который сканирует файл конфигурации, проверки по сравнению с DNS с различными доменами и устанавливает строку заголовка эмулятора терминала. Я называю его с экрана в моей локальной системе (Ctrl-a g).
В ls и du, - вывод справки является простым и простым hardcoded в программу.
В языках сценариев, таких как Python может быть библиотека парсинга опции, которая делает это автоматически для Вас.
Что касается стандартов, единственная вещь, которую я мог найти, была этим:
http://www.gnu.org/prep/standards/html_node/_002d_002dhelp.html#g_t_002d_002dhelp
или более характерный для ls, du (coreutils):
http://www.gnu.org/software/coreutils/manual/html_node/Common-options.html#Common-options
который совершенно бесполезен.
Я предполагаю Вам решать для форматирования его приятно.:)
При записи утилиты командной строки я создаю a usage()
функция, которая выкладывает информацию в той форме, и когда я добавляю или изменяю что-то в getopt (или безотносительно) кодирует, я обновляю функцию использования для отражения этого. Конечно, проблема с той системой состоит в том, что, если Вы ленивы, можно закончить с неточным сообщением использования, но это не такая тяжелая проблема избежать или исправить.
Что касается инструкций, принцип "использование": строка может следовать конвенциям страницы справочника, например:
Usage: mycommand -h | [-x|y|z] [-a] [-b arg] required_param [optional_param]
Где канал | указывает или (таким образом, можно использовать один из x или y или z), и скобки дополнительные биты. Это могло бы быть упрощено, согласно ls, к
Usage: mycommand [options] required_param [optional_param]
Затем пройдите опции в алфавитном порядке и т.д.
"Использование" стреляет, если поддельная опция анализируется, -h
или --help
используется, обязательный аргумент отсутствует и т.д.