Dalam panduan ini kita akan melihat cara menggunakan skrip dan putar ulang skrip perintah di Linux yang dapat membantu Anda merekam perintah dan outputnya yang dicetak di terminal Anda selama sesi tertentu.
Perintah history adalah utilitas baris perintah yang membantu pengguna untuk menyimpan perintah sebelumnya yang digunakan, meskipun tidak menyimpan output dari suatu perintah.
Jangan' t Nona: Showterm.io – Alat Perekaman Terminal Linux
Jangan' t Nona: 8 Perekam Layar Desktop Terbaik untuk Linux
Oleh karena itu skrip perintah berguna untuk memberi Anda fungsionalitas yang kuat yang membantu Anda merekam semua yang dicetak di terminal Anda ke log_file . Anda kemudian dapat merujuk ke file ini nanti jika Anda ingin melihat output dari perintah dalam riwayat dari log_file .
Anda juga dapat memutar ulang perintah yang Anda rekam menggunakan putar ulang skrip perintah dengan menggunakan informasi waktu.
Cara Merekam Terminal Linux Menggunakan Perintah skrip
skrip perintah menyimpan aktivitas terminal dalam file log yang dapat diberi nama oleh pengguna, ketika nama tidak diberikan oleh pengguna, nama file default, typescript digunakan.
Sintaks Dasar Perintah skrip
# script [options] - -timing=timing_file log_filename
Untuk mulai merekam terminal Linux, ketik script dan tambahkan log nama file seperti yang ditunjukkan.
[email protected] ~ $ script history_log.txt Script started, file is history_log.txt
Untuk menghentikan skrip , ketik keluar dan tekan [Enter] .
[email protected] ~ $ exit Script done, file is history_log.txt
Jika skrip tidak dapat menulis ke file log bernama maka itu menunjukkan kesalahan.
Misalnya, pada output di bawah ini, izin file typescript tidak mengizinkan pembacaan, penulisan, dan eksekusi file bukan oleh pengguna atau grup mana pun. Saat Anda menjalankan perintah skrip tanpa nama file log, ia mencoba menulis ke file default, typescript karenanya menunjukkan kesalahan.
[email protected] ~ $ ls -l typescript --------- 1 ubuntu ubuntu 144 Sep 15 00:00 typescript [email protected] ~ $ script script: open failed: typescript: Permission denied Terminated
Contoh penggunaan perintah skrip
Saya telah menamai file log saya script.log pada contoh di bawah, Anda dapat memberikan nama yang berbeda untuk file Anda.
[email protected] ~ $ script script.log
Sekarang coba jalankan beberapa perintah agar skrip dapat merekam perintah yang dijalankan di terminal.
[email protected] ~ $ cal September 2015 Su Mo Tu We Th Fr Sa 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 [email protected] ~ $ w 14:49:40 up 4:06, 2 users, load average: 1.37, 1.56, 1.62 USER TTY FROM [email protected] IDLE JCPU PCPU WHAT tecmint tty8 :0 10:45 4:06m 7:40 0.36s x-session-manager tecmint pts/5 :0 13:42 4.00s 0.07s 0.00s script script.log [email protected] ~ $ uptime 14:49:43 up 4:06, 2 users, load average: 1.37, 1.56, 1.62 [email protected] ~ $ whoami tecmint [email protected] ~ $ echo 'using script' using script [email protected] ~ $ exit exit Script done, file is script.log
Sekarang coba lihat file log ‘script.log ' untuk semua perintah yang direkam, saat Anda melihat log, Anda menyadari bahwa skrip juga menyimpan umpan baris dan spasi mundur.
[email protected] ~ $ vi script.log
Contoh Keluaran
^[[0m^[[255D^[[01;[email protected]^[[01;34m ~ $^[[00m cal^M September 2015 ^M Su Mo Tu We Th Fr Sa ^M 1 2 3 4 5 ^M 6 7 8 9 10 11 12 ^M 13 14 15 ^[[7m16^[[27m 17 18 19 ^M 20 21 22 23 24 25 26 ^M 27 28 29 30 ^M ^M ^[[01;[email protected]^[[01;34m ~ $^[[00m w^M 14:49:40 up 4:06, 2 users, load average: 1.37, 1.56, 1.62^M USER TTY FROM [email protected] IDLE JCPU PCPU WHAT^M tecmint tty8 :0 10:45 4:06m 7:40 0.36s x-session-manager^M tecmint pts/5 :0 13:42 4.00s 0.07s 0.00s script script.log^M ^[[01;[email protected]^[[01;34m ~ $^[[00m uptime^M 14:49:43 up 4:06, 2 users, load average: 1.37, 1.56, 1.62^M ^[[01;[email protected]^[[01;34m ~ $^[[00m whoami^M tecmint^M ^[[01;[email protected]^[[01;34m ~ $^[[00m echo ''^Hu'^Hs'^Hi'^Hn'^Hg'^H '^Hs'^Hc'^Hr'^Hi'^Hp'^Ht'^H^M using script^M ^[[01;[email protected]^[[01;34m ~ $^[[00m exit^M exit^M Script done on Wednesday 16 September 2015 02:49:59 PM IST ~
Anda dapat menggunakan -a opsi untuk menambahkan file log atau TypeScript, mempertahankan konten sebelumnya.
[email protected] ~ $ script -a script.log Script started, file is script.log [email protected] ~ $ date Wed Sep 16 14:59:36 IST 2015 [email protected] ~ $ pwd /home/tecmint [email protected] ~ $ whereis script script: /usr/bin/script /usr/bin/X11/script /usr/share/man/man1/script.1.gz [email protected] ~ $ whatis script script (1) - make typescript of terminal session
Lihat isi skrip, log setelah menggunakan -a opsi untuk menambahkannya.
[email protected] ~ $ vi script.log
Contoh Keluaran
^[[0m^[[255D^[[01;[email protected]^[[01;34m ~ $^[[00m date^M Wed Sep 16 14:59:36 IST 2015^M ^[[01;[email protected]^[[01;34m ~ $^[[00m pwd^M /home/tecmint^M ^[[01;[email protected]^[[01;34m ~ $^[[00m whre^H^[[K^H^[[Kereis script^M script: /usr/bin/script /usr/bin/X11/script /usr/share/man/man1/script.1.gz^M ^[[01;[email protected]^[[01;34m ~ $^[[00m whatis script^M script (1) - make typescript of terminal session^M ^[[01;[email protected]^[[01;34m ~ $^[[00m vi s^H^[[K^H^[[K^H^[[K^H^[[Kexit^M exit^M
Untuk mencatat hasil dari satu perintah selain sesi shell interaktif, gunakan -c pilihan.
[email protected] ~ $ script -c 'hostname' script.log Script started, file is script.log tecmint.com Script done, file is script.log
Jika Anda ingin skrip berjalan dalam mode senyap, Anda dapat menggunakan -q pilihan. Anda tidak akan melihat pesan yang menunjukkan skrip mulai atau keluar.
[email protected] ~ $ script -c 'who' -q script.log tecmint tty8 2015-09-16 10:45 (:0) tecmint pts/5 2015-09-16 13:42 (:0)
Untuk menyetel informasi waktu ke kesalahan standar atau file, gunakan –waktu pilihan. Informasi pengaturan waktu berguna ketika Anda ingin menampilkan kembali output yang disimpan di log_file.
Mari kita mulai skrip dan jalankan perintah berikut w , waktu aktif dan kal untuk direkam.
[email protected] ~ $ script --timing=time.txt script.log Script started, file is script.log [email protected] ~ $ w 15:09:31 up 4:26, 2 users, load average: 1.38, 1.39, 1.47 USER TTY FROM [email protected] IDLE JCPU PCPU WHAT tecmint tty8 :0 10:45 4:26m 8:15 0.38s x-session-manager tecmint pts/5 :0 13:42 3.00s 0.09s 0.00s script --timing=time.txt script.log [email protected] ~ $ uptime 15:09:36 up 4:26, 2 users, load average: 1.43, 1.40, 1.48 [email protected] ~ $ cal September 2015 Su Mo Tu We Th Fr Sa 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
Anda dapat melihat script.log dan time.txt file untuk perintah waktu di atas.
[email protected] ~ $ vi script.log
Contoh Keluaran
^[[0m^[[255D^[[01;[email protected]^[[01;34m ~ $^[[00m w^M 15:12:05 up 4:28, 2 users, load average: 1.31, 1.37, 1.45^M USER TTY FROM [email protected] IDLE JCPU PCPU WHAT^M tecmint tty8 :0 10:45 4:28m 8:20 0.38s x-session-manager^M tecmint pts/5 :0 13:42 5.00s 0.09s 0.00s script --timing=time.txt script.log^M ^[[01;[email protected]^[[01;34m ~ $^[[00m uptime^M 15:12:07 up 4:28, 2 users, load average: 1.29, 1.36, 1.45^M ^[[01;[email protected]^[[01;34m ~ $^[[00m cal^M September 2015 ^M Su Mo Tu We Th Fr Sa ^M 1 2 3 4 5 ^M 6 7 8 9 10 11 12 ^M 13 14 15 ^[[7m16^[[27m 17 18 19 ^M 20 21 22 23 24 25 26 ^M 27 28 29 30 ^M ^M
Sekarang lihat time.txt berkas.
[email protected] ~ $ vi time.txt
Contoh Keluaran
0.259669 306 0.037680 829 0.000006 2 0.000002 100 0.000002 2 0.000002 102 0.000019 202 0.000004 2 0.000002 102 0.000015 100 0.000002 2 0.000003 2 0.000002 99 0.000011 2 0.000003 82 ...
time.txt file memiliki dua kolom, kolom pertama menunjukkan berapa banyak waktu yang telah berlalu sejak tampilan terakhir dan kolom kedua, menunjukkan jumlah karakter yang telah ditampilkan kali ini.
Gunakan halaman manual dan –bantuan untuk mencari opsi dan bantuan lainnya dalam menggunakan utilitas baris perintah skrip.
Menggunakan pemutaran ulang skrip untuk memutar ulang skrip menggunakan informasi waktu
Pemutaran ulang skrip perintah membantu memutar ulang informasi di log_file . Anda direkam oleh skrip perintah.
Informasi waktu ditentukan oleh -timing=file opsi yang digunakan dengan skrip perintah dan file dalam hal ini adalah file.txt yang digunakan dengan perintah skrip .
Ingat Anda harus menentukan log_file Anda gunakan dengan perintah skrip.
Sekarang mari kita ulangi tiga perintah terakhir w , waktu aktif dan kal yang telah kami jalankan sebagai berikut.
[email protected] ~ $ scriptreplay --timing=time.txt script.log
Saat log_file diputar ulang menggunakan informasi waktu, perintah yang direkam dijalankan dan outputnya ditampilkan pada saat yang sama dengan output aslinya ditampilkan saat direkam.
Ringkasan
Kedua perintah ini, skrip dan putar ulang skrip mudah digunakan dan banyak membantu ketika Anda perlu menjalankan kumpulan perintah yang sama beberapa kali. Mereka banyak membantu dalam mengelola server yang hanya memiliki antarmuka baris perintah untuk interaksi dengan sistem Anda. Semoga panduan ini bermanfaat dan jika Anda memiliki sesuatu untuk ditambahkan atau menghadapi tantangan saat menggunakannya, jangan ragu untuk mengirim komentar.