Cara Menggunakan Perintah masa pada Linux

PC Linux dengan tetingkap terminal terbuka

Fatmawati Achmad Zaenuri/Shutterstock.com



Ingin tahu berapa lama proses berjalan dan banyak lagi? Linux |_+_| arahan mengembalikan statistik masa, memberikan anda cerapan hebat tentang sumber yang digunakan oleh program anda.

masa Mempunyai Ramai Kerabat

Terdapat banyak pengedaran Linux dan sistem pengendalian seperti Unix yang berbeza. Setiap daripada ini mempunyai shell arahan lalai. Cangkang lalai yang paling biasa dalam pengedaran Linux moden ialah cangkang bash. Tetapi terdapat banyak lagi, seperti cangkang Z (zsh) dan cangkang Korn (ksh).





Semua cangkerang ini menggabungkan |_+_| mereka sendiri perintah, sama ada sebagai a terbina dalam perintah atau sebagai a perkataan terpelihara . Apabila anda menaip |__+_| dalam tetingkap terminal shell akan melaksanakan arahan dalamannya dan bukannya menggunakan GNU |_+_| binari yang disediakan sebagai sebahagian daripada pengedaran Linux anda.

Kami mahu menggunakan versi GNU |__+_| kerana ia mempunyai lebih banyak pilihan dan lebih fleksibel.



Masa yang manakah Akan Berlari?

Anda boleh menyemak versi yang akan dijalankan dengan menggunakan |__+_| perintah. |_+_| akan memberitahu anda sama ada shell akan mengendalikan arahan anda sendiri, dengan rutin dalamannya, atau menyampaikannya kepada binari GNU.

Iklan

dalam tetingkap terminal taip perkataan |_+_|, ruang, dan kemudian perkataan |_+_| dan tekan Enter.

time

taip masa dalam tetingkap terminal bash



Kita dapat melihatnya dalam bash shell |_+_| ialah perkataan terpelihara. Ini bermakna Bash akan menggunakan dalamannya|_+_| rutin secara lalai.

time

taip masa dalam tetingkap terminal zsh

Dalam cengkerang Z (zsh) |_+_| ialah perkataan terpelihara, jadi rutin shell dalaman akan digunakan secara lalai.

time

taip masa dalam tetingkap kulit Korn

Dalam cangkerang Korn |__+_| ialah kata kunci. Rutin dalaman akan digunakan dan bukannya GNU |__+_| perintah.

BERKAITAN: Apakah ZSH, dan Mengapa Anda Perlu Menggunakannya Daripada Bash?

Menjalankan Perintah masa GNU

Jika shell pada sistem Linux anda mempunyai |__+_| dalaman rutin anda perlu jelas jika anda ingin menggunakan GNU |_+_| binari. Anda mesti sama ada:

  • Sediakan keseluruhan laluan ke binari, seperti |__+_|. Jalankan |_+_| perintah untuk mencari jalan ini.
  • Gunakan |_+_|.
  • Gunakan garis miring ke belakang seperti |__+_|.

|_+_| arahan memberi kita laluan ke binari.

Iklan

Kita boleh menguji ini dengan menggunakan |__+_| sebagai arahan untuk melancarkan binari GNU. Itu berkesan. Kami mendapat respons daripada |__+_| arahan memberitahu kami bahawa kami tidak menyediakan sebarang parameter baris arahan untuk berfungsi.

Menaip |_+_| juga berfungsi, dan kami mendapat maklumat penggunaan yang sama daripada |__+_|. |_+_| arahan memberitahu shell untuk mengabaikan arahan seterusnya supaya ia diproses di luar shell.

Menggunakan |_+_| aksara sebelum nama arahan adalah sama seperti menggunakan |__+_| sebelum nama arahan.

Cara paling mudah untuk memastikan anda menggunakan GNU |__+_| binari adalah untuk menggunakan pilihan garis miring ke belakang.

time time

|_+_| menyeru cangkerang versi masa. |_+_| menggunakan |_+_| binari .

Menggunakan Perintah masa

Mari kita masa beberapa program. Kami menggunakan dua atur cara yang dipanggil |__+_| dan |_+_|. Mereka dicipta daripada gelung1.c dan gelung2.c. Mereka tidak melakukan apa-apa yang berguna selain daripada menunjukkan kesan satu jenis ketidakcekapan pengekodan.

Iklan

Ini ialah gelung1.c. Panjang rentetan diperlukan dalam dua gelung bersarang. Panjang diperoleh terlebih dahulu, di luar dua gelung bersarang.

type

Ini ialah gelung2.c. Panjang rentetan diperoleh dari semasa ke semasa untuk setiap kitaran gelung luar. Ketidakcekapan ini sepatutnya muncul dalam masa.

type

Mari hidupkan |__+_| atur cara dan gunakan |__+_| untuk mengukur prestasinya.

type

Sekarang mari kita lakukan perkara yang sama untuk |_+_|.

time

Itu memberi kami dua set hasil, tetapi keputusan itu dalam format yang sangat buruk. Kita boleh melakukan sesuatu tentang perkara itu kemudian, tetapi mari kita pilih beberapa maklumat daripada keputusan.

Apabila program dijalankan, terdapat dua mod pelaksanaan yang ia ditukar ke sana ke mari. Ini dipanggil mod pengguna dan mod kernel .

Secara ringkasnya, proses dalam mod pengguna tidak boleh terus mengakses perkakasan atau memori rujukan di luar peruntukannya sendiri. Untuk mendapatkan akses kepada sumber tersebut, proses mesti membuat permintaan kepada kernel. Jika kernel meluluskan permintaan proses memasuki pelaksanaan mod kernel sehingga keperluan telah dipenuhi. Proses itu kemudiannya ditukar kembali kepada pelaksanaan mod pengguna.

Iklan

Keputusan untuk |__+_| beritahu kami bahawa |__+_| menghabiskan 0.09 saat dalam mod pengguna. Ia sama ada menghabiskan masa sifar dalam mod kernel atau masa dalam mod kernel adalah nilai yang terlalu rendah untuk didaftarkan setelah ia dibundarkan ke bawah. Jumlah masa berlalu ialah 0.1 saat. |_+_| telah dianugerahkan purata 89% masa CPU sepanjang tempoh jumlah masa berlalunya.

Yang tidak cekap |__+_| program mengambil masa tiga kali lebih lama untuk dilaksanakan. Jumlah masa berlalunya ialah 0.3 saat. Tempoh masa pemprosesan dalam mod pengguna ialah 0.29 saat. Tiada apa-apa yang mendaftar untuk mod kernel. |_+_| telah dianugerahkan purata 96% masa CPU untuk tempoh ia dijalankan.

Memformat Output

Anda boleh menyesuaikan output daripada |__+_| menggunakan rentetan format. Rentetan format boleh mengandungi penentu teks dan format. Senarai penentu format boleh ditemui pada halaman lelaki untuk |_+_|. Setiap penentu format mewakili sekeping maklumat.

Apabila rentetan dicetak, penentu format digantikan dengan nilai sebenar yang diwakilinya. Sebagai contoh, penentu format untuk peratusan CPU ialah huruf |_+_| . Untuk menunjukkan kepada |__+_| bahawa penentu format bukan sekadar huruf biasa, tambahkan tanda peratusan padanya, seperti |_+_| . Mari kita gunakannya dalam contoh.

|_+_| (rentetan format) pilihan digunakan untuk memberitahu |_+_| bahawa yang berikut ialah rentetan format.

Rentetan format kami akan mencetak aksara Program: dan nama program (dan sebarang parameter baris arahan yang anda hantar ke program). |_+_| penentu format bermaksud Nama dan argumen baris perintah bagi arahan yang dimasa. |_+_| menyebabkan output berpindah ke baris seterusnya.

Iklan

Terdapat banyak penentu format dan ia adalah sensitif huruf besar-besaran, jadi pastikan anda memasukkannya dengan betul apabila anda melakukan ini untuk diri anda sendiri.

Seterusnya, kami akan mencetak aksara Jumlah masa: diikuti dengan nilai jumlah masa berlalu untuk larian program ini (diwakili oleh |__+_|).

Kami menggunakan |_+_| untuk memberikan satu lagi baris baru. Kami kemudian akan mencetak aksara Mod Pengguna (s) , diikuti dengan nilai masa CPU yang dibelanjakan dalam mod pengguna, yang ditandakan oleh |_+_|.

Kami menggunakan |_+_| untuk memberikan satu lagi baris baru. Kali ini kita sedang bersedia untuk nilai masa kernel. Kami mencetak aksara Mod Kernel (s) , diikuti dengan penentu format untuk masa CPU yang dihabiskan dalam mod kernel, iaitu |_+_|.

Akhir sekali, kami akan mencetak aksara |__+_|CPU: untuk memberi kami baris baharu dan tajuk untuk nilai data ini. |_+_| penentu format akan memberikan purata peratusan masa CPU yang digunakan oleh proses bermasa.

Seluruh rentetan format dibalut dengan tanda petikan. Kami boleh memasukkan beberapa |__+_| aksara untuk meletakkan tab dalam output jika kita cerewet tentang penjajaran nilai.

time

Menghantar Output Ke Fail

Untuk menyimpan rekod pemasaan daripada ujian yang telah anda jalankan, anda boleh menghantar output daripada |_+_| kepada fail. Untuk melakukan ini gunakan |__+_| (output) pilihan. Output daripada program anda masih akan dipaparkan dalam tetingkap terminal. Ia hanya keluaran daripada |__+_| yang dihalakan semula ke fail.

Iklan

Kami boleh menjalankan semula ujian dan menyimpan output ke |__+_| fail seperti berikut:

time time

|_+_| output program dipaparkan dalam tetingkap terminal dan hasil daripada |__+_| pergi ke |__+_| fail.

Jika anda ingin menangkap set hasil seterusnya dalam fail yang sama, anda mesti menggunakan |_+_| (tambah) pilihan seperti berikut:

time time

Ia kini sepatutnya jelas mengapa kami menggunakan |__+_| penentu format untuk memasukkan nama program dalam output daripada rentetan format.

Dan Kami Kehabisan Masa

Mungkin kebanyakannya digunakan oleh pengaturcara dan pembangun untuk menyempurnakan kod mereka, |_+_| arahan juga berguna untuk sesiapa sahaja yang ingin mengetahui lebih lanjut tentang perkara yang berlaku di bawah hud setiap kali anda melancarkan program.

Perintah Linux
Fail tar · pv · kucing · tac · chmod · cengkaman · perbezaan · sed · Dengan · lelaki · pushd · popd · fsck · testdisk · seq · fd · pandoc · CD · $PATH · awk · sertai · jq · lipat · uniq · journalctl · ekor · negeri · ls · fstab · dibuang · kurang · chgrp · chown · rev · tengok · rentetan · taip · menamakan semula · zip · buka zip · lekapkan · umount · pasang · fdisk · mkfs · rm · rmdir · rsync · df · gpg · kita · nano · mkdir · daripada · ln · tampalan · menukar · rclone · carik-carik · SRM
Proses alias · skrin · atas · bagus · renice · kemajuan · jejak · sistem · tmux · chsh · sejarah · di · kumpulan · percuma · yang · dmesg · usermod · ps · chroot · xargs · tty · pinky · lsof · vmstat · masa tamat · dinding · ya · bunuh · tidur · sudo · miliknya · masa · tambah kumpulan · usermod · kumpulan · lshw · menutup · but semula · berhenti · matikan · passwd · lscpu · crontab · Tarikh · bg · fg
Rangkaian netstat · ping · traceroute · ip · ss · siapakah · fail2ban · bmon · awak · jari · nmap · ftp · keriting · wget · who · siapakah saya · Dalam · iptables · ssh-keygen · ufw

BERKAITAN: Komputer Riba Linux Terbaik untuk Pembangun dan Penggemar

BACA SETERUSNYA
  • › Fungsi vs. Formula dalam Microsoft Excel: Apakah Perbezaannya?
  • › Folder Komputer Berusia 40: Bagaimana Bintang Xerox Mencipta Desktop
  • › Cara Mencari Spotify Anda Dibungkus 2021
  • & rsaquo; Cyber ​​Monday 2021: Tawaran Teknologi Terbaik
  • › 5 Laman Web Setiap Pengguna Linux Perlu Penanda Halaman
  • › Apakah itu MIL-SPEC Drop Protection?
Foto Profil untuk Dave McKay Dave McKay
Dave McKay pertama kali menggunakan komputer apabila pita kertas yang ditebuk sedang popular, dan dia telah memprogramkan sejak itu. Selepas lebih 30 tahun dalam industri IT, beliau kini seorang wartawan teknologi sepenuh masa. Semasa kerjayanya, beliau telah bekerja sebagai pengaturcara bebas, pengurus pasukan pembangunan perisian antarabangsa, pengurus projek perkhidmatan IT, dan, yang terbaru, sebagai Pegawai Perlindungan Data. Tulisannya telah diterbitkan oleh howtogeek.com, cloudsavvyit.com, itenterpriser.com, dan opensource.com. Dave ialah seorang penginjil Linux dan penyokong sumber terbuka.
Baca Bio Penuh

Artikel Yang Menarik