Часто нам нужно убить процесс через терминал. Если мы знаем полное название процесса (Например: Кейт) у нас нет проблем, простой:
killall kate
Это решает проблему для нас ... но что, если мы не знаем точное название процесса?
В таких случаях мы должны перечислить все процессы с ps aux как показано на следующем снимке экрана:
Затем найдите PID процесса, который в этом случае мы ищем PID Кейт:
kill 3808
И вуаля, там убиваем процесс.
Что ж ... в одной строке мы можем найти процесс (без необходимости знать полное имя), узнать его PID, а также убить его:
ps ax | grep kat | grep -v grep | awk '{print $2}' | xargs kill
Как вы видете:
- Перечислим процессы (ps aux)
- Нам неизвестно полное или точное название Кейт (эй, это может быть Кейт-редактор или что-то в этом роде), поэтому мы фильтруем только по Kat (греп кат)
- Но мы получим два процесса, связанных с kat, если мы будем использовать только этот фильтр, один - это процесс kate, а другой - процесс, который мы активируем для фильтрации, я оставляю вам снимок экрана, чтобы вы могли закончить понимание: (Обратите внимание, что есть 2 строки, то есть 2 процесса)
- Чтобы избежать того, что было объяснено ранее, мы делаем другой фильтр (грэп -в грэп). Что мы будем делать наоборот ... если мы фильтруем с помощью grep, он будет показывать только совпадения с фильтром, а с греп -v Мы просим вас НЕ показывать совпадения, а показывать то, что не совпадает. Я показываю вам скриншот того, каким был бы результат: (Обратите внимание, что теперь отображается только процесс Кейт)
- Что ж, у нас уже есть процесс, который мы хотим убить изолированным, теперь нам нужно только извлечь его PID, который является вторым числом, то есть 4062. И PID находится во 2-м столбце (1-й столбец содержит пользователя с UID 1000), поэтому, используя awk, мы можем сказать, что он показывает только из этой строки то, что находит во втором столбце (awk '{print $ 2}'). Которая будет показывать нам только номер процесса, то есть только PID появится в терминале.
- Но мы не хотим показывать PID, мы хотим убить процесс с этим PID ... так что мы сделаем это, мы передадим то, что у нас есть до сих пор, в команду убивать и готово (xargs убить)
- Что означает это xargs? ... просто, в этом случае мы не можем передать PID для уничтожения только с помощью каналов ( | ), этого просто недостаточно, поэтому xargs (который позволяет передавать значения или данные, а затем выполнять или уничтожать их) это то, что позволит нам завершить работу.
И вот оно заканчивается 😀
Да ... Я знаю, что это кажется немного сложным, именно поэтому я попытался объяснить это в меру своих возможностей.
Я знаю, что, возможно, эта команда понадобится немногим, но цель этой статьи та же, что и у DesdeLinux, учите их чему-то новому каждый день, всегда пытаясь заставить их перестать бояться Linux... и лично мне бы очень хотелось, чтобы они научились пользоваться терминалом без страха 😉
В любом случае ... Надеюсь, вам было интересно, я продолжаю учиться использовать AWK что действительно здорово, хе-хе.
привет
Это правда, awk был для меня очень полезен, и я думаю, что всем, кому нужно манипулировать структурированными текстовыми файлами, настоятельно рекомендуется знать, как его использовать.
У меня просто вопрос (который не имеет ничего общего с вводом: D), как (и с помощью какой программы) вы сделали этот эффект размытия, который позволяет выделить часть скриншота?
Привет.
Probando если это из формата это работает, а если нет кто-нибудь скажите мне, как это сделать
Большое спасибо.
Ну да ... Я заново открыл для себя Linux, теперь, когда я знаю, как работать с awk ХАХАХАХА.
Про эффект и все такое, ничего ... это просто GIMP 😀
Я выделяю ту часть, которую хочу выделить, вырезаю ее с помощью [Ctrl] + [X] и вставляю как новый слой, затем выбираю нижний слой (который я хочу сделать непрозрачным) и перехожу в Фильтры- »Гауссиана (или как там написано хе-хе) и вуаля.
Теперь, чтобы придать ему темный эффект, я просто создаю новый слой (белый фон) и помещаю его между этими двумя, которые у меня уже были, я придаю ему черный цвет и на полосе прозрачности (правый верхний угол) перемещаю его туда, где я добиваюсь желаемого эффекта. .
Приветствую и спасибо за комментарий 🙂
Grande !!
Если процесс исходит из видимой программы, нет ничего удобнее, чем печатать Xkill на консоли щелкните программу, которую нужно убить, и вуаля.
нажмите на программу, чтобы убить
хе-хе да ... это при условии, что у вас есть графический интерфейс, хе-хе.
Правильно, поэтому я сказал: «Если процесс из программы, то он виден».
На кнопку с «Х» проще нажать. В GNOME Shell все еще есть эта кнопка, верно? :-D.
Если программа зависла (что является основной причиной, по которой вам нужно было бы убить ее процесс), логично, что эта кнопка не будет реагировать, сколько бы вы ее ни нажимали.
Я думаю, что GNOME Shell скоро удалит его, чтобы вы могли увидеть тактильное чудо закрытия окон, перетаскивая их в нижнюю часть экрана, как в Windows 8. Излишне говорить, что на широкоэкранных мониторах это фантастическое упражнение.
Теперь я понимаю. В этом случае я предпочитаю Control + Alt + Esc (в KDE).
Я не могу дождаться, чтобы увидеть новые превью GNOME Shell, это настоящее удовольствие.
Это делает то же самое, но написано меньше.
В данном случае я взял в качестве примера листовую панель, поэтому лист появляется в grep
ps -e | grep leaf | awk '{print $1}' | xargs kill
привет
Уф! Сынок, попробуйте запустить "pgrep kat", что для чего-то означает "pgrep".
И выполнить «man pgrep». И "man pidof", который иногда "pidof" может вам помочь.
И выполнить «ps aux | grep [k] at ", который не вернет" процесс, который мы активируем для фильтрации ", который вы комментируете в результате, тем самым сохраняя вашу работу.
Привет!
Да, и "pkill", который делает то, что вы ищете. Например: «пкилл кат».
Ой, интересно ... я не знал pgrep 🙂
Спасибо за совет 😀
Спасибо тебе и твоим статьям.
Кстати, в https://flossblog.wordpress.com/2009/11/11/truco-del-dia-excluir-al-proceso-grep-en-la-salida-de-ps-aux/ прокомментируйте технику использования команд типа «ps aux | grep [n] program_name ", они объясняют это лучше, чем я.
Привет!
Спасибо за ссылку 😀
Это самое замечательное в том, что он существует. DesdeLinux…неважно, являетесь ли вы пользователем, редактором или администратором, мы все всегда учимся чему-то новому 🙂
Приветствую и еще раз спасибо, друг.
Большое спасибо за ваше время и преданность делу, поэтому стоит посещать и читать этот сайт несколько раз в день.
Еще раз спасибо.
KZKG ^ Gaara почти всегда один и тот же, когда дело доходит до такого рода подсказок, есть другой человек, который делает то же самое с простой командой. Но я его поздравляю, он постоянно вносит свой вклад.
хе-хе да ... Я знаю, как делать X osa, и я прихожу сюда и делюсь методом, но потом они делятся более простым способом достижения того же, хахаха, но с этим мы все выигрываем, верно? 😀
Правильно 0 /
Хахаха, ты всегда идешь самым сложным путем. 😀
ХАХАХА да, я всегда думал: «Если я знаю, как это делать сложным способом, то я научусь делать это простым способом без проблем.»И… наоборот, не работает, хахаха.
Проблема была бы в том, если бы у нас было два процесса с одинаковым именем.
Например, процесс Кейт и еще один процесс ... ммм ... допустим, kater xD
С такой командой мы убьем их обоих, верно?
Ну да, это могло бы случиться 🙂
Бедная Кейт. Я использую xkill в KDE, он запускается быстро с помощью «ctrl + alt + esc» или также с помощью «ctrl + Esc», откройте «Системные действия» и сделайте это графически. Теперь эту процедуру через терминал нужно изучить, хотя у меня есть домашний сервер со стабильным debian, и он вообще не зависает.
Большой! прямо сейчас, когда я изучаю курс операционных систем и мне нужно выполнять задачи с терминалом, ваше руководство мне очень помогло! благодаря
Очень хорошо объяснен, отличный блог, с которым я только что познакомился, я ставлю его в избранное Спасибо.
Что ж, это хорошо, хотя бывают случаи, когда их нельзя убить….
пкилл -9
pkill -9 "имя процесса"
в предыдущем комментарии поставил «» но не вышло xD
спокойной ночи, у меня есть время прочитать вашу ленту, и сегодня я решил попробовать эту команду ps ax | grep chrome | grep -v grep | awk '{print $ 1}' | xargs kill, и я получаю следующую ошибку уничтожения: не удается найти процесс "?" Имея небольшой опыт работы с bash, я решил внести некоторые изменения, и в конце концов у меня остался ps -A | grep c | grep -v grep | awk '{print $ 1}' | xargs kill, поскольку ps -A используется для отображения всех процессов в обобщенном виде, а вторая аномалия заключалась в том, что он бросил мне TTY «?» и это сработало для меня большое спасибо мне очень нравится ваш блог, привет
Спасибо, compa, вы не представляете, сколько проблем вы решили за меня с помощью этой команды.
Привет!
БЛАГОДАРЯ !!!!
Отличный пост. Именно то, что я искал и не знал, как это сделать, и объяснение было очень хорошим.
Привет.