Bagaimana saya menjalankan program X kali di terminal?
Saya membaca bahwa saya harus melakukan bin / bash txt, tapi saya tidak tahu bagaimana menjalankan X kali ini.
command-line
pengguna3597989
sumber
sumber
Jawaban:
Anda bisa menggunakan
xargs
danseq
. Umumnya:Sebagai contoh:
akan menjalankan
xdotool click 1
perintah sebanyak 10 kali.sumber
Buka Terminal dan gunakan
bash
perintah berikut :Dengan sedikit verbosity dan 1s delay:
sumber
$
. Itu hanya ada untuk menunjukkan prompt shell sepertisylvain@sylvain-ThinkPad-T430s:~$
. Kami biasanya menambahkannya ke jawaban baris perintah untuk membedakan perintah dari hasilnya.Ini harus dilakukan:
di mana 10 adalah berapa kali untuk menjalankan perintah
jika Anda perlu membangun sedikit istirahat:
Salin skrip ke file kosong, ganti
<command to run>
denganxdotool
perintah Anda , simpan sebagairun_xdotool.sh
, jalankan dengan perintah:Atau, Anda dapat membuatnya dapat dijalankan dan jalankan saja
Solusi lain: menggunakan opsi pengulangan bawaan xdotool
Karena Anda menyebutkan untuk menggunakannya untuk melakukan klik, cara termudah mungkin adalah dengan menggunakan
xdotool
opsi pengulangan bawaan. Formatnya adalah:Untuk melakukan 10 klik mouse (tombol 1) berturut-turut, satu detik di antaranya, perintahnya adalah:
sumber
Jika Anda memiliki GNU Parallel Anda dapat menjalankan:
Semua komputer baru memiliki banyak inti, tetapi sebagian besar program bersifat serial dan karenanya tidak akan menggunakan banyak inti. Namun, banyak tugas yang sangat dapat diparalelkan:
GNU Parallel adalah pemaralel umum dan membuatnya mudah untuk menjalankan pekerjaan secara paralel pada mesin yang sama atau pada beberapa mesin yang Anda miliki akses ssh.
Jika Anda memiliki 32 pekerjaan berbeda yang ingin Anda jalankan pada 4 CPU, cara langsung untuk memparalelkan adalah menjalankan 8 pekerjaan pada setiap CPU:
GNU Paralel sebagai gantinya memunculkan proses baru ketika proses selesai - menjaga CPU tetap aktif dan dengan demikian menghemat waktu:
Instalasi
Instalasi pribadi tidak memerlukan akses root. Ini dapat dilakukan dalam 10 detik dengan melakukan ini:
Untuk opsi instalasi lain, lihat http://git.savannah.gnu.org/cgit/parallel.git/tree/README
Belajarlah lagi
Lihat lebih banyak contoh: http://www.gnu.org/software/parallel/man.html
Tonton video intro: https://www.youtube.com/playlist?list=PL284C9FF2488BC6D1
Ikuti tutorialnya: http://www.gnu.org/software/parallel/parallel_tutorial.html
Mendaftar untuk daftar email untuk mendapatkan dukungan: https://lists.gnu.org/mailman/listinfo/parallel
sumber
parallel -N0 doit ::: {1..10}
{1..10}
bekerja di (t) csh / fish / ash, dan{1..10}
konstruknya dibatasi oleh panjang baris perintah, jadi ini tidak akan berfungsi:{1..1000000000}
sedangkanseq 1000000000
akan bekerja dengan baik. Tetapi untuk sebagian besar situasi{1..10}
akan berfungsi seperti yang diharapkan, dan saya sering menggunakannya juga.Anda dapat menggunakan
for
loop gaya C yang memiliki keunggulan dibandingkan versi brace-expansion ({1..5}
) karena dapat menggunakan variabel untuk menentukan titik akhir. Versi mana pun lebih baik daripada menggunakan utilitas eksternal (seq
).Semua dalam satu baris:
Atau Anda mungkin dapat melakukannya tanpa loop (untuk utilitas dan fungsi spesifik ini):
sumber
Cukup Anda dapat menggunakan perintah arloji:
ubah x ke waktu dalam detik.
Contoh:
Jadi, xdotool klik 1 akan diulangi setiap 1 detik, hentikan jika sudah selesai.
sumber