Как создать псевдоним, чтобы убивать процессы, запущенные на порту TCP / IP?

Что у меня есть:

alias killport='sudo kill -9 `sudo fuser -n tcp $1 2> /dev/null`' 

Проблема:

Однако выполнение, например, killport 8000 , похоже, не работает. Тем не менее, просто работает …

 sudo kill -9 `sudo fuser -n tcp 8000 2> /dev/null` 

… Работает. Я не могу понять, где я запутался. Извините, если мне не хватает чего-то очевидного. Во всяком случае, я мог бы справиться с этим, если я немного ударил головой о стену.

Основное различие между рабочими и нерабочими версиями, насколько я могу судить, заключается в том, что версия с псевдонимом включает переменную и выполняется оболочкой для меня … Но, возможно, кто-то видел эту проблему раньше и знает где искать.

One Solution collect form web for “Как создать псевдоним, чтобы убивать процессы, запущенные на порту TCP / IP?”

Вы должны использовать функцию вместо псевдонима, алиасы becaue не поддерживают параметры, делают что-то вроде этого:

 killport(){ sudo kill -9 $(sudo fuser -n tcp $1 2> /dev/null); } 

Теперь поместите эту функцию в конфигурационный файл bash, например ~ / .bashrc, а затем запустите:

 source ~/.bashrc 

И вы сделали

НТН

  • Как я могу убить мой обработанный процесс yes?
  • Тайм-аут оболочки Korn
  • Как создать cron, который находит / убивает / очищает старые марионетки?
  • Выйти из Google Chrome с терминала
  • Убийство процессов в состоянии прерывистого сна?
  • использование sudo создает другой процесс
  • Убийство PGIDs, но proceses возрождаются, как я могу сделать это постоянным?
  • sudo kill: операция не разрешена через SSH
  • Убейте невосприимчивый процесс по имени, но сохраните реагирующие процессы
  • Как узнать, кем я являюсь Мошт?
  • Как остановить бесконечный запущенный процесс (ztail), запущенный сеансом ssh после закрытия этого сеанса
  • Временно заморозить процесс при взаимодействии оболочки
  • Linux и Unix - лучшая ОС в мире.