我有一個安裝程序,我很高興在機器間共享我的配置文件,但我發現我經常想在zsh(Ctrl + R)中搜索回來,但我不記得在哪臺機器上輸入了命令。理想情況下,我希望能夠從我的任何一臺機器上搜索以前命令的規範清單。鑑於我有時在沒有網絡連接的情況下同時在這些機器上工作,合併歷史文件並使所有內容保持同步的明智方式是什麼?如何在多臺機器之間共享zsh歷史?
1
A
回答
2
嗯,我想你可以識別您的賬戶莫名其妙......那麼你可以做到以下幾點:
- 修改您的.zshrc以鏈狀從保管箱或SCM的其他帳戶的歷史與當前歷史如果這是當前計算機
- 然後在推出的第一zsh的使用-n的條目排序(按時間戳排序)
- 我想如果你有SETOPT HIST_SAVE_NO_DUPS
然後,您需要捕獲shell退出,並將現有歷史記錄複製到dropbox/SCM /共享位置。
+0
這大部分工作,但令人遺憾的是,多行命令以這種方式被銷燬(帶有'''''-continuation'或'do'-'done'-blocks的行) – xjcl
2
我寫了這個插件哦,我-的zsh:
的哦,我的巖組插件GPG加密,使用Git https://github.com/wulfgarpro/history-sync
0
你可以有一個NFS掛載點互聯網同步巖組歷史其中包含.zsh_history的相關機器。每臺機器都需要將HISTFILE env var設置爲NFS中的文件路徑。
HISTFILE env var是強制性的,因爲ZSH不接受符號鏈接,並且它將被使用最新版本的符號鏈接目標的文件替換。
我沒有測試過上述內容,因爲我的設置位於使用OSX和Parallels共享文件夾的VM之間。因此,使用NFS可以考慮文件的完整性(順序?),也可以使用VS Dropbox解決方案。
不知道,像https://gist.github.com/elim/f77e3e9f06b6f8a5e788可以用來修復版本進行合併...
相關問題
- 1. 在窗格/窗口之間共享歷史
- 2. Carrierwave/Paperclip和Resque - 在多臺計算機之間共享
- 3. 如何在兩臺計算機之間共享svn存儲庫
- 4. zsh歷史有多大?它走多遠?
- 5. 在多臺服務器之間共享gettext .mo文件
- 6. 如何在兩臺服務器之間共享HAProxy配置
- 7. 通過源代碼管理系統在多臺機器之間共享設置
- 8. 是否可以不使用zsh在tmux中的窗格/窗口之間共享歷史記錄?
- 9. 共享SSH密鑰在多臺主機
- 10. Zsh線編輯器歷史過濾
- 11. boost進程間共享內存:如何在同一臺機器上有多個不同的共享內存
- 12. 如何在虛擬機和主機之間共享數據?
- 13. 在Go主機之間共享變量
- 14. 如何通過藍牙在兩臺設備之間共享相機視圖
- 15. Alfresco共享頁面狀態歷史
- 16. 如何在Github上重寫共享Git歷史記錄?
- 17. 在一臺機器上共享芹菜工作者之間的內存區域
- 18. 在zsh中的歷史擴展
- 19. 跨多臺計算機共享內存?
- 20. 在多個WKWebView之間共享會話
- 21. 在多頁之間共享Cookie?
- 22. 在多個視圖之間共享UIWebView?
- 23. 在多個ejb之間共享env-entry
- 24. 如何在項目之間共享logback.xml
- 25. 如何在servlet之間共享java AsyncContext?
- 26. 如何在類之間共享方法
- 27. 如何在類之間共享數據?
- 28. 如何在iPhone之間共享數據?
- 29. 如何在作業之間共享tHashInput?
- 30. 如何在組件之間共享ContextMenu
如果您在同一時間(同時)在兩臺機器上工作,他們沒有網絡連接,短在兩臺機器的shell中手動重新輸入命令,我不確定是否有一個好的解決方案。 – simont
把你的歷史文件放在Dropbox上怎麼樣? – Simon
我沒有使用Dropbox,但據我瞭解,我不認爲這會工作,因爲我會在幾個(可能)離線機器上同時修改文件。 Dropbox會錯誤地自動或者重命名我的歷史文件,不是嗎? – Matthew