Saya memiliki aplikasi di OSX yang berulang kali masuk ke status Tidak Menanggapi dan harus dibunuh paksa. Saya berharap untuk mengotomatisasi itu, tetapi ketika memeriksa proses dengan ps saya tidak melihat apa pun yang sesuai dengan keadaan Tidak Menanggapi. Saya melihat indikator status , tetapi aplikasi menunjukkan sebagai S apakah merespons atau tidak.
state Status diberikan oleh urutan karakter, misalnya, `` RWNA ''. Karakter pertama menunjukkan proses proses:
- Saya Menandai proses yang tidak digunakan (tidur lebih dari 20 detik).
- R Menandai proses yang bisa dijalankan.
- S Menandai proses yang tidur kurang dari sekitar 20 detik.
- T Menandai proses yang terhenti.
- U Menandai proses dalam menunggu tanpa gangguan.
- Z Menandai proses mati (a `` zombie '').
Bagaimana saya bisa menentukan apakah prosesnya tidak merespons seperti yang dilakukan oleh Activity Manager?
Saya juga terbuka untuk solusi AppleScript.
Berikut ini adalah AppleScript menggunakan skrip UI yang mencari proses yang tidak merespons dan membunuhnya.
Ini akan bekerja dengan Monitor Aktivitas Mavericks. Tetapi karena ini adalah skrip UI dan karena UI Monitor Aktivitas berubah, ini kemungkinan besar tidak akan bekerja dengan OS X yang lebih lama tanpa beberapa modifikasi kecil.
sumber
tell radio button 1 of radio
. Saya menghapusnya dan men-tweak beberapa hal lain (saya hanya ingin mematikan program tertentu) dan mendapatkan error runtime: 'error "System Events mendapat kesalahan: Akses untuk perangkat bantu dinonaktifkan." nomor -1719 dari jendela 1 proses "Monitor Aktivitas" 'tell radio button 1 of radio group 1 of group 2 of toolbar 1 of window 1 to click
(Posting ini sebagai jawaban terpisah karena terlalu lama untuk dimasukkan dalam komentar)
Kredit ke @MatthieuRiegler untuk skrip asli.
Ini berfungsi pada 10.12.6 dan merupakan modifikasi kecil dari skrip asli (lihat komentar @ CharlieGorichanaz setelah saya melakukan penyelidikan sendiri):
** 1 Dalam macOS 10.12.x, bilah alat berisiikontambahanyang digunakan
group 2 of toolbar 1
sebagai gantirangkaian tombol (CPU, Memori, Energi, dll.)group 1 of toolbar 1
. Dengan tidak adanya ikon itu (saya belum mengkonfirmasi dalam versi macOS yang lebih lama), saya percaya tombol CPU dll akan masukgroup 1 of toolbar 1
** 2 Ini berlaku jika Anda pernah menyeret kolom PID di kolom Activity ke posisi yang berbeda. Saya telah menyeret kolom PID ke posisi paling kiri sehingga pada baris ini, saya harus mengubah indeks ke
1
:Kolom diberi nomor dari paling kiri, mulai dari 1. Jadi, sesuaikan indeks yang disorot di baris di atas sesuai jika diperlukan.
sumber