Saat saya menghabiskan lebih banyak waktu di sesi terminal, rasanya seperti saya terus menemukan perintah baru yang membuat tugas harian saya lebih efisien. history
GNU perintah adalah salah satu yang benar-benar mengubah hari kerja saya.
history
GNU command menyimpan daftar semua perintah lain yang telah dijalankan dari sesi terminal itu, lalu memungkinkan Anda untuk memutar ulang atau menggunakan kembali perintah tersebut alih-alih mengetik ulang. Jika Anda adalah pengguna terminal yang berpengalaman, Anda tahu tentang kekuatan history
, tetapi bagi kami yang baru mencoba atau sysadmin baru, history
adalah peningkatan produktivitas langsung.
Pertama-tama, history
perintah sebenarnya bukan perintah. Anda dapat melihatnya sendiri dengan mencari perintah di sistem Anda:
$ which history
which: no history in (/usr/local/bin:/usr/bin:/bin:/usr/games:/usr/local/sbin)
Komputer Anda tidak dapat menemukan history
perintah karena ini adalah kata kunci bawaan dari shell Anda. Karena ditulis ke dalam shell yang Anda gunakan, mungkin ada beberapa variasi dalam perilaku riwayat tergantung pada apakah Anda menggunakan Bash, tcsh, Zsh, dash, fish, ksh, dan seterusnya. Artikel ini didasarkan pada implementasi Bash dari sejarah, jadi beberapa fungsi mungkin tidak bekerja di shell lain. Namun, sebagian besar fungsi dasarnya sama.
Sejarah 101
Untuk melihat history
dalam tindakan, buka program terminal pada instalasi Linux Anda dan ketik:
$ history
Berikut tanggapan yang saya dapatkan:
1 clear
2 ls -al
3 sudo dnf update -y
4 history
history
command menampilkan daftar perintah yang dimasukkan sejak Anda memulai sesi. Kegembiraan history
adalah sekarang Anda dapat memutar ulang salah satunya dengan menggunakan perintah seperti:
$ !3
!3
perintah pada prompt memberitahu shell untuk menjalankan kembali perintah pada baris 3 dari daftar sejarah. Saya juga dapat mengakses perintah itu dengan memasukkan:
$ !sudo dnf
Ini meminta history
untuk mencari perintah terakhir yang cocok dengan pola yang Anda berikan (dalam hal ini, pola tersebut adalah dnf ) dan jalankan.
Riwayat penelusuran
Anda juga dapat menggunakan history
untuk menjalankan kembali perintah terakhir yang Anda masukkan dengan mengetikkan !!
. Dengan memasangkannya dengan grep
, Anda dapat menelusuri perintah yang cocok dengan pola teks atau, dengan menggunakannya dengan tail
, Anda dapat menemukan beberapa perintah terakhir yang Anda jalankan. Misalnya:
$ history | grep dnf
3 sudo dnf update -y
5 history | grep dnf
$ history | tail -n 3
4 history
5 history | grep dnf
6 history | tail -n 3
Cara lain untuk mendapatkan fungsi pencarian ini adalah dengan mengetikkan Ctrl-R
untuk menjalankan pencarian rekursif dari riwayat perintah Anda. Setelah mengetik ini, prompt berubah menjadi:
(reverse-i-search)`':
Sekarang Anda dapat mulai mengetik perintah, dan perintah yang cocok akan ditampilkan untuk Anda jalankan dengan menekan Kembali atau Masuk .
Mengubah perintah yang dieksekusi
Anda juga dapat menggunakan history
untuk menjalankan kembali perintah dengan sintaks yang berbeda. Anda dapat merevisi riwayat dengan history
. Misalnya, jika saya ingin mengubah perintah sebelumnya history | grep dnf
ke history | grep ssh
, saya dapat menjalankan perintah berikut ini:
$ ^dnf^ssh^
Perintah dijalankan kembali, tetapi dengan dnf
diganti dengan ssh
. Dengan kata lain, perintah ini dijalankan:
$ history | grep ssh
Menghapus riwayat
Mungkin ada saatnya Anda ingin menghapus beberapa atau semua perintah di file riwayat Anda. Jika Anda ingin menghapus perintah tertentu, masukkan history -d <line number>
. Untuk menghapus seluruh isi file history, jalankan history -c
.
File riwayat disimpan dalam file yang dapat Anda modifikasi juga. Pengguna bash shell menemukannya di direktori home mereka sebagai .bash_history
.
Langkah selanjutnya
Ada beberapa hal lain yang dapat Anda lakukan dengan history
:
- Setel ukuran buffer riwayat Anda ke sejumlah perintah tertentu
- Catat tanggal dan waktu untuk setiap baris dalam sejarah
- Mencegah perintah tertentu agar tidak direkam dalam riwayat
Untuk informasi lebih lanjut tentang history
perintah dan hal menarik lainnya yang dapat Anda lakukan dengannya, lihat artikel Seth Kenlon tentang parsing history, history search modifiers, dan GNU Bash Manual.
Artikel ini awalnya diterbitkan pada Juni 2018 dan telah diperbarui dengan informasi tambahan oleh editor.