Как убить определенную команду Find? [dубликат]

Для менее продвинутых технических специалистов вы можете сделать это:

Установить файловый менеджер Thunar из среды рабочего стола Xfce (он будет устанавливать только тунар, а не остальную часть xfce4):
sudo apt-get install thunar
(В качестве альтернативы, вы можете установить пакет thunar в программном центре Ubuntu или в диспетчере пакетов Synaptic.) Откройте thunar в терминале или в меню приложений / GNOME Shell / Unity / независимо, а затем используйте файловый менеджер Thunar, чтобы установить свой тип файла ассоциации. Nautilus будет уважать эти ассоциации, также, когда вы нажмете на этот тип файла в Nautilus.
1
задан 13 June 2017 в 18:25

2 ответа

pgrep

Вы можете использовать pgrep с переключателем -a:

pgrep -a find

он даст вам полную командную строку, а также идентификатор процесса:

10838 find / -iname png 10839 find / -iname jpg

, тогда вы можете решить, может ли он быть убит или нет:

kill 10838

убьет png.

pkill

вы также можете использовать pkill следующим образом:

pkill -x "find / -iname png"

-x означает: обрабатывать только имена процессов.

Найти дочерний процесс:

используйте дерево, чтобы найти нужный процесс, скажем, имя вашего скрипта «script.sh» вы можете использовать pgrep -f script, чтобы найти его, а затем передать вывод на pstree, чтобы получить список его дочернего элемента и убить find, который является дочерним элементом вашего скрипта.

$ pstree -p $(pgrep -f script) bash(10915)───find(10916) $ kill 10916
1
ответ дан 18 July 2018 в 11:43

pgrep

Вы можете использовать pgrep с переключателем -a:

pgrep -a find

он даст вам полную командную строку, а также идентификатор процесса:

10838 find / -iname png 10839 find / -iname jpg

, тогда вы можете решить, может ли он быть убит или нет:

kill 10838

убьет png.

pkill

вы также можете использовать pkill следующим образом:

pkill -x "find / -iname png"

-x означает: обрабатывать только имена процессов.

Найти дочерний процесс:

используйте дерево, чтобы найти нужный процесс, скажем, имя вашего скрипта «script.sh» вы можете использовать pgrep -f script, чтобы найти его, а затем передать вывод на pstree, чтобы получить список его дочернего элемента и убить find, который является дочерним элементом вашего скрипта.

$ pstree -p $(pgrep -f script) bash(10915)───find(10916) $ kill 10916
1
ответ дан 24 July 2018 в 19:50
  • 1
    -x / --exact используется для выполнения точных совпадений. То, что вы ищете, это -f / --full, чтобы учитывать всю командную строку, а не только исполняемое имя. Для последнего варианта вы также можете найти -P / --parent полезным. – David Foerster 13 June 2017 в 18:30

Другие вопросы по тегам:

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