Di mana riwayat bash untuk pengguna root disimpan?

25

Saya tidak berbicara tentang .bash_historydari direktori home saya. Saya biasanya lebih suka menggunakan sudo -iatau sudo sumenjalankan perintah sebagai pengguna root.

Karena, setelah perintah ini sejarah tidak disimpan dalam .bash_historyfile dari direktori rumah saya, saya ingin tahu apakah riwayat ini disimpan di suatu tempat atau tidak dan jika ya, di mana?

Devesh Khandelwal
sumber
Yang saya tahu tetapi saya ingin tahu perintah di dalam shell root dan saya telah menemukan jawaban saya.
Devesh Khandelwal
Saya tahu itu tetapi masih terima kasih.
Devesh Khandelwal

Jawaban:

32

Nah, ketika Anda login sebagai root, histori bash disimpan dalam /root/.bash_historyfile, di mana /rootdirektori home default untuk pengguna root. Untuk membuktikan ini, jalankan perintah berikut ketika Anda login sebagai root:

echo $HISTFILE

The $HISTFILEvariabel poin ke file yang berisi sejarah Anda.

Sumber: $HISTFILE

Umumnya saat Anda masuk ke akun pengguna lain, riwayat bash akan disimpan dalam file yang disebut .bash_historyberada di direktori home pengguna tersebut.

Selanjutnya, jika Anda ingin menyimpan riwayat bash untuk pengguna root di file lain, katakanlah dalam .bash_historyfile dari direktori home saya, Anda harus mengedit /root/.bashrcfile, dan menambahkan baris baru di akhir file dengan konten berikut:

HISTFILE="/home/username/.bash_history"       #change username with your user name
Radu Rădeanu
sumber
1

Saya terbiasa menggunakan daftar cara pintas melalui tombol atas pada keyboard yang menunjukkan perintah yang terakhir digunakan untuk pengguna itu. Jika Anda login sebagai root, maka Anda akan ditampilkan sejarah untuk pengguna root.

Uji seperti ini, sudo -iisi kata sandi, lalu tekan tombol atas pada keyboard. Sekarang Anda akan menggulir melalui perintah yang terakhir digunakan dalam urutan terbaru ke terlama.

Saya tahu jawaban Radu Rădeanu adalah yang Anda inginkan. Tapi ini juga menyelesaikan masalah yang ada. Solusi saya lebih merupakan cara yang mudah untuk mengingat perintah lama yang dapat menghemat waktu dan kesibukan.

Alvar
sumber
Saya tahu tentang tombol atas dan banyak menggunakannya. Yang saya inginkan adalah file riwayat lengkap dan terima kasih telah mengklarifikasi.
Devesh Khandelwal
@DeveshKhandelwal Ini bukan solusi yang Anda inginkan, tetapi orang lain mungkin menganggapnya berguna. Jawaban Radu bagus, ini hanya berbeda. :)
Alvar
1

Mengetik historypada shell mencantumkan semua perintah dalam sejarah. Seseorang dapat menggunakan perintah berikut untuk menyimpan riwayat ke file lain:

history > *textfile*
Devesh Khandelwal
sumber