Dosyamın içeriğini görüntülemek istiyorum .bash_history
ancak oraya komut satırı üzerinden nasıl gideceğimi bilmiyorum.
/home/username/.bash_history
mi
.bash_history
sadece bir terminal kapalı olduğunda eklenir.
Dosyamın içeriğini görüntülemek istiyorum .bash_history
ancak oraya komut satırı üzerinden nasıl gideceğimi bilmiyorum.
/home/username/.bash_history
mi
.bash_history
sadece bir terminal kapalı olduğunda eklenir.
Yanıtlar:
Eğer gerçek dosyayı kendisi erişmek istiyorsanız, sadece (kullandığım favori metin düzenleyicisi kullanabilirsiniz emacs
ancak kullanabileceğiniz pluma
bir gedit
ya vim
ya neyse):
emacs ~/.bash_history
Geçmiş dosyanız varsa varsayılan konum budur. Orada bir şey bulamazsanız, geçmiş dosyanın adını değiştirmiş olabilirsiniz. Bu $HISTFILE
değişkende saklanır , bu nedenle geçerli değerini kontrol etmek için yazdırın:
echo $HISTFILE
Dosya yerine, sadece geçmişinizi görmek istiyorsanız, history
@ minerz029 önerildiği gibi çalıştırabilirsiniz . Komut hiçbir seçenekleri ile, Sadece içeriğini yazdırır henüz hat numaraları ile, o dosyaya yazılır bulunduğumuz kabuğunda çalıştırılan komutları takip eder.history
$HISTFILE
Aslında Eğer ihtiyaç çıktısını .bash_history
dosyası, değiştirmek history
ile
cat ~/.bash_history
aşağıda komutları tümünde.
Önünde numarasız komutları gerçekten istiyorsanız, bu komutu aşağıdaki yerine kullanın history
:
history | cut -d' ' -f 4-
Aksi takdirde, hiçbir fark olmayacak (farklı bir kabuk kullanıyorsanız hariç).
Kullanabilirsiniz
history | tail -n 15
Tarihin yalnızca son 15 satırını, en son yazdırılan (altta) ile almak için.
Alternatif olarak, kullan
history | grep "apt-get" | tail -n 15
apt-get
En son basılan en son basılan komutları almak için (en altta). apt-get
Aramak istediğiniz herhangi bir komutla (veya komut argümanıyla) değiştirebilirsiniz (normal bir ifade olabilir).
Kullanabilirsiniz
history | tac | less
En sondan başlayarak yürütülen tüm komutları taramak için Çıkmak qiçin tuşuna basın .
Benzer şekilde, kullan
history | grep "apt-get" | tac | less
İçinde " " ile yürütülen tüm komutları apt-get
(argümanlar dahil) baştan sona en yeni olandan başlayarak kaydırmak için. Çıkmak qiçin tuşuna basın .
Minerz029'un mükemmel cevabına ek olarak.
Tekrarlamak için - 'tarihçe' komutu, yanında bir sayı ile birlikte geçmişi yazdırır.
Tarihin çıktısını grep, daha az vb.
Tarihin çıkışında ayrıca çıkışın yanında solda bir sayı gösterilir. Örneğin
469 free
470 ps -fA
471 ps -fA | grep xend
472 free
473 sudo vi /etc/xen/xend-config.sxp
474 cat /etc/default/grub
Bu numara ile komutu yeniden çalıştırabilirsiniz.
örneğin, 473'ü tekrar çalıştırmak için, terminale girecektim
admin@xen1~$ !473
Tarihçe çıktısında 473'ün yanındaki komutu tekrarlamak için enter tuşuna basın.
Ayrıca tuşlarını yazarak komut geçmişinde etkileşimli olarak geriye doğru arama yapabilirsiniz , sonra komutun ctrl + r
içeriğini yazmaya başlayın ve onu arayacak ve dolduracaktır. Bulduğunuzda, tekrarlamak için enter yazabilir veya [tab]
önce komutu düzenlemek için komut satırına kopyalamak için tuşuna basın .
Tabii ki, bu son iki seçenek bash kabuğunda çalışıyor. Bu özelliklerin diğer kabuklarda çalışıp çalışmadığından emin değilim. Ancak bash Ubuntu varsayılan kabuğu olduğundan, onları orada bulmalısınız.
"Kutu öner" benzeri bir geçmişi denemek isteyebilirsiniz https://github.com/dvorka/hstr - Bash tarihini okur ve hızlı gezinmeyi sağlar.
history | less