Terminal sekmeleri arasında tarih nasıl paylaşılır?


23

Genelde kendimi OS X'teki Terminal'imde iki veya üç sekme kullanarak buluyorum.

Küçük bir rahatsızlık, varsayılan olarak, sekmelerin komut geçmişlerini paylaşmamasıdır. Bu nedenle, başka bir sekmede yazdığım önceki bir komutu aramak history | grep thingIamlooking foronu bulmuyor.

Terminal sekmelerini geçmişi paylaşmaya zorlamanın bir yolu var mı, yoksa başka bir " history_of_all_tabs " komutu var mı?

Yanıtlar:


29

Geçmişi yalnızca Terminal sekmeleriyle paylaşmanın bir yolu olduğunu sanmıyorum, ancak burada size yardımcı olabilecek bir şey var.

Tarih, terminaliniz tarafından değil, kabuğunuzun (bash, tcsh, zsh, vb.) Ele aldığı bir şeydir.

Tüm terminal pencereleri arasında paylaşılan bir geçmiş oluşturmanıza yardımcı olacak bazı seçenekler (kabuk örnekleri).

Bu, .bashrcdosyanızda bir yere konmalıdır .

export HISTCONTROL=ignoredups:erasedups  # no duplicate entries
export HISTSIZE=100000                   # big big history
export HISTFILESIZE=100000               # big big history
shopt -s histappend                      # append to history, don't overwrite it

# Save and reload the history after each command finishes
export PROMPT_COMMAND="history -a; history -c; history -r; $PROMPT_COMMAND"

1
İyi cevap için +.5, iyi dilbilgisi için +.5;)
Matt

@ Lifely'nin çözümü El Capitan'da benim için çalışmıyor. Hiç. Geçmiş dosyasının maksimum uzunluğu bile. 2012'den beri yeni bir çözüm var mı? (Yukarıda yorum yapardım, ama temsilcisi yok)
JP Duffy

1
Bu benim .bash_profile dosyasına ihracat SHELL_SESSION_HISTORY = 0 eklenmesiyle El Capitan (.bash_profile dosyasına eklendi) benim için çalışıyor ve çalıştığı: Dokunmatik ~ / .bash_sessions_disable
Andy

bash için Ubuntu 18.04 üzerinde harika çalışıyor
anon58192932 26:18
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.