Ping <dest> & nasıl sonlandırılır


9

Komuta

ping <dest> &

ping'in arka plana gitmesine neden olur. Ancak yine de terminale çıktı yazdırır. Ctrl-C durmaz, sadece yeni bir istem sunar. Terminalden nasıl durdurulur?


Cevaplara ek olarak, N'nin pozitif bir sayı olduğu bir sayıyla doğal olarak pingyinelemelerini sınırlamanın bir yolu vardır -c N.
l0b0

1
@ l0b0 Evet doğru, ancak bu özel sorunla karşılaştım ve aslında yürütme süresini bilmeyebileceğimiz veya tanımlanamayacağı herhangi bir programla ilgili. Yani süreci nasıl durduracağımı sormak istiyorum.
Vine

Yanıtlar:


24

Önce komutunuzun çalıştığı fgterminale girin ping(işlemi ön plana getirir), ardından işlemi durdurmak için Ctrl+ tuşuna basın c.

resim açıklamasını buraya girin


Bu çalışıyor. Ayrıca, birden fazla arka plan sürecimiz varsa, fg'nin bunları ön plana tek tek çağırarak çalıştığını fark ettim.
Vine

Evet, işte böyle çalışır, jobsarka planda çalışan işlemlerin bir listesini almak için kullanabilirsiniz .
Ravexina

Bu görüntü döngüsünü nasıl yaptınız?
phillipsk

3
@phillipsk GIF, GIF böyle çalışır ...
Ravexina

1
@Seth Oh ... bu durumda, videoyu "Kazam" kullanarak yakaladım ve kullanarak gif'e dönüştürdüm ffmpeg.
Ravexina

14

Tek ve tek arka plan işinizse, onu öldürebilirsiniz kill %1. Tüm arka plan işlerinizi listeleyebileceğinizden jobsve kill %<n>n'yi ping işinizin sayısına göre değiştirdiğiniz yerde kullanabileceğinizden emin değilseniz .


4
Ayrıca, n komutunu çalıştırırken köşeli parantez içinde basılan sayıyla eşleştiğini öğrendim.
Vine

7

Eğer kullanarak, ister arka plana bir süreç gönderdiğinizde ctrl- zya tarafından &komutun sonunda, aşağıdaki biçimde bir çıktı alın: [index] process-id. Arka plana birden çok işlem gönderirseniz, dizin her seferinde artmaya devam eder.

Örneğin:

$ sleep 100 &
[1] 41608
$ sleep 101 &
[2] 41609
$ sleep 102 &
[3] 41610
$ sleep 103 &
[4] 41611
$ sleep 104 &
[5] 41612
$ sleep 105 &
[6] 41613
$ sleep 106 &
[7] 41614

Belirli birini durdurmak için, ya kullanım edebilir kill <process-id>veya kullanım fg <index>izledi ctrl-c

Önceki çıktıyı kullanan örnek:

$ kill 41614

veya

$ fg 7
sleep 106
^C

3

Terminalin yeni bir sekmesini başlatın, çalıştırın:

$ pgrep ping
  2564

Sonra killkomutu kullanarak pid'i öldürün :

$ kill 2564

Ben de aynı terminalde öldürmek kullandım (çıkış kullanımı zor olmasına rağmen). Ancak, süreç kimliğini görmek için terminalde çok geriye gidemezsem ne yapacağımı merak ediyordum, bu yüzden pgrep ek olarak yardımcı oldu.
Vine

3
Kullandığınızda pgrepadıyla süreçleri aramak için, ayrıca kullanabilirsiniz pkilladıyla onları öldürmek için. İşlem kimliğini ve kullanımını yazmaya / kopyalamaya gerek yoktur kill.
Bayt Komutanı

Bunu bilmek faydalıdır, ancak bu soru için biraz fazlalık . :-p
tu-Reinstate Monica-dor duh

0

Kök olduğunuzda, basitçe killall ping.


Ping oturumumu öldürdüğün için teşekkürler aynı makinede çalışıyordum - bir iş arkadaşı
Oscar

0

Sürekli bir ping'e karşı biraz farklı bir yaklaşım -c seçeneğini kullanmak ve çalışmasını istediğiniz süreyi girmek, böylece istenen sayıdan sonra kendini durduracaktır, yani pingin altında 100 ping sonra duracaktır.

ping -c 100192.168.1.1 ve


0

Sadece kullan:

kill -9 %%

ve çalıştırdığınız mevcut arka plan işlemini öldürür.


0

Komutla arka planda (geçerli oturum için) koyduğunuz jobstüm işlemleri görebilirsiniz. Bu komutu çalıştırdıktan sonra, geçerli bash ve her işlemin sol tarafında çalışan tüm işlemleri göreceksiniz:

[1]-  Running                 sleep 200000 &
[2]+  Running                 sleep 300000 &

kill -15 n%(N) [[] işaretindeki bir sayıdır) düğmesini kullanarak işleri (işlemleri) sonlandırabilirsiniz.

-15işlemi güzel bir şekilde sonlandırmak içindir, işlemi kapatmaya zorlamak istiyorsanız, sadece PS -9yerine kullanın -15: Kök ayrıcalığına sahip bir komut çalıştırırsanız kill -15 n%,sudo

2) ile sistemi üzerinde çalışan sürecinin tüm görebilirsiniz ps -auxve görme için ping:

ps -aux | grep ping 

Çıktı şöyle:

root     2615  0.0  0.0  25828  1052 pts/0    S    02:12   0:00 ping 8.8.8.8

İkinci sayı (2615) PID veya işlem kimliğidir ve işlemi şu şekilde sonlandırabilirsiniz:

sudo kill -15 2615
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.