Multi-Tool Toolbox:打造屬於您的終端機多功能工具箱

7

在日常的系統管理和開發工作中,我們總是需要在命令列中執行各種工具來檢查系統狀態、測試網路連線或進行系統維護。面對複雜的命令和繁瑣的操作流程,你是否曾經因為記不住命令而感到煩惱?今天,我們要為大家介紹一款基於 Node.js 開發的多功能終端機工具——Multi-Tool Toolbox,它將常用的系統工具整合在一個美觀易用的介面中,讓你的工作流程變得更高效!


專案亮點:讓系統管理變得更簡單

美觀的終端機介面

Multi-Tool Toolbox 使用了多種現代化的 Node.js 套件,打造出視覺效果出色的終端機介面:

  • 彩色文字顯示:使用 chalk 套件提供豐富的顏色配置,讓資訊一目了然。
  • ASCII 藝術字:透過 figlet 產生醒目的標題,讓你的終端機看起來更專業。
  • 表格化選單:使用 cli-table3 呈現結構化的工具選單,讓操作更直觀。
  • 載入動畫ora 套件提供優雅的執行進度顯示,讓你隨時掌握任務狀態。

自定義功能

Multi-Tool Toolbox 的核心特色是其強大的自訂系統。透過 config.json 檔案,你可以輕鬆地:

  • 自定義工具:新增、修改或移除工具選項,打造屬於自己的工具組合。
  • UI 客製化:調整顏色主題、圖示顯示等介面元素,讓終端機看起來更符合個人風格。
  • 安全控制:為危險操作設定確認提示,確保系統安全無虞。

Windows 原生支援

專案特別針對 Windows 環境進行了最佳化,專為 Windows 使用者打造的專用工具:

  • Choice 命令支援:使用 Windows 原生的 choice 命令進行使用者互動,讓操作更自然。
  • UTF-8 編碼處理:完善的中文字元支援,讓終端機顯示更準確。
  • 批次檔案安裝:提供簡單的一鍵安裝和解除安裝,輕鬆上手。

專案內容

編碼處理

專案在處理中文字元方面下了很大的功夫,透過以下程式碼強制設定 UTF-8 編碼:

if (process.platform === 'win32') {
    exec('chcp 65001', { encoding: 'utf8' }, () => {});
}

使用者互動

使用 Windows 原生的 choice 命令提供更好的使用者體驗:

const choiceProcess = spawn('choice', ['/c', choices, '/n'], {
    stdio: ['inherit', 'pipe', 'inherit'],
    env: { ...process.env, CHCP: '65001' }
});

安全機制

對於可能影響系統的操作,專案提供了確認機制:

async confirmAction(tool) {
    console.log(chalk.yellow('This operation may affect the system. Are you sure you want to continue?'));
}

Installation

Global

# 使用自動安裝批次檔案
install.bat
# 或手動安裝
npm install -g .

安裝後可在任何地方使用:

multi-tool
# 或使用縮寫
mt

Local

npm install
npm start