Я ищу способ предоставить команду bash с несколькими аргументами только с помощью некоторого синтаксического сахара. Я уже знаю $@ и $*, но не знаю, как их правильно использовать. Было бы неплохо со следующим синтаксисом:
определить аргументы
команда &аргументы
Дальнейший синтаксис может быть следующим:
- Объединение одиночных и потоковых аргументов подряд
определить args_stream
команда &args_stream arg_1
- Объединение одиночного и потокового поочередно
определить args_stream1
определить args_stream2
команда &args_stream arg_1 &args_stream2
Это кажется плохой практикой, но я хочу уменьшить некоторые строки моих сценариев оболочки... :(
Обновлять
Примеры: Поскольку вопрос настолько широк, что читатели не могли уловить его истинного значения, я привожу примеры:
- Мой
печатьЗаголовок
функция имеет 7 аргументов, но большинство из них можно параметризовать. Один из вариантов - установить для моей переменной какой-либо параметр по умолчанию. Однако мне пришлось бы упорядочить аргументы в необычной форме, для основных аргументов как наиболее правильных элементов. Другая форма - записать аргументы, как я упоминаю: я хотел бы исправить эти аргументы, поток или массив, как я упоминаю ниже:
команда $1 [$2.1 $2.2 $2.3] $3
- По ходу команды
git --помощь
, я получаю журнал ниже:
использование: git [--версия] [--help] [-C <путь>] [-c <имя>=<значение>]
[--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
[-р | --paginate | -П | --no-pager] [--no-replace-objects] [--bare]
[--git-dir=<путь>] [--work-tree=<путь>] [--namespace=<имя>]
<команда> [<аргументы>]
Аргументы в скобках необязательны, но могут быть обозначены двойным дефисом. --
обозначение. Это вариант для моей нотации потока аргументов.