linux美化命令行

news2024/12/23 18:45:43

linux美化命令行

centos8

安装和配置 Zsh

首先,安装 Zsh:

sudo yum install -y zsh

将默认 shell 更改为 Zsh:

chsh -s $(which zsh)

重新登录以使更改生效,或者使用以下命令启动 Zsh:

zsh

安装和配置 Oh My Zsh

下载并安装 Oh My Zsh:

sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

安装并启用 Powerline

安装 Powerline 及其字体支持:

sudo yum install -y epel-release
sudo yum install -y powerline powerline-fonts

编辑 ~/.zshrc 文件以启用 Powerline:

vim ~/.zshrc

在文件末尾添加以下内容:

if [ -f /usr/share/powerline/zsh/powerline.zsh ]; then
    source /usr/share/powerline/zsh/powerline.zsh
fi

保存并退出,然后重新加载 ~/.zshrc

source ~/.zshrc

安装并配置插件

安装 zsh-syntax-highlighting 插件

该插件提供命令语法高亮:

git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ~/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting
安装 zsh-autosuggestions 插件

该插件提供命令自动建议:

git clone https://github.com/zsh-users/zsh-autosuggestions ~/.oh-my-zsh/custom/plugins/zsh-autosuggestions
安装 fzf 插件

该插件提供模糊搜索功能:

git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf
~/.fzf/install

Ctrl+R开启搜索

安装 zsh-history-substring-search 插件

该插件提供历史记录子字符串搜索:

git clone https://github.com/zsh-users/zsh-history-substring-search ~/.oh-my-zsh/custom/plugins/zsh-history-substring-search

上箭头键(↑):在历史记录中查找当前输入的子字符串的上一条记录

下箭头键(↓):在历史记录中查找当前输入的子字符串的下一条记录

安装 z 插件

克隆 z 插件仓库,用于目录跳转的非常方便的工具:

git clone https://github.com/rupa/z.git /var/local/z

这里不能放在~目录,有报错,没有目录自己创建

z <部分目录名>:跳转到包含指定部分目录名的路径中访问频率最高的目录

z -l <部分目录名>:列出包含指定部分目录名的所有目录,并按访问频率排序

z -c <部分目录名>:列出包含指定部分目录名的所有目录,并按访问时间排序

配置插件

编辑 ~/.zshrc 文件,添加并启用插件:

vim ~/.zshrc

找到 plugins 这一行,并将其修改为如下内容:

plugins=(
    git
    zsh-syntax-highlighting
    zsh-autosuggestions
    zsh-history-substring-search
    z
)

在文件末尾添加以下内容以启用 zsh-history-substring-searchfzf

source ~/.oh-my-zsh/custom/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh
source ~/.oh-my-zsh/custom/plugins/zsh-history-substring-search/zsh-history-substring-search.zsh
source ~/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh

# z 插件配置
source /var/local/z/z.sh

# zsh-history-substring-search configuration
bindkey '^[[A' history-substring-search-up
bindkey '^[[B' history-substring-search-down

# fzf configuration
[ -f ~/.fzf.zsh ] && source ~/.fzf.zsh

保存并退出,然后重新加载 ~/.zshrc

source ~/.zshrc

安装并配置 Powerlevel10k 主题

Powerlevel10k 是一个高性能的 Zsh 主题,提供了丰富的美化选项:

git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/themes/powerlevel10k

编辑 ~/.zshrc 文件,设置 Powerlevel10k 主题:

vim ~/.zshrc

ZSH_THEME 行修改为:

ZSH_THEME="powerlevel10k/powerlevel10k"

保存并退出,然后重新加载 ~/.zshrc

source ~/.zshrc

第一次启动时,Powerlevel10k 会引导你完成配置,选择你喜欢的配置选项即可

p10k configure # 重新配置主题
Zsh 别名

编辑 ~/.zshrc 文件:

vim ~/.zshrc

添加常用别名:

alias ll='ls -la'
alias gs='git status'

保存并应用更改:

source ~/.zshrc

一键脚本

创建文件zsh-setup.sh

vim zsh-setup.sh,将下面代码粘贴进来

#!/bin/bash

# 更新系统并安装 Zsh
sudo yum update -y
sudo yum install -y zsh

# 将默认 shell 更改为 Zsh
chsh -s $(which zsh)

# 安装 Oh My Zsh
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

# 安装 Powerline 和字体支持
sudo yum install -y epel-release
sudo yum install -y powerline powerline-fonts

# 配置 Powerline
cat >> ~/.zshrc << 'EOF'
if [ -f /usr/share/powerline/zsh/powerline.zsh ]; then
    source /usr/share/powerline/zsh/powerline.zsh
fi
EOF

# 安装 zsh-syntax-highlighting 插件
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ~/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting

# 安装 zsh-autosuggestions 插件
git clone https://github.com/zsh-users/zsh-autosuggestions ~/.oh-my-zsh/custom/plugins/zsh-autosuggestions

# 安装 fzf 插件
git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf
~/.fzf/install --all

# 安装 zsh-history-substring-search 插件
git clone https://github.com/zsh-users/zsh-history-substring-search ~/.oh-my-zsh/custom/plugins/zsh-history-substring-search

# 安装 z 插件
git clone https://github.com/rupa/z.git /var/local/z

# 配置插件
cat >> ~/.zshrc << 'EOF'
plugins=(
    git
    zsh-syntax-highlighting
    zsh-autosuggestions
    zsh-history-substring-search
    z
)

source ~/.oh-my-zsh/custom/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh
source ~/.oh-my-zsh/custom/plugins/zsh-history-substring-search/zsh-history-substring-search.zsh
source ~/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh

# z 插件配置
source /var/local/z/z.sh

# zsh-history-substring-search configuration
bindkey '^[[A' history-substring-search-up
bindkey '^[[B' history-substring-search-down

# fzf configuration
[ -f ~/.fzf.zsh ] && source ~/.fzf.zsh
EOF

# 安装 Powerlevel10k 主题
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/themes/powerlevel10k

# 配置 Powerlevel10k 主题
sed -i 's/ZSH_THEME=".*"/ZSH_THEME="powerlevel10k\/powerlevel10k"/' ~/.zshrc

# 重新加载 Zsh 配置
source ~/.zshrc

# 提示用户重新登录以使更改生效
echo "Please log out and log back in to apply the changes."

chmod +x zsh-setup.sh赋予执行权限

./zsh-setup.sh执行两次脚本,再执行source ~/.zshrc

恢复为bash

echo $SHELL  #查看当前命令行
which bash  # 查看bash所在目录
chsh -s /bin/bash  # 后面目录为你上述命令执行结果,切换命令行

ubuntu

和centos基本一致,将yum换成apt安装命令即可

一键脚本也是将yum换成apt

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2264372.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Antd react上传图片格式限制

限制分辨率&#xff08;像素&#xff09; <a-upload :before-upload"beforeUpload">// 上传图片宽高比例限制const beforeUpload file > {return new Promise((resolve, reject) > {// // 图片类型限制// let isJpgOrPng file.type image/png || fil…

基于 iAP2 协议 的指令协议,用于对安防设备的 MCU 进行操作

协议设计目标 1. 安全性&#xff1a;通过 iAP2 协议与 MCU 设备进行安全通信。 2. 通用性&#xff1a;支持对安防设备的常见功能进行操作&#xff0c;如状态查询、设备控制、参数配置等。 3. 高效性&#xff1a;数据结构简洁清晰&#xff0c;易于解析和扩展。 4. 扩展性&#x…

Type-C单口便携屏LDR6021

随着科技的飞速发展&#xff0c;便携式电子产品在我们的日常生活中扮演着越来越重要的角色。在这一背景下&#xff0c;Type-C单口便携显示器作为一种新兴的显示设备&#xff0c;凭借其独特的优势迅速崭露头角&#xff0c;成为市场的新宠。本文将深入探讨Type-C单口便携显示器的…

Ubuntu 20.04 卸载和安装 MySQL8.0

卸载 首先&#xff0c;检查一下系统安装的软件包有哪些&#xff0c;使用dpkg -l | grep mysql命令&#xff1a; 为了将MySQL卸载干净&#xff0c;这些文件都需要被删除。 在Ubuntu20.04系统下&#xff0c;卸载干净MySQL8.0以确保下一次安装不会出错&#xff0c;可以按照以下…

NOTEBOOK_11 汽车电子设备分享(工作经验)

汽车电子设备分享 摘要 本文主要列出汽车电子应用的一些实验设备和生产设备&#xff0c;部分会给予一定推荐。目录 摘要一、通用工具&#xff1a;二、测量与测试仪器2.1测量仪器2.2无线通讯测量仪器2.3元器件测试仪2.4安规测试仪2.5电源供应器2.6电磁兼容测试设备2.7可靠性环境…

黑马Java面试教程_P8_并发编程

系列博客目录 文章目录 系列博客目录前言1.线程的基础知识1.1 线程和进程的区别&#xff1f;难2频3面试文稿 1.2 并行和并发有什么区别&#xff1f; 难1频1面试文稿 1.3 创建线程的四种方式 难2频4面试文稿 1.4 runnable 和 callable 有什么区别 难2频3面试文稿 1.5 线程的 run…

【活动邀请·深圳】深圳COC社区 深圳 AWS UG 2024 re:Invent re:Cap

re:Invent 是全球云计算领域的顶级盛会&#xff0c;每年都会吸引来自世界各地的技术领袖、创新者和实践者汇聚一堂&#xff0c;分享最新的技术成果和创新实践&#xff0c;深圳 UG 作为亚马逊云科技技术社区的重要组成部分&#xff0c;将借助 re:Invent 的东风&#xff0c;举办此…

一起学Git【第二节:创建版本库】

创建库 这个库相当于一个目录&#xff0c;目录中的文件都被Git管理&#xff0c;会记录每个文件的修改删除和添加工作&#xff0c;便于之后随时跟踪历史记录还原到之前的某一版本。如何创建库呢&#xff1f;有两种方式&#xff0c;本地创建库和云端克隆一个库。 1.本地创建库 …

本地部署webrtc应用怎么把http协议改成https协议?

环境&#xff1a; WSL2 Ubuntu22.04 webrtc视频聊天应用 问题描述&#xff1a; 本地部署webrtc应用怎么把http协议改成https协议&#xff1f; http协议在安卓手机浏览器上用不了麦克风本&#xff0c;来地应用webrtc 本来是http协议&#xff0c;在安卓手机上浏览器不支持使…

web实操8-cookie

会话技术 会话&#xff1a; 一次会话中包含多次请求和响应。 客户端浏览器访问服务器的资源&#xff0c;只要客户端或者服务器端不关闭&#xff0c;这始终在一次会话范围内&#xff0c;这一次会话范围内可以包含多次请求并且收到多次相应。 一次会话&#xff1a;浏览器第一…

vue2 - Day03 - (生命周期、组件、组件通信)

文章目录 一、生命周期1. 创建阶段2. 挂载阶段3. 更新阶段4. 销毁阶段5. 错误捕获总结 二、组件2.1 注册1. 全局注册 - 公共的组件。2. 局部注册总结 2.2 三大重要的组成部分1. 模板 (Template)主要功能&#xff1a;说明&#xff1a; 2. 脚本 (Script)主要功能&#xff1a;说明…

java日常工作开发高并发问题

前言 本篇文章将是以工作中经常遇到的问题&#xff0c;和面试中经常遇到的java问题进行描写。内容包括微服架构&#xff0c;java并发编程以及相应的中间件的高级知识。本文所有的问题都在描述多线程编程的高级知识。 一. 面试题 1.Sychronized和ReentrantLock有哪些不同点? …

【Python】【数据分析】深入探索 Python 数据可视化:Matplotlib 绘图库完整教程

目录 引言一、什么是 Matplotlib&#xff1f;1.1 Matplotlib 的安装1.2 Matplotlib 的基本功能 二、Matplotlib 的基础绘图2.1 绘制折线图2.2 绘制柱状图2.3 绘制散点图2.4 绘制饼图 三、高级功能与定制3.1 设置图表样式3.2 使用子图3.3 保存图表 四、Matplotlib 流程图4.1 Mer…

【代码随想录|动态规划背包问题】

一、背包问题分类 01背包&#xff1a;n种物品&#xff0c;每种物品只有一个 完全背包&#xff1a;n种物品&#xff0c;每种物品有无限个 多重背包&#xff1a;n种物品&#xff0c;每种物品的个数各不相同 二、01背包问题三道题 卡码网46题.携带研究材料&#xff08;二维背包…

第1章 命题逻辑

2024年12月22日 一稿 1.1 现代逻辑学的基本研究方法 1.2 命题及其表示法 1.2.1 命题的概念 定义1.1 命题是一个可以判断真假的陈述句。 1.2.2 联结词 非 与 或 蕴含 等价 1.3 命题公式与语句形式化 1.3.1 命题公式的定义 1.3.2 公式的层次 1.3.3 语句形式化 1…

Unity-Editor扩展GUI基本实现一个可拖拉放的格子列表

短短几百行代码,好吧,又是“参考”了国外的月亮 操作,还真地挺自然的。。。。。。国外的实现有点小牛 拖拉,增加+ 一个Element 鼠标左键长按,可以出提示 鼠标右键,清除Element, 有点小bug,不是很自然地完全清除, using System.Collections; using System.Collecti…

解决vscode ssh远程连接服务器一直卡在下载 vscode server问题

目录 方法1&#xff1a;使用科学上网 方法2&#xff1a;手动下载 方法3 在使用vscode使用ssh远程连接服务器时&#xff0c;一直卡在下载"vscode 服务器"阶段&#xff0c;但MobaXterm可以正常连接服务器&#xff0c;大概率是网络问题&#xff0c;解决方法如下: 方…

重拾设计模式--外观模式

文章目录 外观模式&#xff08;Facade Pattern&#xff09;概述定义 外观模式UML图作用 外观模式的结构C 代码示例1C代码示例2总结 外观模式&#xff08;Facade Pattern&#xff09;概述 定义 外观模式是一种结构型设计模式&#xff0c;它为子系统中的一组接口提供了一个统一…

jvm栈帧结构

JVM(Java虚拟机)中的虚拟机栈是线程私有的,用于支持Java虚拟机进行方法调用和方法执行。而栈帧(Stack Frame)则是虚拟机栈的基本元素,每一个方法从调用开始至执行结束的整个过程,都对应着一个栈帧在虚拟机栈中从入栈到出栈的过程。栈帧的内部结构主要包括以下几个部分:…

2009 ~ 2019 年 408【计算机网络】大题解析

2009 年 路由算法&#xff08;9’&#xff09; 讲解视频推荐&#xff1a;【BOK408真题讲解-2009年&#xff08;催更就退网版&#xff09;】 某网络拓扑如下图所示&#xff0c;路由器 R1 通过接口 E1 、E2 分别连接局域网 1 、局域网 2 &#xff0c;通过接口 L0 连接路由器 R2 &…