Как мне (правильно) вызвать службу systemd из udev с аргументом?

Awkрешение:

awk '/robot/{ 
         if (r){ printf "%s : %d\n", r, c; c=0; delete a } 
         r = $1 OFS $2; 
     }
     /drive/ && !a[$3]++{ c++ }
     END{ printf "%s : %d\n", r, c }' file
  • r = $1 OFS $2-"робот" имя
  • delete a-удалить все элементы массива a. (Следующий оператор предоставляет портативный, но неочевидный способ очистки массива:split("", array))
  • c++-подсчет уникальных "дисков" номеров для определенного "робота"

Выход:

robot 0 : 11
robot 1 : 4
0
01.01.2020, 21:35
1 ответ

Мне нужно было добавить '@' в имя службы. вот так:

sudo mv /etc/systemd/system/bar.service /etc/systemd/system/bar@.service

в этом руководстве в имя также вставлялся символ «@» для передачи аргументов:http://blog.fraggod.net/2012/06/16/proper-ish-way-to-start-long-running-systemd-service-on-udev-event-device-hotplug.html

0
22.04.2020, 17:41

Теги

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