Secara default, bash memuat baris dari ~/.bash_history
ke histori. Apakah mungkin menambahkan file khusus untuk dimuat? Saya ingin menyuntikkan file yang berisi perintah yang sering saya gunakan dan mengaksesnya melalui pencarian bawaan.
9
/usr/local/bin
atau sesuatu.bashrc
?Jawaban:
Saya membuatnya sederhana dengan
alias h='history|grep'
dimuat ke profil Bash saya.Jadi alur kerja saya adalah
h command
, misalnya:h hpssa
Jika saya ingin menjalankan "
hpssa -stop
", saya cukup mengetik!226
Ini hanya pendekatan saya, tetapi mungkin Anda bisa memodifikasi cara Anda mengingat item riwayat. Saya pikir tidak masuk akal untuk benar-benar menyuntikkan data ke dalam file histori.
sumber
docker run ...
Saya dulu sangat bergantung pada
Ctrl-R
(reverse-search-history
perintah Readline) yang mencari mundur melalui sejarah untuk mengambil perintah panjang yang sebelumnya dimasukkan tapi saya sekarang lebih suka menggunakan alias dan skrip / fungsi shell. Bagaimanapun, perintah Bashhistory
builtin dapat digunakan untuk memuat daftar perintah khusus ke dalam riwayat Anda saat ini.Dari halaman bash man:
Otomasi start-up
Saya baru saja mencoba meluncurkan perintah ini secara otomatis dengan menambahkannya sebagai baris terakhir di blog saya
.bashrc
. Namun, perintah dari file riwayat khusus saya tidak tersedia ketika saya memulai shell baru. Tampaknya riwayat shell hanya diambil dari.bash_history
file default : setelah file start-up diproses dan sesaat sebelum prompt disajikan untuk shell interaktif. Sayangnya, sepertinya tidak ada cara mudah untuk mengotomatisasi ini.sumber
Seperti yang diamati oleh @AnthonyGeoghegan, riwayat dimuat setelah file startup diproses. Itu menawarkan cara berbeda untuk memuat riwayat yang diinginkan dalam file startup:
Perhatikan bahwa pendekatan ini dapat menghasilkan banyak salinan dari perintah khusus Anda yang ditambahkan ke .bash_history Anda, seiring waktu. Anda dapat membungkus perintah khusus Anda dengan baris komentar, sehingga Anda dapat dengan mudah menemukan dan menghapusnya (via, misalnya, sed) sebagai bagian dari mengisi file .bash_history. Sesuatu seperti:
sumber