мультихвост - пользовательская конфигурация (multitail.conf) местоположение

Начиная с Вашего $INPUT переменная использует новые строки в качестве разделителей, я собираюсь предположить, что Ваши файлы не будут иметь новых строк на имена. По сути, да, существует простой способ выполнить итерации по файлам и сохранить пробел.

Идея состоит в том, чтобы использовать read встроенная оболочка. Обычно read разделит на любом пробеле, и таким образом, пробелы повредят его. Но можно установить IFS=$'\n' и это вместо этого разделит на новых строках только. Таким образом, можно выполнить итерации по каждой строке в списке.

Вот самое маленькое решение, которое я мог предложить:

INPUT="foo/target/a.jar
foo/target/b.jar
bar/target/b.jar
bar/target/lol whitespace.jar"

dostuffwith() {
    echo "$1"
}

echo "$INPUT" | awk -F/ '{if (!seen[$NF]++) print }' | \
while IFS=$'\n' read file; do
  dostuffwith "$file"
done

В основном это отправляет "$INPUT" в awk который дедуплицирует на основе имени файла (оно разделяет на / и затем печатает строку, если последний объект не был замечен прежде). Затем, после того как awk генерировал список путей к файлам, мы используем while read выполнить итерации через список.

3
17.02.2019, 04:00
3 ответа
[

] Нет, с помощью переключателя [] --config[] можно определить [] multitail[], откуда взять файл конфигурации.[

] [
   --config filename
          Load the configuration from given filename.
] [

] Дополнительную информацию см. в man-странице[

].
2
27.01.2020, 21:23

Это может зависеть от того, какая у вас версия MultiTail.

Это для v6.4.2(через$ multitail -V).

Выполнить

$ multitail -h          #and it says the following:

*** configuration file ***  
-F file                  use 'file' as configuration file (instead of /etc/multitail.conf)  
--no-load-global-config  do not read /etc/multitail.conf  
-o config_file_parameter do a setting which would normally be set in the configuration file

Это противоречит тому, что написано на справочной странице, поскольку на справочной странице перечислены как -F, так и --config.

Кстати, на справочной странице есть и другие очевидные ошибки, или, по крайней мере, она не соответствует тому, что написано в $multitail -h.

Так что подумай.:-)

1
27.01.2020, 21:23

просто так:

alias multitail='multitail -F customconfiglocation'
0
20.12.2020, 10:20

Теги

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