Практическое написание сценариев командной оболочки Bash/Код-сниппеты: различия между версиями

* <code>--underline-titles <yes|no></code>. Включает подчеркивание заголовков символом. По умолчанию значение этой опции <code>no</code>.
* <code>--underline-titles-char <символ></code>. Позволяет указать каким символом подчеркивать заголовки. По умолчанию это символ тире (<code>-</code>). Эта опция будет иметь эффект, если режим подчеркивания заголовков включен.
* <code>--sorting-column <числосинтаксис опции -k команды sort></code>. Позволяет указать колонку (начиная с 1), по которой нужно сортировать данные. По умолчанию сортировка делается по первой колонке. Эта опция имеет эффект, если опция сортировки включена. ЕслиС выточки укажитезрения номерреализации колонки,значение которойпараметра нетпередается втранзитом таблице,опции то<code>-k</code> этоутилиты будет интерпретироваться как 1<code>sort</code>.
* <code>--default-width-between-columns <число></code>. Позволяет определить ширину между колонками. По умолчанию это значение равно 2.
* <code>--default-column-width <число></code>. Позволяет задать максимальную ширину колонки по умолчанию. Это значение будет использоваться, если вы не указали ширину некоторой колонки явно. По умолчанию это значение равно 20.
* <code>--default-left-margin <число></code>. Позволяет задать отступ всей таблицы от левого края экрана. По умолчанию это значение равно 2.
* <code>--sorting-options <строка></code>. Функция использует утилиту <code>sort</code> для сортировки. Введенная строка передается утилите транзитом. Таким образом, вы можете управлять сортировкой. По умолчанию утилите передается только опция <code>--dictionary-order</code>. Будьте внимательны: из-за особенностей реализации валидации значений параметров, строку нужно начинать хотя бы одним пробелом.
* <code>--default-data-delim <строка></code>. Позволяет задать другой разделитель полей. По умолчанию это <code>IFS</code>.
* <code>--hide-header</code>. Переключатель. Позволяет отключить вывод шапки таблицы. По умолчанию вывод шапки таблицы включен.
__settings[$key]=${1:0:1}
;;
--sorting-column | --default-width-between-columns | --default-column-width | --default-left-margin)
shift
[[ $1 =~ (^--.*|^-.*) || ! $1 =~ ^[0-9]*$ || ${#1} -eq 0 ]] && {
echo "Wrong value for --${key}. Expected: <number>"
return 1
}
__settings[$key]=${1}
;;
--sorting-column)
shift
[[ $1 =~ (^--.*|^-.*) || ${#1} -eq 0 ]] && {
echo "Wrong value for --${key}. Expected: <string>"
return 1
}
counter=0
if [[ -n ${__settings['sorting-options']} ]]; then
[[ ${__settings['sorting-column']} -gt ${#__titles[@]} ]] && __settings['sorting-column']=1
local sorter="sort ${__settings['sorting-options']} -k ${__settings['sorting-column']}"
fi
1001

правка