Обычная техника для оболочек, которые не имеют a nullglob
опция
set -- [*].type *.type
case $1$2 in
'[*].type*.type') shift 2;;
*) shift
esac
for file do
cmd -- "$file"
done
Дополнительное [*].type
должен покрыть случай, где существует один названный файл *.type
в текущем каталоге.
Теперь, если Вы хотите включать точечные файлы, который становится более сложным.
Я полагаю, что техника была выдумана Laura Fairhead в Usenet несколько лет назад.
От RFC 5424 (который устанавливает протокол системного журнала и относится к RFC 3339 для меток времени), "1. Введение":
Этот документ описывает стандартный формат для сообщений системного журнала и
обрисовывает в общих чертах понятие транспортных отображений. Это также описывает
элементы структурированных данных, которые могут использоваться для передачи легко
parseable, структурированная информация, и допускает расширения поставщика.Этот документ не описывает формата устройства хранения данных для системного журнала
сообщения. Это вне объема протокола системного журнала и
ненужный для системной совместимости.
Сообщение здесь относится к тому, что должно быть зарегистрировано, а НЕ формат входа. Другими словами: журнал не является сообщением, и RFC о сообщении, не журнале.
Материал Вы видите в /var/log/syslog
"хранивший формат" сообщения. Тот формат определяется тем, как Вы настроили свой конкретный системный журнал, и как преамбула указывает, нет никакой реальной необходимости никакого протокола там, по крайней мере, насколько "системная совместимость" идет.
Демоны системного журнала могут служить регистраторами для нескольких систем. RFC предназначается для устанавливания нормы, таким образом, что совместимые системы могут зарегистрироваться к удаленному системному журналу, независимо от которого конкретная реализация используется и т.д.
Демон системного журнала, получающий такие сообщения, затем запишет им в файл, но он не пишет им дословно - он пишет им в соответствии с его конфигурацией. При рассмотрении RFC далее Вы заметите, что существуют многие, много путей в который /var/log/syslog
не соответствует. Смотрите на ABNF в начале раздела 6 - это просто не описывает строку в файле журнала (заметьте, что метка времени является совсем не первым объектом!). Это - структурированный формат для сериализации сообщений для передачи.