№
То, что вы описываете, и есть то, для чего нужны генераторы, см. man systemd.generators
. Сравните man systemd-fstab-generator
, который генерирует единицы крепления из /etc/fstab
, он также читает, например,. root=
из командной строки ядра. Тем не менее, если вы поддерживаете только параметр командной строки ядра и у вас нет конфигурационного файла, вы можете быть так же счастливы, написав для него ранний -загрузочный(DefaultDependencies=no
)служебный модуль.
Переадресация вашего звонка наgrep
inotifywait -m -e create --format '%w%f' "${MONITORDIR}" |\
grep '.dat.pgp$' --line-buffered | while read NEWFILE
do
#decrypts testfile.dat.pgp
# new file "testfile.dat" is created in the $MONITOR_DIR which triggers
# the inotifywait process to run again.
done
заставит inotifywait
просматривать только файлы с расширением .dat.pgp
.
Вероятно, вы могли бы также пропустить файлы внутри цикла чтения while.
inotifywait -m -e create --format '%w%f' "${MONITORDIR}" |\
while read -r NEWFILE; do
if [[ $NEWFILE == *.dat.pgp ]]; then
#decrypts testfile.dat.pgp
# new file "testfile.dat" is created in the $MONITOR_DIR which triggers
# the inotifywait process to run again.
fi
done
Я не тестировал этот код, но тест должен обрабатывать только те файлы, которые заканчиваются на*.dat.gpg