Pertanyaan Lihat riwayat perintah di terminal


Apakah ada cara untuk menyimpan semua perintah terminal yang saya ketik dan melihatnya seperti sejarah dalam buku catatan?


40
2018-05-17 12:35


asal




Jawaban:


Ini secara otomatis dilakukan. Bash menyimpan perintah Anda ~/.bash_history. Jika Anda ingin melihat sejarah, cetak hasil dari file ini menggunakan salah satunya

cat ~/.bash_history
less ~/.bash_history
...any other pager or output command...

Atau Anda dapat menggunakan perintah builtin bash:

history

Untuk menghapus riwayat, hapus file dan hapus riwayat sementara:

rm ~/.bash_history && history -c

Ukuran riwayat default menjadi 500 perintah. Anda dapat, bagaimanapun, meningkatkan ini dengan menambahkan baris berikut ke Anda ~./bashrc:

HISTSIZE=<number of entries, -1 for unlimited>

Ini tidak akan langsung berlaku, tetapi hanya untuk sesi yang baru dimulai. Untuk menerapkan ini, sumber daya file .bashrc:

. ~/.bashrc

atau lari HISTSIZE=... di sesi Anda saat ini.


57
2018-05-17 12:40



Secara default hanya menyimpan 500 perintah terbaru. Anda dapat mengubah nomor yang harus disimpan, tetapi Anda hanya perlu secara tidak sengaja memulainya dengan pengaturan default satu kali, dan semua riwayat lama Anda akan hilang. - kasperd


Anda bisa mengetik history pada terminal untuk melihat semua perintah yang dieksekusi sebelumnya.


Anda dapat memotong output ke beberapa baris (di mana 5 adalah jumlah baris):

history 5

Jika Anda ingin melihat hanya perintah yang berisi string (mis. mv), kamu bisa melakukan ini:

history | grep mv

Anda dapat mengingat sebuah perintah dengan mengetik ! diikuti dengan nomor masuk.

Katakanlah saya memiliki sejarah seperti ini:

1 ls -la
2 mkdir foo
3 mv bar.txt foo
  • Untuk berlari mkdir foo, Anda bisa mengetik !2.
  • Untuk menjalankan perintah terakhir, Anda dapat menggunakan !-1 atau !!
  • Untuk menjalankan kedua dari belakang, Anda dapat menggunakan !-2

Jika Anda menjalankan perintah yang gagal karena memerlukan hak akses root (mis. touch /etc/foo), Kamu dapat memakai sudo !! untuk menjalankan perintah terakhir sebagai root.


  • Jika Anda mengetik !man Anda akan menjalankan perintah terakhir yang dimulai dengan man
  • Jika Anda mengetik !?man? ia akan menjalankan perintah terakhir yang berisi man (tidak perlu pada garis dimulai)

Jika Anda memiliki kesalahan ketik dalam perintah, Anda dapat memperbaikinya dengan cara ini. Katakanlah saya mengetik cat .bash_hi, untuk menggantikan .bash_hi oleh .bash_history Saya hanya perlu mengetik ^hi^history^.


Sumber:  https://www.digitalocean.com/community/tutorials/how-to-use-bash-history-commands-and-expansions-on-a-linux-vps


23
2018-05-17 12:37



Anda juga dapat menekan Ctrl-R untuk melakukan pencarian di hostori saat Anda mengetik. - Mhmd


Ketik saja :

history > print.txt

File baru bernama print.txt akan dibuat di direktori Anda saat ini.


7
2018-05-17 13:07



Memotong perintah setelah 1000 - Antoine


Saya sering hanya ingin perintah-perintah baru-baru ini juga. Untuk memposting ke catatan pengembangan saya atau, yah, situs stackexchange seperti ini ... Ini terbukti sangat berguna, menghapus nomor baris yang tidak relevan:

history | cut -c 8- | tail

atau, jika Anda suka sebagai alias, nomor baris dihapus, dan langsung di-indentasi (sama seperti yang diperlukan untuk kutipan harga kode)

alias lastones="history | tail | sed -e 's/^ [0-9]\{1,5\}  /    /gi'"

3
2017-10-28 04:14



Lebih mudah digunakan fc: askubuntu.com/a/839642/158442 - muru


Anda mungkin ingin mencoba https://github.com/dvorka/hstr yang memungkinkan sederhana browsing, navigasi, dan "sarankan gaya kotak" menyaring riwayat Bash Anda:

enter image description here

Itu bisa dengan mudah terikat untuk Ctrl-r dan / atau Ctrl-s


0
2017-08-28 21:55