效率工具整理

sizuko0723發表於2024-03-15

前言

每次使用新裝置,最最最討厭的就是配環境,程式設計師懂得都懂,特別是筆者這種有強迫症的,一定要都配好了才能開始工作,痛定思痛,寫一個一鍵配置的指令碼,方便平常環境遷移。

該指令碼主要包含了日常工作使用的cli工具和各語言環境,每個都寫好了安裝指令,都是筆者常用的配置,直接執行也可以,會跳過已經安裝的版本。目前只支援mac一鍵安裝,win太麻煩了懶得寫,還可能有各種奇怪的問題。

工具介紹

這兒只是丟擲個引子大概介紹下每個工具幹啥的怎麼使用,也可以直接去官網看文件,會詳細點。

命令列工具:

  • Homebrew

  • oh my zsh

    • git
    • kubectl
    • kube-ps1 (命令列中顯示當前kubeconfig對應的叢集)
  • jq(解析 JSON)

  • yq(解析 YAML)

  • bat(cat 的升級版)

  • j(模糊檔案路徑切換)

  • mycli(帶高亮、補全的 MySQL 客戶端)

  • k9s(K8s 叢集管理)

開發環境:

  • golang
# 推薦使用一個多版本管理工具,可以自由切換golang版本 https://github.com/voidint/g
# It is recommended to clear the `GOROOT`, `GOBIN`, and other environment variables before installation.
$ curl -sSL https://raw.githubusercontent.com/voidint/g/master/install.sh | bash
$ echo "unalias g" >> ~/.bashrc # Optional. If other programs (such as `git`) have used `g` as an alias.
$ source "$HOME/.g/env"
  • python
# 推薦使用miniconda
# https://docs.anaconda.com/free/miniconda/miniconda-install/
brew cask install miniconda
  • Java
# 推薦使用jenv 來進行多版本的java管理
# https://www.jenv.be/
brew install jenv
  • docker
$ brew install --cask docker

開發工具:

  • goland

  • idea

  • vscode

  • apifox

  • navicat

安裝指令碼

先寫個模板,後面再補

#!/bin/bash

successful_tools=()
failed_tools=()

# 安裝工具並列印結果
install_and_print_result() {
    echo "安裝 $1..."
    $2
    if [ $? -eq 0 ]; then
        echo "$1 安裝成功!"
        successful_tools+=("$1")
    else
        echo "$1 安裝失敗!"
        failed_tools+=("$1")
    fi
}

# 安裝Homebrew
install_homebrew() {
    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
}

# 安裝oh my zsh
install_ohmyzsh() {
    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
}

# 安裝git外掛
install_git_plugin() {
    # 具體的安裝指令
    # 安裝方式自行填寫
}

# 定義安裝kubectl外掛函式
install_kubectl_plugin() {
    # 具體的安裝指令
    # 安裝方式自行填寫
}

# 定義安裝kube-ps1外掛函式
install_kube_ps1_plugin() {
    # 具體的安裝指令
    # 安裝方式自行填寫
}

# 定義安裝jq函式
install_jq() {
    # 具體的安裝指令
    # 安裝方式自行填寫
}

# 定義安裝yq函式
install_yq() {
    # 具體的安裝指令
    # 安裝方式自行填寫
}

# 定義安裝bat函式
install_bat() {
    # 具體的安裝指令
    # 安裝方式自行填寫
}

# 定義安裝j函式
install_j() {
    # 具體的安裝指令
    # 安裝方式自行填寫
}

# 定義安裝mycli函式
install_mycli() {
    # 具體的安裝指令
    # 安裝方式自行填寫
}

# 定義安裝k9s函式
install_k9s() {
    # 具體的安裝指令
    # 安裝方式自行填寫
}

# 安裝Homebrew
install_and_print_result "Homebrew" install_homebrew

# 安裝oh my zsh
install_and_print_result "oh my zsh" install_ohmyzsh

# 安裝git外掛
install_and_print_result "git外掛" install_git_plugin

# 安裝kubectl外掛
install_and_print_result "kubectl外掛" install_kubectl_plugin

# 安裝kube-ps1外掛
install_and_print_result "kube-ps1外掛" install_kube_ps1_plugin

# 安裝jq
install_and_print_result "jq" install_jq

# 安裝yq
install_and_print_result "yq" install_yq

# 安裝bat
install_and_print_result "bat" install_bat

# 安裝j
install_and_print_result "j" install_j

# 安裝mycli
install_and_print_result "mycli" install_mycli

# 安裝k9s
install_and_print_result "k9s" install_k9s

# 輸出安裝結果
echo ""

for tool in "${successful_tools[@]}"; do
    echo "$tool 成功"
done

for tool in "${failed_tools[@]}"; do
    echo "$tool 失敗"
done

未完待續。。。

相關文章