updated
This commit is contained in:
106
snippets/zsh/zshrc-minimal.sh
Normal file
106
snippets/zsh/zshrc-minimal.sh
Normal file
@@ -0,0 +1,106 @@
|
||||
#!/bin/bash
|
||||
|
||||
# 最小化 ZSH 配置 - 适合快速部署
|
||||
# 用法: curl -fsSL https://your-gitea.com/ben/mgmt/raw/branch/main/snippets/zsh/zshrc-minimal.sh | bash
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
# 颜色定义
|
||||
RED='\033[0;31m'
|
||||
GREEN='\033[0;32m'
|
||||
YELLOW='\033[1;33m'
|
||||
BLUE='\033[0;34m'
|
||||
NC='\033[0m'
|
||||
|
||||
log_info() { echo -e "${BLUE}[INFO]${NC} $1"; }
|
||||
log_success() { echo -e "${GREEN}[SUCCESS]${NC} $1"; }
|
||||
log_error() { echo -e "${RED}[ERROR]${NC} $1"; }
|
||||
|
||||
# 检查 root 权限
|
||||
if [[ $EUID -ne 0 ]]; then
|
||||
log_error "需要 root 权限"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
log_info "开始安装最小化 ZSH 配置..."
|
||||
|
||||
# 安装依赖
|
||||
apt update && apt install -y zsh git curl fonts-powerline
|
||||
|
||||
# 安装 oh-my-zsh
|
||||
if [[ ! -d "$HOME/.oh-my-zsh" ]]; then
|
||||
RUNZSH=no CHSH=no sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
|
||||
fi
|
||||
|
||||
# 安装关键插件
|
||||
custom_dir="$HOME/.oh-my-zsh/custom/plugins"
|
||||
mkdir -p "$custom_dir"
|
||||
|
||||
[[ ! -d "$custom_dir/zsh-autosuggestions" ]] && git clone https://github.com/zsh-users/zsh-autosuggestions "$custom_dir/zsh-autosuggestions"
|
||||
[[ ! -d "$custom_dir/zsh-syntax-highlighting" ]] && git clone https://github.com/zsh-users/zsh-syntax-highlighting.git "$custom_dir/zsh-syntax-highlighting"
|
||||
|
||||
# 创建最小化配置
|
||||
cat > "$HOME/.zshrc" << 'EOF'
|
||||
# Oh My Zsh 配置
|
||||
export ZSH="$HOME/.oh-my-zsh"
|
||||
ZSH_THEME="agnoster"
|
||||
|
||||
plugins=(
|
||||
git
|
||||
docker
|
||||
ansible
|
||||
terraform
|
||||
kubectl
|
||||
zsh-autosuggestions
|
||||
zsh-syntax-highlighting
|
||||
)
|
||||
|
||||
source $ZSH/oh-my-zsh.sh
|
||||
|
||||
# 基本别名
|
||||
alias ll='ls -alF'
|
||||
alias la='ls -A'
|
||||
alias l='ls -CF'
|
||||
alias ..='cd ..'
|
||||
alias ...='cd ../..'
|
||||
alias grep='grep --color=auto'
|
||||
|
||||
# Docker 别名
|
||||
alias d='docker'
|
||||
alias dps='docker ps'
|
||||
alias dpsa='docker ps -a'
|
||||
alias dex='docker exec -it'
|
||||
alias dlog='docker logs -f'
|
||||
|
||||
# Kubernetes 别名
|
||||
alias k='kubectl'
|
||||
alias kgp='kubectl get pods'
|
||||
alias kgs='kubectl get services'
|
||||
alias kgd='kubectl get deployments'
|
||||
|
||||
# Git 别名
|
||||
alias gs='git status'
|
||||
alias ga='git add'
|
||||
alias gc='git commit'
|
||||
alias gp='git push'
|
||||
alias gl='git pull'
|
||||
|
||||
# 历史配置
|
||||
HISTSIZE=10000
|
||||
SAVEHIST=10000
|
||||
HISTFILE=~/.zsh_history
|
||||
setopt SHARE_HISTORY
|
||||
setopt HIST_IGNORE_DUPS
|
||||
|
||||
# 自动建议配置
|
||||
ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE='fg=8'
|
||||
ZSH_AUTOSUGGEST_STRATEGY=(history completion)
|
||||
|
||||
echo "🚀 ZSH 配置完成!"
|
||||
EOF
|
||||
|
||||
# 设置默认 shell
|
||||
chsh -s "$(which zsh)"
|
||||
|
||||
log_success "最小化 ZSH 配置安装完成!"
|
||||
log_info "请重新登录或运行: source ~/.zshrc"
|
||||
Reference in New Issue
Block a user