虽然一般用 zsh 的人都会直接用 oh-my-zsh 来进行配置,但我还是更喜欢自己写的 .zshrc
,因为感觉 oh-my-zsh 里面好多功能太高级了,我一个基础用户用不上。用自己写的 .zshrc
,感觉 zsh 的运行速度会更快一些,或许是因为没有启用那么多杂七杂八的功能。
配置文件
# Created by clover whth the help of Linux lovers all over the world for zhs 5.8.1
# 彩色输出
if [ -x /usr/bin/dircolors ]; then
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
alias ls='ls --color=auto'
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
fi
alias ip='ip -c'
# 自动补全
autoload -Uz compinit
compinit
zstyle ':completion:*' menu yes=long select
# Disable prompt disappearing on multi-lines
export COMPLETION_WAITING_DOTS="false"
# 历史记录
HISTFILE=~/.histfile
HISTSIZE=1000
SAVEHIST=1000
setopt appendhistory
# 缩写
alias la='ls -A'
alias ll='ls -lh'
alias ping="ping -c 4 "
alias cls='clear'
alias BBa="BBDown --audio-only --skip-cover"
alias rm="rm -i"
alias cp="cp -i"
alias mv="mv -i"
alias shizuku-enable="adb shell sh /storage/emulated/0/Android/data/moe.shizuku.privileged.api/start.sh"
# 插件
export TERM=xterm-256color
source /usr/share/zsh-autosuggestions/zsh-autosuggestions.zsh
source /etc/zsh_command_not_found
# 命令提示符
autoload -U colors && colors
PROMPT="%(?::%B[%?] %b)%B%{$fg[green]%}%#%{$reset_color%}%b %B%{$fg[blue]%}%.%{$reset_color%}%b "
解释说明
- 颜色输出:就是启用
ls
、grep
和ip
命令的彩色输出选项。 - 自动补全:启用 zsh 的自动补全功能,输入一部分命令或文件名后,按 Tab,会弹出一个菜单,按上下方向键移动光标,即可补全命令。
- 历史记录:在用户的主文件夹下创建一个
.histfile
文件,用于存放历史记录,可记录 1000 条。 - 缩写:语法就是
alias 别名="对应的命令"
cls
是模仿 DOS 中的清屏指令;ping
则模仿了 WIndows 中的设置,默认 ping 4 次;cp
、mv
、rm
则是启用了交互模式,删除文件前需要确认、操作会覆盖文件时也需要先确认,防止误操作造成数据损失;la
用于显示所有文件(包括隐藏文件),ll
则是列出文件的详细信息,并用 MB、GB 等单位显示文件大小,更加直观。BBa
是调用 BBDown 的音频下载模式,输入BBa av号/bv号
后,只下载该 b 站视频的音轨。我喜欢从 b 站找音乐资源,所以搞了个这东西;shizuku-enable
是通过 adb 启动手机上的 shizuku。
- 插件:
export TERM=xterm-256color
可以解决部分终端程序在 tmux 下无法显示 256 色的问题。- 该节第 2 行是调用自动提示插件,当你输入命令时,系统会根据历史记录显示提示,按 → 即可补全命令。需要先安装
zsh-autosuggestions
软件包。 - 该节第 3 行是调用错误提示插件,如果你输入的命令系统无法找到,则会显示一条提示,告诉你这个命令可能在哪个软件包里面。
- 命令提示符:
- 以普通用户身份运行时,显示的是
% 当前目录名
,比如在/usr/share/
中,会显示% share
,%
用绿色显示,目录名用蓝色显示。 - 以 root 身份运行时,
%
会变成#
。 - 如果上一条命令的返回代码不是 0,则会在提示符前面显示返回代码。比如上一条命令返回了错误代码 2,则命令提示符会变成
[2] % ~
。
- 以普通用户身份运行时,显示的是
使用方法
把上面的配置文件保持成 .zshrc
,放到用户的主文件夹中即可。