Я создал работу с командой at
на Solaris 10.Список и убить на работу в UNIX
Это сейчас работает, но я хочу, чтобы убить его, но я не знаю, как я могу найти номер задания и как убить эту работу или процесс.
Я создал работу с командой at
на Solaris 10.Список и убить на работу в UNIX
Это сейчас работает, но я хочу, чтобы убить его, но я не знаю, как я могу найти номер задания и как убить эту работу или процесс.
Вы должны быть в состоянии найти свою команду с ps
вариант, как:
ps -ef
ps -fubob # if your job's user ID is bob.
Затем, когда находится, он должен попробуйте использовать kill
, чтобы убить процесс (разрешения).
Если вы говорите о том, чтобы избавиться от рабочих мест в at
очереди (которые еще не работает), вы можете использовать atq
, чтобы перечислить их и atrm
, чтобы избавиться от них.
он не находится в очереди, когда он запускает задание каждые 15 секунд сразу – soField
Если у вас есть процесс, выполняющий другие задания (новые каждые 15 секунд), сначала нужно сначала убить верхний уровень, чтобы поведение остановилось. Это все еще использует ps, чтобы найти его и убить, чтобы его прекратить. – paxdiablo
задание верхнего уровня тоже меняется, и получение нового идентификатора каждые 15 секунд – soField
Чтобы удалить задание, которое еще не запущено, вам нужна команда atrm
. Вы можете использовать команду atq
, чтобы получить ее номер в списке.
Чтобы убить работу, которая уже начала работать, вам необходимо вычленить информацию его с помощью:
ps -eaf | grep <command name>
, а затем использовать kill
, чтобы остановить его.
Более быстрый способ сделать это на большинстве систем:
pkill <command name>
Первый
ps -ef
список всех процессов. Обратите внимание на номер процесса, который вы хотите убить. Затем
kill 1234
Вы заменяете 1234 номер процесса, который вы хотите.
В качестве альтернативы, если вы абсолютно уверены в том, что есть только один процесс с определенным именем, или вы хотите, чтобы убить несколько процессов, которые разделяют то же имя
killall processname
'killall' работает в Linux, но обратите внимание, что на некоторых системах, таких как Solaris, на самом деле * убивает все процессы *, которые, вероятно, не то, что вы хотите. –
Вау, Solaris - DUMB. Зачем вам это делать? Это похоже на наличие псевдонима для 'rm -rf /' – polvoazul
at -l
в список рабочих мест, что дает вернуться как это:
age2%> at -l
11 2014-10-21 10:11 a hoppent
10 2014-10-19 13:28 a hoppent
atrm 10
убивает Job 10
Или так мой сисадмин сказал мне, и это
Сначала сделайте 'man ps'. Прочтите это. Затем обновите свой вопрос на основе прочитанного. –
S.Lott: 'at' jobs - это не то же самое, что процессы. –
работа выполняется в фоновом режиме, когда я запускаю ps -ef, я вижу некоторые процессы, выполняющие мои команды, которые мой скрипт bash содержит эти команды, его запускают 15 секунд сразу и обрабатывает идентификаторы, всегда меняющиеся при запуске ps -ef и i не удалось убить с kill process_id – soField