Sto facendo un ciclo while che termina con & e ho chiuso il terminale, quindi non posso fermarlo ora

1

Questo è il codice

while sleep 1; do say "1"; done &

Ho chiuso il terminale, ma ora non riesco a fermare il mio Mac dicendo "uno" ogni secondo. È molto fastidioso.

    
posta Cemre Suler 12.01.2017 - 20:11
fonte

2 risposte

1
  • Apri una nuova scheda / finestra Terminale
  • Esegui ps alx|grep "[s]leep 1" (forse più volte, finché non ottieni il sleep 1 come parte dell'output

    pse@Mithos:~$ ps alx|grep sleep 1
      502  1268  1245   0  20  0  2432796   1460 -      S      ??    0:00.00 sleep 31536000
      502 80121   809   0  31  0  2432796   1772 -      S+   s002    0:00.00 sleep 1
    
  • Elimina la shell in cui è in esecuzione utilizzando il PID padre del comando sleep (il numero nella terza colonna, 809 in questo caso): kill -HUP YOUR-PARENT-PID-HERE

risposta data 12.01.2017 - 20:41
fonte
0

Accedi al Terminale ed esegui ps aux | grep sleep e dovresti essere in grado di vedere il tuo comando while come risultato. Nota anche grep. Trova il PID del processo e digita kill [pid] . Se fallisce, la nota kill -9 [pid] al posto delle parentesi effettivamente usa il numero del processo, senza le parentesi.

    
risposta data 12.01.2017 - 20:41
fonte

Leggi altre domande sui tag