Команда Bash с потоком аргументов

Я ищу способ предоставить команде bash несколько аргументов только с помощью некоторого синтаксического сахара. Я уже знаю $@ и $*, но не знаю, как их правильно использовать. Было бы неплохо использовать следующий синтаксис:

define args
command &args

Дополнительный синтаксис может быть следующим:

  1. Объединить одиночные и потоковые аргументы в строке
define args_stream
command &args_stream arg_1
  1. Объединить одиночные и потоковые аргументы альтернативно
define args_stream1
define args_stream2
command &args_stream arg_1 &args_stream2

Это кажется плохой практикой, но я хочу уменьшить некоторые строки моих сценариев оболочки... :(

ОбновлениеПримеры: Поскольку вопрос настолько широк, что читатели не могли уловить его истинного смысла, привожу примеры:

  1. Мояфункция printHeaderимеет 7 аргументов, но большинство из них можно параметризовать. Один из вариантов - установить для моей переменной какой-либо параметр по умолчанию. Однако мне пришлось бы упорядочить аргументы в необычной форме, для основных аргументов как наиболее правильных элементов. Другой формой является запись аргументов, как я упомянул: я хотел бы исправить эти аргументы, поток или массив, как я упомянул ниже:
command $1 [$2.1 $2.2 $2.3] $3 
  1. Выполнив команду git --help, я получаю log ниже:

usage: git [--version] [--help] [-C <path>] [-c <name>=<value>]
           [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
           [-p | --paginate | -P | --no-pager] [--no-replace-objects] [--bare]
           [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
           <command> [<args>]

Аргументы в квадратных скобках необязательны, но могут быть обозначены двойным дефисом --. Это вариант для моей нотации потока аргументов.

0
задан 3 February 2022 в 20:52

0 ответов

Другие вопросы по тегам:

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