GNU/Linux >> Belajar Linux >  >> Linux

Cara Terbaik Untuk Membatalkan Semua Pekerjaan Slurm Dari Keluaran Perintah Shell?

Saya mengirimkan banyak skrip pekerjaan SLURM dengan batas waktu debug (saya lupa mengubah waktu untuk menjalankan yang sebenarnya). Sekarang semuanya diserahkan pada saat yang sama, jadi semuanya dimulai dengan ID pekerjaan 197xxxxx. Sekarang, saya bisa melakukannya

squeue -u $USER | grep 197 | awk '{print $1}' 

untuk mencetak ID pekerjaan yang ingin saya hapus. Tapi bagaimana cara menggunakan perintah scancel pada semua ID ini. Output dari perintah shell di atas akan terlihat seperti

19726664
19726663
19726662
19726661
19726660
19726659
19726658
19726657
19726656
19726655
19726654
19726653
19726652
19726651
19726650

Jawaban yang Diterima:

squeue -u $USER | grep 197 | awk '{print $1}' | xargs -n 1 scancel

Periksa dokumentasi untuk xargs untuk rincian. Jika scancel menerima beberapa id pekerjaan (seharusnya), Anda dapat menghilangkan -n 1 bagian.


Linux
  1. Menampilkan daftar semua pekerjaan 'at' dan perintahnya masing-masing

  2. Bagaimana cara Menghapus baris 'n' Pertama/Terakhir dari output perintah di Shell?

  3. Bagaimana Cara Menetapkan Output Perintah Ke Variabel Shell?

  1. Apa Perbedaan Get Command Output Menggunakan`command`dan $(command) Di Shell??

  2. Bagaimana Cara Mengatur Variabel Sama Dengan Output Dari Perintah Di Grub2?

  3. Cara Meratakan Gambar .pdf Dari Baris Perintah?

  1. Apa Cara Distro/shell-agnostik Terbaik Untuk Mengatur Variabel Lingkungan?

  2. Menghilangkan baris pertama dari keluaran perintah Linux mana pun

  3. Bagaimana cara menjalankan perintah Vim dari shell?