命令行忘性大?這個開源備忘工具一次解決你的全部煩惱

實名推薦這個小工具,交互式的命令行備忘錄,簡直解決了咱們記不住命令的煩惱。

機器之心報道,參與:思源。
git

命令行是很是高效的工具,但一個很常見的現象是,不少命令行過一段時間就容易忘。舉個栗子,若是咱們經常使用 git 命令行管理代碼、利用 conda 命令管理開發環境,若是過一段時間沒用了,那麼你還記得如何用 git 將本地代碼同步到 GitHub,還記得如何用 conda 命令刪除一個本地環境嗎?
固然,咱們能夠在網上搜索一下,也能快速找到答案,但總之仍是挺不方便的。咱們常見的作法是,將容易忘記的命令行寫到筆記中去,忘了再查就是。但如今,有一個新的開源項目 navi,它提供了一個交互式的備忘錄。
看看下面的動圖,能夠說,不用作筆記、不用查 History,咱們不再用擔憂忘記命令行了。

如上所示,navi 容許咱們查閱全部的備忘錄並執行對應的命令,值得注意的是,備忘錄是實時匹配的,若是我鍵入 git,那麼差很少就剩下 git 相關的命令行。

項目地址:github.com/denisidoro/…github

神奇的命令行備忘錄:navibash

機器之心也嘗試了該工具,從安裝到使用,整體感受很是便捷。咱們可使用已有的命令行備忘錄,也能本身導入之前經常使用的備忘錄。咱們能夠配置能夠直接運行的命令行,只須要手動加上參數就行;也能夠寫上備忘錄註釋,再手動鍵入命令行。

該項目表示,navi 的目標主要是:app

  • 經過給定關鍵字或文字描述,更便捷地查找命令;工具

  • 若是做爲長命令的輔助部分,查找後的結果也能夠直接複製粘貼到主命令;測試

  • 咱們的命令行使用習慣或備忘錄能夠與其它人共享;ui

  • 此外,該工具也能實現命令行的自動補全,不過這屬於高級用法。spa

整體而言,它就是有助於命令行的總體應用。以下圖所示,咱們將幾個 conda 命令也加到了備忘錄中,鍵入命令行的時候就會顯示提示:命令行

這幾條都經常使用的 conda 命令是咱們手動加入的,其中最下一行的綠色「conda」是咱們鍵入的內容,它縮小了命令行搜索範圍。最上面白框內的命令行是當前輸入的內容,按確認鍵就會執行該命令行。

navi 該怎麼用code

咱們是在 macOS 系統上測試的,能夠便捷地使用 Homebrew 安裝:brew install denisidoro/tools/navi。其它系統估計知足環境也是能夠的,以下是沒有 Homebrew 時的安裝方法:

git clone http://github.com/denisidoro/navi /opt/navicd /opt/navisudo make install複製代碼
安裝完成後,能夠直接在命令行內鍵入 navi,從而進入到交互式備忘錄界面。對於初始的 navi,它一共包含 9 個內置的備忘錄,咱們能夠修改它們。

進入後的交互式界面以下圖所示,咱們刪除了一些不太用得上的默認備忘錄。

下面在黃色光標的地方,就能夠愉快地鍵入並運行命令行了。

自定義個備忘錄

navi 很重要的功能是能自定義備忘錄,咱們能夠仿照自帶的備忘錄寫一個新的。該項目表示,咱們能夠用命令行傳遞.cheat 文件,從而達到添加的目的:
navi --dir "/folder/with/cheats"複製代碼
也能夠直接把咱們的備忘錄文件夾添加到 Bash 環境中。機器之心作了更簡單的一個操做,直接查找該工具的安裝目錄,而後手動刪增備忘錄,咱們的發現這也是能夠的。若是讀者也使用 Homebrew 安裝,那麼在 usr/local/Cellar/navi 路徑下就能找到默認備忘錄。

固然,咱們是要把之前的筆記作成.cheat 純文本的,它的用法也不難,只不過要實現補全或帶參數的命令,仍是須要一些特殊的語法。以下是一個標準的.cheat 文件:

cheat 語法主要有如下幾點:
  • 以「%」開頭的行包含了特定的 Tag,也就是說上圖「git」會做爲標籤加到該文件全部命令行最後;

  • 以「#」開頭的行描述了該命令行的用法;

  • 以「$」開頭的行應該爲給定參數生成建議值;

  • 其它全部非空行應該都爲可執行命令行。

以下所示爲有效的.cheat 文件:
% git, code# Change branchgit checkout <branch>$ branch: git branch | awk '{print $NF}'複製代碼
最後,咱們真的比較推薦這個新工具,用它來查備忘命令行實在是太方便了。固然,若是讀者們有用過更好的這類工具,也歡迎寫留言推薦推薦。
相關文章
相關標籤/搜索