Pendahuluan
history
command di Linux adalah alat shell bawaan yang menampilkan daftar perintah yang digunakan dalam sesi terminal. history
memungkinkan pengguna untuk menggunakan kembali perintah apa pun yang terdaftar tanpa mengetik ulang.
Dalam tutorial ini, kami akan menunjukkan kepada Anda bagaimana history
perintah bekerja dan cara berbeda untuk menggunakannya.
Prasyarat
- Sistem yang menjalankan Linux.
- Akun dengan hak istimewa sudo.
- Akses ke jendela terminal.
Cara Menggunakan Perintah sejarah Linux
Menggunakan history
perintah tanpa opsi menampilkan daftar perintah yang digunakan sejak awal sesi terminal:
history
Untuk menampilkan daftar riwayat perintah dengan jumlah entri yang terbatas, tambahkan nomor tersebut ke history
memerintah. Misalnya, untuk hanya menampilkan lima entri terbaru, gunakan:
history 5
Setelah Anda menutup terminal, shell Bash menyimpan entri riwayat perintah baru di .bash_history berkas.
Gunakan Tanggal dan Stempel Waktu
.bashrc file menyimpan pengaturan Bash shell. Memodifikasi file ini memungkinkan Anda mengubah format keluaran history
perintah.
Buka .bashrc file menggunakan editor teks seperti Nano:
sudo nano .bashrc
Untuk mengubah format output untuk menyertakan tanggal dan stempel waktu, tambahkan baris berikut ke .bashrc berkas:
export HISTTIMEFORMAT="%c "
Menggunakan argumen yang berbeda setelah HISTTIMEFORMAT
memungkinkan Anda untuk menyesuaikan tingkat detail dalam stempel waktu:
%d
:Hari%m
:Bulan%y
:Tahun%H
:Jam%M
:Menit%S
:Detik%F
:Tanggal lengkap (format Y-M-D)%T
:Waktu (format H:M:S)%c
:Tanggal dan stempel waktu lengkap (format Hari-H-M-Y H:M:S)
Simpan perubahan ke .bashrc file, luncurkan ulang terminal, dan jalankan history
perintah untuk mengkonfirmasi format keluaran baru:
history
Melihat Ukuran Buffer Sejarah
.bashrc file berisi dua entri yang mengontrol ukuran buffer histori:
HISTSIZE
:Jumlah maksimum entri untuk daftar riwayat.HISTFILESIZE
:Jumlah maksimum entri dalam .bash_history berkas.
Mengedit HISTSIZE
dan HISTFILESIZE
nilai mengubah cara shell Bash menampilkan dan menyimpan riwayat perintah.
Misalnya, mengubah HISTSIZE
nilai ke 10
membuat history
daftar perintah menampilkan maksimal 10 entri terbaru.
Menyimpan perubahan ke .bashrc file, meluncurkan kembali terminal, dan menjalankan history
perintah mengkonfirmasi format keluaran baru:
history
Ulangi Perintah
Menjalankan history
perintah memungkinkan Anda untuk menggunakan kembali salah satu perintah pada daftar. Misalnya, untuk menjalankan perintah pertama (sudo apt update
) lagi, gunakan:
!1
Menambahkan tanda hubung (- ) sebelum nomor perintah memulai hitungan dari akhir daftar. Misalnya, untuk menggunakan kembali perintah terakhir kesepuluh (history 5
), gunakan:
!-10
Gunakan tanda seru ganda untuk mengulangi perintah terakhir:
!!
Cari Perintah dengan String
Menambahkan string setelah tanda seru menjalankan perintah terbaru yang dimulai dengan string itu. Misalnya, untuk menggunakan kembali perintah terbaru yang dimulai dengan sudo
, gunakan:
!sudo
Menggunakan metode ini dapat menyebabkan masalah jika shell menjalankan perintah yang tidak terduga, terutama saat mencari perintah yang dimulai dengan sudo
. Sebagai tindakan pencegahan, tambahkan :p
argumen menampilkan perintah tanpa menjalankannya, memungkinkan Anda untuk meninjau perintah dan memutuskan apakah Anda ingin menjalankannya.
!sudo:p
Untuk mencari perintah yang berisi string, tetapi mungkin tidak dimulai dengannya, tambahkan tanda tanya di sebelah tanda seru. Misalnya, untuk menggunakan kembali perintah terakhir yang berisi echo
:
!?echo
Pada contoh di atas, shell menggunakan kembali perintah terakhir yang berisi echo
string meskipun perintah dimulai dengan sudo
.
Mencantumkan Perintah yang Cocok
Menggabungkan history
dan grep
memungkinkan Anda untuk menampilkan daftar perintah yang berisi string. Misalnya, untuk membuat daftar semua perintah yang mengandung ufw
, gunakan:
history | grep ufw
Ubah Perintah yang Dieksekusi
Gunakan sintaks berikut untuk mengubah perintah yang terakhir dieksekusi:
^[old string]^[new string]^
Misalnya, ufw
perintah untuk mengaktifkan port 20 menunjukkan bahwa port sudah diaktifkan:
sudo ufw allow 20/tcp
Gunakan sintaks di atas untuk mengubah nomor port dari 20 menjadi 22:
^20^22^
Mencegah Perintah Merekam dalam Riwayat
Untuk mencegah perintah perekaman dalam daftar riwayat, nonaktifkan perekaman untuk sementara dengan menggunakan:
set +o history
Untuk mengaktifkan kembali perekaman, gunakan:
set -o history
Hapus Riwayat
Gunakan -d
opsi dengan history
perintah untuk menghapus perintah dari daftar riwayat. Misalnya, hapus perintah nomor 87 dengan:
history -d 87
Gunakan -c
opsi untuk menghapus seluruh daftar riwayat:
history -c
Perbarui File Riwayat
Shell Bash menyimpan pembaruan apa pun ke daftar riwayat perintah saat Anda keluar dari sesi terminal. history
perintah juga memungkinkan Anda untuk menyimpan perubahan saat berada di sesi terminal.
Menggunakan -a
opsi memungkinkan Anda menambahkan entri riwayat perintah dari sesi ini ke .bash_history berkas:
history -a
Metode lain adalah dengan menggunakan -w
opsi untuk menyimpan seluruh daftar riwayat ke .bash_history berkas:
history -w