Вам нужно перезагрузить после добавления правила в ufw?

Используйте массивы.

Если вам не нужно обрабатывать новые строки в именах файлов, то вы можете обойтись

mapfile -t ABC_FILES < <(find -L some/dir -name \*.abc | sort)
mapfile -t XYZ_FILES < <(find -L other/dir -name \*.xyz | sort)

then

./program --abc-files "${ABC_FILES[@]}" --xyz-files "${XYZ_FILES[@]}"

Если вам do нужно обрабатывать новые строки в именах файлов, и у вас bash >= 4. 4, вы можете использовать -print0 и -d '' для нулевой терминации имен во время построения массива:

mapfile -td '' ABC_FILES < <(find -L some/dir -name \*.abc -print0 | sort -z)

(и аналогично для XYZ_FILES). Если у вас нет более нового bash, то вы можете использовать цикл чтения с нулевой терминацией для добавления имен файлов в массивы, например,

ABC_FILES=()
while IFS= read -rd '' f; do ABC_FILES+=( "$f" ); done < <(find -L some/dir -name \*.abc -print0 | sort -z)
13
10.05.2018, 10:18
1 ответ

Нет. Достаточно просто добавить его. Но если вы добавляете правила в файлы, вам нужно выполнить commit.

Вы можете проверить пользовательские правила, так как они называются:

ufw status

Вы также можете добавить подробный для некоторых подробностей:

ufw status verbose

Или нумерованный, чтобы знать, какое правило удалить с помощью удалить. Синтаксис для этого таков:

delete RULE|NUM 
28
27.01.2020, 19:53

Теги

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