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

1 安装git

yum -y install git

2 安装zsh

yum -y install zsh

3 更改root的默认shell

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

4 安装oh-my-zsh

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 修改配置

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 修改全局配置使其对所有用户生效

echo "source /usr/share/zsh.d/.zshrc" >> /etc/zshrc

7 更改新用户的默认shell

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

8 修改主题及插件使用

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

#之前有配置过别名所以直接通过别名编辑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 即可

全局安装oh-my-zsh保姆教程的更多相关文章

  1. 【原】nodejs全局安装和本地安装的区别

    来微信支付有2年多了,从2年前的互联网模式转变为O2O模式,主要的场景是跟线下的商户去打交道,不像以往的互联网模式,有产品经理提需求,我们帮忙去解决问题. 转型后是这样的,团队成员更多需要去寻找业务的 ...

  2. Linux下mongodb安装及数据导入导出教程

    Linux下mongodb安装及数据导入导出教程 #查看linux发行版本 cat /etc/issue #查看linux内核版本号 uname -r 一.Linux下mongodb安装的一般步骤 1 ...

  3. 宝塔安装Lsky Pro图床教程

    欢迎访问我的个人博客皮皮猪:http://www.zhsh666.xyz Lsky Pro图床是一个支持本地.阿里云 OSS.腾讯云 COS.七牛云.又拍云等储存方式的基于PHP的开源图床. 项目主页 ...

  4. 【hexo+github搭建myblog】bash: npm: command not found 问题,疑似解决!关键词:NPM全局安装路径

    情况:打算用hexo+github搭建个人博客 1. hexo搭建,参考博文如下,非常感谢: Hexo+Github博客搭建完全教程 hexo从零开始到搭建完整 问题: 在最基本的安装步骤 (参考链接 ...

  5. npm 全局安装和局部安装的区别

    上图是从网上找的webpack 安装的步骤,我们看到除了要全局安装之外,还需要本地安装,那么这两者有什么区别呢? 本文以Windows平台上做测试,以webpack为示例做教程 什么是全局安装? 安装 ...

  6. nodejs安装 及环境变量配置教程 超详细版

    ------------恢复内容开始------------ ------------恢复内容开始------------ 上篇文件 写到  遇到了两个棘手问题  : @终端进程启动失败: shell ...

  7. 保姆教程系列二、Nacos实现注册中心

    前言: 请各大网友尊重本人原创知识分享,谨记本人博客:南国以南i 上篇我们介绍到  保姆教程系列一.Linux搭建Nacos 注册中心原理 一.环境准备 Java版本:1.8+   (Linux ce ...

  8. 保姆教程系列一、Linux搭建Nacos

    前言: 请各大网友尊重本人原创知识分享,谨记本人博客:南国以南i 简介: Nacos是阿里巴巴开源的一款支持服务注册与发现,配置管理以及微服务管理的组件.用来取代以前常用的注册中心(zookeeper ...

  9. 【保姆教程】RuoYi-Radius搭建实现portal认证

    [保姆教程]RuoYi-Radius搭建实现portal认证 一.简介 以若依后台管理框架V4.6.0做为基础框架,实现了ToughRADIUS大部分功能,支持标准RADIUS协议(RFC 2865, ...

  10. git克隆项目到本地&&全局安装依赖项目&&安装依赖包&&启动服务

     一.安装本地开发环境 1.安装本项目 在需要保存到本地的项目的文件夹,进入到文件夹里点击右键,bash here,出现下图: 2.安装依赖项目  3.安装依赖包(进入到命令行) # 安装依赖包 $ ...

随机推荐

  1. 一文搞懂V8引擎的垃圾回收机制

    前言 我们平时在写代码的过程中,好像很少需要自己手动进行垃圾回收,那么V8是如何来减少内存占用,从而避免内存溢出而导致程序崩溃的情况的.为了更高效地回收垃圾,V8引入了两个垃圾回收器,它们分别针对不同 ...

  2. Python潮流周刊#7:我讨厌用 asyncio

    你好,我是猫哥.这里记录每周值得分享的 Python 及通用技术内容,部分为英文,已在小标题注明.(标题取自其中一则分享,不代表全部内容都是该主题,特此声明.) 首发于我的博客:https://pyt ...

  3. SpringBoot+MyBatisPlus实现读写分离

    前言 随着业务量的不断增长,数据库的读写压力也越来越大.为了解决这个问题,我们可以采用读写分离的方案来分担数据库的读写负载.本文将介绍如何使用 Spring Boot + MyBatis Plus + ...

  4. ARC118E Avoid Permutations

    题意 给定一个长度为 \(n\) 的排列 \(p\),在一个 \((n + 2)\times(n + 2)\) 的网格上,禁止通过 \((i, p_i)\) 这些点,每次只能向上或右走一格,从 \(( ...

  5. 前端Vue仿滴滴打车百度地图定位查找附近出租车或门店信息(更新版)

    前端vue仿滴滴打车百度地图定位查找附近出租车或门店信息, 下载完整代码请访问uni-app插件市场地址:https://ext.dcloud.net.cn/plugin?id=12982 效果图如下 ...

  6. 使用Git进行代码版本控制和协作:代码共享、协作和版本管理

    目录 1. 引言 2. 技术原理及概念 3. 实现步骤与流程 使用 Git 进行代码版本控制和协作:代码共享.协作和版本管理 Git 是一个开源的分布式版本控制系统,由 Linux 内核开发组创建.G ...

  7. 使用python发送sip协议的OPTIONS

    环境:Windows10_x64  Python版本 :3.9.2   sip协议提供了OPTIONS请求方法可用于探测对端状态,今天记录下Windows10环境下使用python3.9简单实现sip ...

  8. Linux系统运维之Zookeeper集群配置

    一.简介 ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件.ZooKeeper的目标就是封装好复杂易 ...

  9. python datetime.now() 的问题

    python中,获取指定日期格式的时间可以用 datetime.datetime.now().strftime("%Y-%m-%d")  定义函数的时候,是可以设置参数的默认值的. ...

  10. 论文日记二:VGG

    1. 导读 前面我们回顾了AlexNet,AlexNet的作者指出模型的深度很重要,而VGG最大的贡献就在于对网络模型深度的研究. VGG原论文:<Very Deep Convolutional ...