Bagaimana cara mengubah lokasi file .bash_history?

10

Saya menjalankan CentOS 6.x dan ingin memindahkan .bash_history ke lokasi yang berbeda.

Direktori home pengguna saya (karena saya menjalankan VPS) di /var/www/vhost/<domain>.<tld>mana FTP dapat diakses (dan seharusnya).

Karena itu, saya telah mengubah AuthorizedKeysFilekoneksi SSH menjadi tidak normal ~/.ssh/authorized_keyskarena koneksi FTP dapat dengan mudah menemukannya.

Pada saat yang sama saya ingin memindahkan .bash_historyfile ke /home/%u/.bash_historytempat %upengguna saat ini.

Brian Graham
sumber

Jawaban:

17

Anda perlu mengatur HISTFILE untuk pengguna Anda ke lokasi yang Anda butuhkan, mengatur berikut ini di .bash_profile untuk pengguna, dan untuk pengguna baru mengaturnya di direktori kerangka pengguna, kemungkinan besar /etc/skel/.bash_profile

export HISTFILE=/home/$USER/.bash_history
Daniël W. Crompton
sumber
1
Terima kasih untuk cara mengaturnya untuk pengguna baru secara otomatis juga.
Brian Graham
Ketika Anda menjalankan VPS saya berasumsi itu mungkin berguna. :)
Daniël W. Crompton
satu catatan ... ini harus cukup awal dalam parsing file RC. Segera setelah apa pun ditulis ke riwayat, segala perubahan pada VAR ini diabaikan.
Rich Homolka
@RichHomolka menurut perubahan file man ke HISTFILE tidak diabaikan, terutama:The name of the file in which command history is saved (see HISTORY below). The default value is ~/.bash_history. If unset, the command history is not saved when an interactive shell exits.
Daniël W. Crompton
@ DaniëlW.Crompton Saya setuju :) Saya menggunakan ini untuk memiliki file sejarah terpisah berdasarkan ttyperintah. Maksud saya adalah KAPAN Anda mengaturnya. Di beberapa titik, lokasi diperbaiki dan perubahan lebih lanjut diabaikan.
Rich Homolka