Zsh Cheatsheet - Shell Configuration
让终端更高效的 Zsh 配置命令都在这里了,从插件管理到提示符定制,按场景分类整理,直接复制配置。
Back to SysOps基础配置 5
chsh -s $(which zsh)切换默认 Shell 为 zsh
source ~/.zshrc重新加载配置
echo $SHELL查看当前 Shell
setopt AUTO_CD输入目录名即可 cd,无需写 cd
setopt CORRECT命令拼写错误时提示纠正
变量与数组 6
NAME="value"定义变量(等号两边不能有空格)
arr=(a b c)定义数组(zsh 下标从 1 开始)
echo $arr[1]访问数组第一个元素
echo ${arr[@]}访问数组所有元素
${#arr[@]}获取数组长度
typeset -A dict\ndict[key]=value定义关联数组(哈希表)
通配与扩展 6
**/*.js递归匹配所有子目录的 .js 文件
*.{js,ts}花括号扩展,匹配多种后缀
*(.)只匹配普通文件(glob 限定符)
*(/)只匹配目录
*(om[1])最新修改的一个文件
=ls等号扩展为命令的完整路径
历史与搜索 6
HISTSIZE=10000 / SAVEHIST=10000内存与文件历史条数
setopt SHARE_HISTORY多终端实时共享历史
Ctrl+R反向增量搜索历史命令
!!执行上一条命令(sudo !! 最常用)
!$上一条命令的最后一个参数
history -i | tail带时间戳查看历史
函数与补全 4
function name() { ... }定义函数
alias ll="ls -la"设置别名
autoload -Uz compinit && compinit初始化补全系统
compdef _git g=git为别名 g 复用 git 的补全
提示符定制 5
PROMPT='%n@%m %~ %# '用户名@主机 路径 提示符
%n / %m / %M用户名 / 短主机名 / 完整主机名
%~ / %d当前目录(~ 缩写)/ 绝对路径
RPROMPT="%T"右侧提示符显示当前时间
%T / %D / %W24 小时时间 / 年月日 / 月日年
oh-my-zsh 与插件 5
plugins=(git zsh-autosuggestions zsh-syntax-highlighting)启用插件列表
ZSH_THEME="robbyrussell"设置主题(random 随机切换)
zsh-autosuggestions自动建议补全,按 -> 接受
zsh-syntax-highlighting命令语法高亮(红表示错误)
extract file.tar.gzextract 插件自动识别格式解压
💡 Tips
- oh-my-zsh 安装:sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
- zsh-autosuggestions 需要单独安装插件,推荐用 git clone 到 $ZSH_CUSTOM/plugins/。
- setopt AUTO_CD 可以直接输入目录名 cd 进去,不用写 cd 命令。
- 让上下箭头按前缀搜索历史:bindkey 加 history-search-backward/forward。
- zsh 数组下标从 1 开始(与 bash 从 0 开始不同),迁移脚本时要注意。
- ZDOTDIR 环境变量可改变 zsh 配置文件目录,便于多套配置隔离。