ты должен:
установить запятую как «разделитель полей по умолчанию»,
Вопрос, больше ли число полей, чем 1, и есть ли содержимое в поле номер 2.
Распечатайте всю строку (регистра ), используя переменную $0.
Ваши данные хранятся в файле :data -Exercise.txt
Это код:
awk 'BEGIN{FS=",";}{if(NF>1 && $2!="") print $0;}' data-exercise.txt
Вы не можете изменить стандартные свойства, такие как fromhost-ip
. Однако вы можете установить локальную переменную в строку и использовать ее как свойство. Например
template(name="abc" type="string" string="note %$.myvar%")
set $.myvar = "this-value";
Кроме того, imfile позволяет получить имя файла как метаданные , если вы используете параметрaddMetadata
:
input(type="imfile"
File="/my/logs/*.log"
addMetadata="on")
Имя файла помещается в переменную $!metadata!filename
.
Итак, если вы измените конфигурацию на установленную по умолчанию
set $.myvar = $fromhost-ip;
и переопределить его только для imfile
, тогда вы можете использовать if $.myvar
вместо if $fromhost-ip
в своих правилах и иметь общие правила для всех входных данных.