用於現代 Web 開發的強大終端和命令行 (CLI) 工具

已發表: 2022-03-10
快速總結↬你最喜歡的命令行工具是什麼? 今天,Louis Lazaris 分享了他在過去幾年中親身接觸過的一系列相關命令行應用程序和實用程序。

許多現代程序員,包括前端和全棧開發人員,每天都使用命令行工作。 即使是那些對 Web 開發相對較新的人,也很早就掌握了命令行技能,並找到了實用的工具和實用程序來提高他們在終端中的工作效率。

這篇文章列出了我個人在過去幾年中發現的許多命令行應用程序的分類列表。 其中一些相對較新,另一些已經存在了一段時間。 因此,我希望本綜述中的某些內容能引起您的興趣,並幫助您在終端工作時完成工作。

您可以使用以下導航跳轉到一個類別:

  • 終端應用程序
  • 終端實用程序和增強功能
  • 命令行腳本和框架
  • 終端的生產力工具

終端應用程序

本節介紹終端、多路復用器、控制台模擬器、移動終端和命令行工作區,您可以使用它們來替換系統上的默認終端應用程序。

tmux

tmux是用於類 Unix 操作系統的流行終端多路復用器,可讓您在單個終端中輕鬆切換多個程序,能夠“分離”會話(同時仍在後台運行)或“重新附加”到不同的終端。

多路復用器
(大預覽)

iTerm2

iTerm2是 iTerm 的繼任者,是 macOS 上終端的替代品,包括拆分窗格、強大的搜索、自動完成、即時重播等功能,以及一系列配置選項。

iTerm2
(大預覽)

莫什

Mosh 是一個用於交互式 SSH 使用的遠程終端應用程序(或移動 shell),它包括一些有用的功能,適用於需要通過弱 WiFi、蜂窩網絡或其他不太可靠的連接執行基於終端的任務的人。

莫什
(大預覽)

澤利伊

Zellij 是一個終端工作區,具有終端多路復用器的基本功能(類似於 tmux),但包含允許用戶擴展它並通過窗格/選項卡和插件創建個性化環境的功能。

澤利伊
(大預覽)

Hyper 是一款基於 Electron 的 Mac、Windows 或 Linux 終端應用程序,採用 Web 技術 (HTML/CSS/JS) 構建。 包括數十個主題和插件,並建立在速度和穩定性之上。

超
(大預覽)

cmder

cmder是一個適用於 Windows 的便攜式控制台仿真器,由於在這方面對 Windows 用戶缺乏一個好的選擇而構建。

管理員
(大預覽)

如地獄

a-Shell 是一款 iOS 應用程序,它提供了一個“口袋裡的終端”,具有文件/目錄控制、與 Apple 快捷方式的兼容性、多個窗口等等。

如地獄
(大預覽)

永恆的終點站

Eternal Terminal 是另一個受其他類似的流行項目啟發的遠程終端應用程序。

永恆的終點站
(大預覽)

十手

Ten Hands 是一個適用於 Mac、Linux 和 Windows 的終端應用程序,被稱為組織和運行命令行任務的最簡單方式,對於在多個項目中運行類似日常任務的人很有用。

十手
(大預覽)

eDEX-用戶界面

eDEX-UI 是一個全屏、跨平台的終端仿真器和系統監視器,其靈感來自科幻電影 UI,尤其是《創世紀:遺產》電影。

eDEX-用戶界面
(大預覽)

虎斑貓

Tabby,以前稱為“Terminus”,是一個可定制的跨平台終端應用程序,用於本地 shell、SSH、串行和 Telnet 連接,包括對拆分窗格、智能選項卡、可定制熱鍵等功能的支持。

虎斑貓
(大預覽)

魚殼

Fish Shell 是 Linux、macOS 和 Windows 命令行 shell 的另一種選擇,包括自動建議、製表符補全、24 位顏色、基於 Web 的配置、語法突出顯示以及其他實用功能。

魚殼
(大預覽)
跳躍後更多! 繼續往下看↓

終端實用程序和增強功能

獲得主工作區後,您將希望使用各種工具、實用程序、主題等對其進行增強。 本節包含一些有用的工具,可讓您的終端體驗更加愉快。

哦,我的Zsh

Oh My Zsh 是一個開源、社區驅動的框架,用於管理 Z Shell(或 Zsh,一種流行的 Unix shell)的配置。 它捆綁了數千個有用的功能、助手、300 多個插件、140 多個主題等等。 在 macOS 或 Linux 上效果最好,但也可以在 Windows 上使用 Cygwin 或 WSL2 之類的東西。

哦,我的Zsh
(大預覽)

無花果

Fig 將 VSCode 樣式的自動完成添加到您現有的終端,並包括對現有 CLI 工具的支持,如 Git、npm、Kubernetes、Docker、AWS、Google Cloud 等。

無花果
(大預覽)

fzf

fzf是一個快速、便攜的命令行模糊查找器,可讓您使用全面的功能集運行模糊搜索查詢。

fzf
(大預覽)

殼牌歷史

Shell History(不是免費的)是一個 macOS 應用程序,它與 Bash、Zsh 或 Fish 集成,允許您通過 iCloud 輕鬆備份和同步,並在“筆記本”中組織您的 shell 歷史記錄。

殼牌歷史
(大預覽)

htop

htop是一個交互式進程查看器,最初僅適用於 Linux,但現在是跨平台的,旨在通過在查看正在運行的進程時提供額外的功能來改進 Linux top命令。

htop
(大預覽)

GitHub CLI

GitHub CLI,如果你錯過了,它是 GitHub 的官方跨平台命令行界面,將拉取請求、問題和其他與 GitHub 相關的任務帶到你的終端。

GitHub CLI
(大預覽)

流小屋

Streamhut 讓您無需安裝任何東西即可實時共享您的終端。 只需運行兩個命令之一(取決於您的設置),這對於團隊協作、面試或教學中的實時終端會話很有用。

流小屋
(大預覽)

icdiff

icdiff是一個基於終端的文件比較工具,它充分利用顏色以更實用、更直觀的方式呈現差異。

icdiff
(大預覽)

>\_TerminalSplash

TerminalSplash ,顧名思義,類似於 Unsplash,但用於終端主題。 從 200 多個用戶提交的主題中選擇或提交您自己的主題。

TerminalSplash
(大預覽)

終端器

Terminalizer 是一個可定制的跨平台終端記錄器,可讓您記錄終端會話,然後將它們作為動畫 GIF 或通過網絡播放器共享。

終端器
(大預覽)

阿西涅馬

Asciinema 是另一個流行的終端錄製和共享選項,但不適用於 Windows。 這個很酷的一點是,錄製的輸出不是視頻,而是終端會話的純文本動畫,這意味著您可以從錄製中選擇和復制/粘貼項目。

阿西涅馬
(大預覽)

gtop

gtoptop命令的另一個增強功能,它為您的終端提供了一個系統監控儀表板。 需要 Node.js 並包括在 Windows 上的部分支持。

頂部
(大預覽)

DevDash

DevDash是面向開發人員和創建者的高度可配置的終端儀表板。 您可以對其進行自定義以顯示來自 Google Analytics、GitHub、Feedly、shell 命令輸出等來源的信息。

DevDash
(大預覽)

榮譽獎:

  • ora
    優雅的終端微調器。
  • tiny-care-terminal
    一個小儀表板,在您使用終端時試圖照顧您。
  • theme.sh
    一個 shell 腳本,可讓您設置包含 270 多個預加載主題的終端主題。

命令行腳本和框架

一些眾多的庫和框架允許您構建和維護自己的命令行應用程序和實用程序。 您將在下面找到一些用於 Bash、JavaScript 等的內容。

命令與征服 (cac)

命令與征服,也稱為 cac,是用於構建命令行應用程序的輕量級 JavaScript 框架。 例如,它已被用於構建幾個基於 Node.js 的腳手架工具。

命令與征服
(大預覽)

zx

zx是 Google 工程師提供的一種流行的 Bash 替代方案,它允許您使用 JavaScript 編寫命令行應用程序,並提供易於使用的 API,允許您調用可執行文件並獲取其輸出、處理錯誤等。

zx
(大預覽)

present

present是一個基於 Markdown 的終端演示工具,包括顏色和效果,並允許您將預先錄製的可播放代碼塊作為幻燈片播放。

展示
(大預覽)

巴赫

Bach 是一個 Bash 測試框架,可用於測試包含危險命令(如rm -rf / )的腳本,還包括用於模擬命令的 API(例如@mock@ignore@mockallto等)。

巴赫
(大預覽)

CLUI

CLUI是一個帶有實用程序的 JavaScript API,允許您在應用程序(即用戶與之交互的類似終端的應用程序)中構建具有上下文感知自動完成功能的命令行界面。

CLUI
(大預覽)

ShellCheck

ShellCheck是一個 shell 擴展,可幫助您查找 shell 腳本中的錯誤。

殼牌檢查
(大預覽)

榮譽獎

  • Basho
    讓您可以使用純 JavaScript 編寫複雜的 shell 任務,並且可以與 shell 命令和腳本很好地混合。
  • import
    用於 Bash 和其他 Unix shell 的快速且易於使用的模塊系統。
  • Bash Infinity
    一個模塊化的輕量級庫和样板框架,用於使用 Bash 編寫工具。

終端的生產力工具

最後,這個類別匯集了一小部分命令行實用程序和程序,這些實用程序和程序有助於完成各種與生產力相關的任務,例如整理東西、共享文件等。

衝刺衝刺

Dash Dash 是一個在線文檔站點,它以更易於接受的格式提供 Unix 手冊頁(即手冊頁),以幫助那些不太熟悉終端的人學習使用命令行。

衝刺衝刺
(大預覽)

nb

nb是一個命令行工具,其功能包括本地網絡筆記、書籤、存檔和加密。 存儲是純文本的,包括基於 Git 的版本控制、wiki 樣式的鏈接、顏色主題等等。

NB
(大預覽)

Rclone

Rclone是一個開源命令行程序,可讓您管理 40 多種雲存儲服務(Amazon S3、Dropbox、Google Drive、Azure 等)上的文件。 它包括熟悉的 Unix 命令和其他功能的雲等效項。

克隆
(大預覽)

navi

navi是您終端的交互式備忘單工具。 除了其他功能外,您還可以瀏覽備忘單存儲庫、導入備忘單或添加您自己的備忘單。

導航
(大預覽)

任務簿

Taskbook 是一個快速的命令行工具,可讓您在終端中組織任務、板和筆記,具有搜索/過濾器、自定義存儲位置和簡單且用戶友好的語法等功能。

任務簿
(大預覽)

項目瀏覽器

Project Explorer 是一個 CLI 工具,可讓您構建任何項目的樹形可視化。 這在引入新團隊成員或繼承新項目時會派上用場。

項目瀏覽器
(大預覽)

transfer.sh

transfer.sh是一個快速且易於使用的應用程序,用於通過命令行共享文件。 包括對 Amazon S3、Google Drive、Storj 和本地文件系統等服務的支持。

傳輸.sh
(大預覽)

榮譽獎

  • ack
    一種代碼搜索工具,類似於 grep,但針對搜索大型源代碼樹的程序員進行了優化。
  • goto
    具有自動完成支持的 shell 實用程序,可導航到別名目錄。
  • bashupload
    通過命令行上傳文件(最大 50GB),以便在服務器、台式機和移動設備之間輕鬆共享。
  • copyfiles
    一個命令行實用程序,它為在終端中復製文件添加了額外的功能。

你最喜歡的命令行工具是什麼?

如前所述,這並不是一個詳盡的列表,而只是我個人在過去幾年中遇到的大量相關命令行應用程序和實用程序。

如果您自己構建了一些東西,或者如果有一個您經常使用的可以增強您的終端體驗的東西,請隨時將其放在評論中!