全局安装oh-my-zsh保姆教程

我的系统是CentOS 7.6,按流程走完后可以实现系统内所有用户都默认使用zsh且插件配置共享省去重复编写配置或软连接的烦恼

1 安装git

bash 复制代码
yum -y install git

2 安装zsh

bash 复制代码
yum -y install zsh

3 更改root的默认shell

bash 复制代码
#查看当前可用shell列表
cat /etc/shells
#更改root的默认shell
hsh -s /bin/zsh

4 安装oh-my-zsh

bash 复制代码
mkdir /usr/share/zsh.d
#克隆项目到/usr/share/zsh.d/.oh-my-zsh,后期oh-my-zsh下载的插件也都会放到这里
git clone https://github.com/ohmyzsh/ohmyzsh.git /usr/share/zsh.d/.oh-my-zsh
#根据模版创建一个基本的zsh配置
cp /usr/share/zsh.d/.oh-my-zsh/templates/zshrc.zsh-template /usr/share/zsh.d/.zshrc

5 修改配置

bash 复制代码
cd /usr/share/zsh.d
vi .zshrc
#找到'export ZSH=$HOME/.oh-my-zsh'改为'export ZSH=/usr/share/zsh.d/.oh-my-zsh'
#找到'# alias zshconfig="mate ~/.zshrc"'改为'alias zshconfig="vi /usr/share/zsh.d/.zshrc"'
#找到'# alias ohmyzsh="mate ~/.oh-my-zsh""'改为'# alias ohmyzsh="cd /usr/share/zsh.d/.oh-my-zsh"'
#三处都设置好后即可保存:wq

上边三行注释分别是修改ZSH环境变量指向的位置和设置快速编辑的别名命令,之后可以通过zshconfig命令直接编辑.zshrc也可以通过ohmyzsh快速跳转到.ohmyzsh文件夹

保存后先执行'source ./.zshrc'看看效果

6 修改全局配置使其对所有用户生效

bash 复制代码
echo "source /usr/share/zsh.d/.zshrc" >> /etc/zshrc

7 更改新用户的默认shell

bash 复制代码
vi /etc/default/useradd
#'SHELL=/bin/bash'改为'SHELL=/bin/zsh',修改后保存,之后创建的用户也会默认使用zsh

8 修改主题及插件使用

zsh安装后默认使用'robbyrussell'主题,插件只有一个git插件,这里演示一下如何修改主题及配置插件,主题将切换为'ys'主题,插件将安装一个高亮插件作为演示

bash 复制代码
#之前有配置过别名所以直接通过别名编辑zshrc
zshconfig
#配置主题
#ZSH_THEME="robbyrussell" 替换为 ZSH_THEME="ys" 或其他你喜欢的主题
#保存后重启或手动执行一下'source /usr/share/zsh.d/.zshrc'

#安装插件
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
#ZSH_CUSTOM默认位置为$ZSH/.oh-my-zsh,前边指定过ZSH所以插件会放到/usr/share/zsh.d/.ohh-my-zsh下
#下载完成后打开配置文件添加插件配置
zshconfig
#找到"plugins=(git)"这一行,plugins中填入将要启动的插件
plugins=(
 git
 zsh-syntax-highlighting
)
#保存后source一下即可

9 完成

如果发现root的vi没有应用配置但是其他用户有是因为zsh的root没有给vim映射别名,执行 echo "alias vi='vim'" >> /etc/zshrc 即可

相关推荐
superior tigre1 天前
1.linux环境配置+ssh远程连接vscode调试(问题:无法联网,无法共享粘贴板,不满足运行vscode服务器的先决条件)
linux·服务器·vscode
杰锅就是爱情1 天前
OpenObserve Ubuntu部署
linux·运维·ubuntu
huangjiazhi_1 天前
在Linux上无法访问usb视频设备
linux·运维·服务器
yyy0002001 天前
压缩和归档 文件传输
linux·运维·服务器
STCNXPARM1 天前
深度剖析Linux内核无线子系统架构
linux·运维·系统架构·wifi·无线子系统
烟雨书信1 天前
LINUX中Docker Swarm的介绍和使用
java·linux·docker
代码的余温1 天前
Linux内核调优实战指南
linux·服务器·数据库
m0_694845571 天前
教你使用服务器如何搭建数据库
linux·运维·服务器·数据库·云计算
空灵之海1 天前
Ubuntu Server 22.04.5系统安装教程
linux·运维·ubuntu
gamers1 天前
rock linux 9 安装mysql 5.7.44
linux·mysql·adb