Как игнорировать ошибку от mv :невозможно переместить ‘XXXXXX в подкаталог самого себя

Из исходного кода i3bar видно, что когда i3bar запускает новое приложение, он делает следующее:

  1. fork()
  2. вызывает setpgid , с новым идентификатором группы = 0 (см. комментарии на справочной странице для этого поведения)
  3. execl()

Таким образом, у нового дочернего процесса должен быть тот же родитель, что и у i3bar, поскольку он продвигается в группу родительских процессов.

Вы можете убедиться в этом, проверив идентификатор группы процессов экземпляра i3bar. Например:

ps axo pid,ppid,pgid,sid,comm | grep i3bar
# See 3rd column

Если i3bar также является дочерним элементом init, это объясняет поведение, которое вы видите.

0
12.07.2021, 02:53
0 ответов

Теги

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