前言
每次使用新裝置,最最最討厭的就是配環境,程式設計師懂得都懂,特別是筆者這種有強迫症的,一定要都配好了才能開始工作,痛定思痛,寫一個一鍵配置的指令碼,方便平常環境遷移。
該指令碼主要包含了日常工作使用的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
未完待續。。。