终极Shell:Zsh(CentOS7 安装 zsh + Oh my zsh + tmux) 您所在的位置:网站首页 ohmyzsh安装 终极Shell:Zsh(CentOS7 安装 zsh + Oh my zsh + tmux)

终极Shell:Zsh(CentOS7 安装 zsh + Oh my zsh + tmux)

2023-09-26 21:24| 来源: 网络整理| 查看: 265

CentOS7 安装 zsh 及 配置 Oh my zsh

我们在通过Shell操作linux终端时,配置、颜色区分、命令提示大都达不到我们预期的效果或者操作较为繁琐。

今天就来介绍一款终极一个及其好用的类Linux系统中的终端软件,江湖称之为马车中的跑车,跑车中的飞行车,史称『终极 Shell』。

1 安装zsh并更改默认终端

①安装软件包

yum -y install zsh git

②更改默认终端

chsh -s /bin/zsh

这时候打开终端软件,应该就会默认进入 zsh 了。

2 配置oh-my-zsh

①从igt仓库中拉取oh-my-zsh

git clone https://gitee.com/mirrors/oh-my-zsh.git ~/.oh-my-zsh

②默认配置

cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc 3 安装高亮、自动补全插件

①安装高亮插件:zsh-syntax-highlighting

git clone https://gitee.com/dawnwords/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting

②安装自动补全:zsh-autosuggestions

git clone https://gitee.com/lhaisu/zsh-autosuggestions.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

③安装autojump目录跳转

git clone https://gitee.com/gentlecp/autojump.git cd autojump ./install.py 4 插件配置

同样是打开.zshrc文件,找到plugins=(git),在这里增加自己想要的插件即可,多个插件名称之间使用空格或者换行分开(不能使用逗号)

vim ~/.zshrc plugins=( git sudo zsh-autosuggestions zsh-syntax-highlighting autojump )

每次修改完.zshrc都需要我们:

source ~./zshrc

如果提示的是你要的那句命令,按右箭头(→ )就可以补全命令了。 在这里插入图片描述

5 效果

在这里插入图片描述

如果该zsh主题不习惯,可以修改

vim ~/.zshrc

找到ZSH_THEME,将其改为自己喜欢的主题,比如maran 在这里插入图片描述

#刷新zsh配置文件 source ~/.zshrc

效果: 在这里插入图片描述

6 tmux:配置终端管理

有时候我们在通过终端跑脚本命令的时候,不希望我们退出终端的时候,脚本程序随之退出。

这个时候就有必要用到tmux,这个终端管理神器了。 6.1 概念:workspace、window、pane 工作空间(Workspace):工作空间是tmux的最高层级,它可以包含多个窗口。每个工作空间都有一个唯一的名称,您可以根据需要创建和管理多个工作空间。窗口(Window):窗口是工作空间的子级,它可以包含一个或多个窗格。每个窗口都有一个编号和一个可选的名称。您可以在窗口之间切换,每个窗口可以运行不同的应用程序或命令。窗格(Pane):窗格是窗口的子级,它是tmux中的可视区域。每个窗格可以显示不同的命令行界面或终端会话。窗格可以垂直或水平分割,并且可以在窗格之间进行导航和调整大小。 6.2 安装使用

此处采用v3.3版本

更新软件包并下载tmux # 如果已经安装了tmux且不是3.3版本的,那么可以通过下面命令卸载 sudo yum remove tmux # 更新软件包并安装 sudo yum install http://galaxy4.net/repo/galaxy4-release-7-current.noarch.rpm sudo yum install -y tmux # 查看版本 tmux -V 编辑配置文件~/.tmux.conf vim ~/.tmux.conf #输入:set paste 进入粘贴模式 :set paste # 输入i进入插入(粘贴)模式 i

将下面内容复制到tmux.conf中:

tmux默认命令前缀是control + B,我们可以根据unbind-key C-b来解绑,bind-key C-a send-prefix来重新绑定自己习惯的按键

set-option -g prefix C-b # unbind-key C-b bind-key C-b send-prefix bind-key s setw synchronize-panes # Use Alt-arrow keys to switch panes bind -n M-Left select-pane -L bind -n M-Right select-pane -R bind -n M-Up select-pane -U bind -n M-Down select-pane -D # Shift arrow to switch windows bind -n S-Left previous-window bind -n S-Right next-window # Mouse mode set-option -g mouse on # # Set easier window split keys bind-key v split-window -h bind-key h split-window -v # # # Easy config reload bind-key r source-file ~/.tmux.conf \; display-message "tmux.conf reloaded" set -g default-terminal "screen-256colour" set -g status-style fg=white # 前景色 set -g status-style bg=black # 背景色 setw -g window-status-style fg=cyan # 活动窗口颜色为蓝绿色 setw -g window-status-current-style fg=white setw -g window-status-current-style bg=red set -g message-style fg=white set -g message-style bg=black set -g message-style bright set -g pane-border-style fg=white set -g pane-border-style bg=green set -g status-left "#[fg=green]#S#[fg=yellow]-#I#[fg=cyan]-#P" set -g status-utf8 on set -g status-interval 60s setw -g monitor-activity on set -g visual-activity on 配置环境变量 # 使tmux.conf文件生效 tmux source-file ~/.tmux.conf # 配置zsh环境变量 vim ~/.zshrc #在.zshrc文件底部添加如下配置 export TERM=xterm 6.3 设置自己的工作空间 创建一个名为workspace的工作空间 tmux new-session -s workspace-demo -d # 如果要删除某个命名空间,通过下面命令进入该空间 # tmux attach-session -t workspace-demo # 进入该空间后输入exit,即可删除,或者直接执行kill-session # tmux kill-session -t workspace-demo tmux ls查看是否创建成功 # 查看所有的命名空间 tmux ls

在这里插入图片描述

进入工作空间,创建自己的window # 进入workspace-demo工作空间 tmux attach-session -t workspace-demo # 新建一个window-demo-1窗口 tmux new-window -n window-demo-1

在这里插入图片描述

在window-demo-1窗口下,创建两个pane(两个ssh会话) # 登录到145这台机器 ssh [email protected] # 新建一个ssh会话(命令快捷键前缀我这里以C-B为例) control + B,按完松开之后,再按H(新建一个水平窗口) # 我在新窗口连接到我146的机器上 ssh [email protected]

在这里插入图片描述

当然我们还可以继续开更多的shell窗口

注意📢: ①如何保证下次登录的时候保留当前的session会话状态呢?

# 注意先按control+B,松开之后,然后再按D(不是三个按钮一起按) control + B, 然后再按下D(detach)

在这里插入图片描述 ②配置alias,方便下次登录终端时,直接进入我们的window

比如,我们要在192.168.16.145这台机器上设置alias为dev,下次我们登录到192.168.145这台机器(需要有tmux环境)上时,直接输入dev就可以进入tmux中的workspace-demo工作空间

# 修改~/.bashrc或者~/.bash_profile文件 vim ~/.bashrc # 在alias部分添加如下命令(=之间不要有空格) alias dev='tmux attach-session -t workspace-demo'

在这里插入图片描述

# 输入:wq保存退出 :wq # 刷新配置文件 source ~/.bashrc

测试:

ssh登录到145这台机器之后,输入dev 在这里插入图片描述

在这里插入图片描述

6.4 常用命令 - 使用control + b 然后按[ 使用鼠标选中文本进行复制 - 使用control + b 然后按] 即可粘贴 - `Control+B`,然后按下`空格键`:更改窗格布局。 - `Control+B`,然后按下`Z`:切换当前窗格的全屏模式。 - `Control+B`,然后按下`&`:关闭当前窗口。 - `Control+B`,然后按下`L`:在窗口之间切换,返回上一个窗口。 - `Control+B`,然后按下`$`:重命名当前窗口。 - `Control+B`,然后按下`?`:显示tmux快捷键帮助。 - `Control+B`,然后按下`C`:创建一个新窗口。 - `Control+B`,然后按下`N`:切换到下一个窗口。 - `Control+B`,然后按下`P`:切换到上一个窗口。 `Control+B`,然后按下`0-9`:切换到指定编号的窗口。

在这里插入图片描述

- `Control+B`,然后按下`%`或者V(vertical):在当前窗口中创建一个新的垂直分割窗格。 - `Control+B`,然后按下`"`或者H:在当前窗口中创建一个新的水平分割窗格。 - `Control+B`,然后按下`方向键`:在窗格之间进行导航。(option+方向键,也能实现效果) - `Control+B`,然后按下`x`:关闭当前窗格(pane)。


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有