【CSH 入门基础 5 番外篇 -- zsh和bash区别及其使用介绍】

文章目录

    • 1.1 zsh 和 bash 的区别
      • 1.1.1 oh-my-zsh 介绍
      • 1.1.2 zsh 插件 zsh-autosuggestions.zsh

1.1 zsh 和 bash 的区别

在Linux环境下,Bash和Zsh都是非常常见的Shell环境,它们都可以用来执行命令行指令,运行脚本等,但是它们之间也有一些主要的区别:

  • 交互性: Zsh提供了更强大的交互性特性,例如更好的自动补全、拼写纠正等功能。而Bash的交互性特性相对较弱;

  • 配置: Zsh有一个交互式配置器,可以用来定制你的shell环境。而Bash的配置过程通常需要编辑.bashrc.bash_profile 文件;

  • 兼容性: Bash 几乎在所有的 Unix系统中都是默认的shell环境,它的脚本在几乎所有的Unix和Linux系统上都能运行。而Zsh虽然在大多数系统上都能运行,但是它并不是所有系统的默认shell环境;

  • 社区支持: Bash有着大量的用户和社区支持,因此你能找到很多关于Bash的教程和资源。而Zsh虽然也有一定的用户基础,但相比Bash来说,其用户群体和社区支持相对较小;

  • 插件和主题:Zsh有一个名为Oh-My-Zsh的社区驱动的框架,其中包含了大量的插件和主题,帮助用户个性化和增强自己的Shell环境。而Bash则缺乏类似的框架,用户需要手动配置和安装插件。

1.1.1 oh-my-zsh 介绍

以下是一些Oh-My-Zsh的主要特性:

  • 插件系统:Oh-My-Zsh提供了一套插件系统,有超过200个可选的插件,包括git、npm、ruby等常用开发工具的快捷命令;

  • 主题系统:Oh-My-Zsh提供了一个主题系统,有很多美观的主题可供选择,可以个性化你的命令行界面;

  • 自动升级:Oh-My-Zsh会定期自动检查并下载升级,保持你的Shell环境始终是最新的;

  • 高度可定制:Oh-My-Zsh允许用户在~/.zshrc文件中添加自己的别名、函数和脚本,使得你的Zsh环境可以根据自己的需求进行定制;

  • 社区驱动:Oh-My-Zsh是社区驱动的项目,有很多活跃的贡献者和用户,你可以轻松找到解答你问题的人和资源。

安装Oh-My-Zsh后,你可以非常方便地使用和管理Zsh的功能,以及定制你自己的Zsh环境。

1.1.2 zsh 插件 zsh-autosuggestions.zsh

比如 zsh-autosuggestions.zsh 的配置可以参考下面步骤:
1 mkdir ~/.zsh && cd ~/.zsh
2 git clone git@github.com:ohmyzsh/ohmyzsh.git
3 git clone git@github.com:zsh-users/zsh-autosuggestions.git

需要的文件下载下来后如果电脑可以联网可以直接按照提示操作进行安装,如果个人在公司电脑没有安装权限(有些公司都是登陆公司远程服务器办公,员工没有软件安装权限),可以自己在家目录下建立一个 .zsh,然后定制自己的 .zshrc, 当前也可以网上参考别人的。

我的简单配置如下:

# Path to your oh-my-zsh installation.
# ZSH_THEME="ys_nogit"
ZSH_THEME="ys"
# Uncomment the following line to disable bi-weekly auto-update checks.
DISABLE_AUTO_UPDATE="true"
# Would you like to use another custom folder than $ZSH/custom?
# ZSH_CUSTOM=/path/to/new-custom-folder# Which plugins would you like to load?
# Standard plugins can be found in $ZSH/plugins/
# Custom plugins may be added to $ZSH_CUSTOM/plugins/
# Example format: plugins=(rails git textmate ruby lighthouse)
# Add wisely, as too many plugins slow down shell startup.
plugins=(gitpipsudolast-working-dir
)
source $ZSH/oh-my-zsh.sh
source /mnt/user_home/dami/.zsh/zsh-autosuggestions/zsh-autosuggestions.zsh
...

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

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

相关文章

若依部署前后端

打包项目 前端打包 npm run build:prod将代码上传到指定目录 配置nginx转发 server{listen 8090;server_name localhost;location / {root /home/cc_library/dist;index index.html index.htm;# 配置 history模式,刷新页面会404,,因为服…

基于k8s job设计与实现CI/CD系统

方案一:Jenkinsk8sCICD 方案二:kanikok8s jobCICD CICD 基于K8s Job设计流水线 CI方案 工具镜像 云原生镜像打包工具 kaniko的使用 与Jenkins对比 可用性与易用性

Flutter参考资料

Flutter 官网 : https://flutter.dev/ Flutter 插件下载地址 : https://pub.dev/packages Flutter 开发文档 : https://flutter.cn/docs ( 强烈推荐 ) 官方 GitHub 地址 : https://github.com/flutter Flutter 中文社区 : https://flutter.cn/ Flutter 实用教程 : https://flut…

SAP MM学习笔记18- SQVI 工具

Tr-cd SQVI 是一个SAP数据库工具。 使用这个工具,可以自己构建查询界面中的条件,查询对象,从而自由查询数据,实现标准没有的功能。 1,SQVI 和 SQ1,SQ2,SQ3 的不同 SQ1,2&#xff0…

DevOps在项目管理中的魔法:简化与深化

什么是DevOps? 定义与核心思想 DevOps, 这个名词,在技术领域中饱受瞩目。但它到底是什么?首先,DevOps并不仅仅是一个技术或者工具,它首先是一种文化,一种思想。DevOps是Development(开发&#…

数据库管理-第九十八期 统计信息是多么重要(20230812)

数据库管理-第九十八期 统计信息是多么重要(20230812) 每天通过EM可视化巡视数据库执行情况,发现那些执行比较长的语句要么是索引没用上、要么是索引没建。但更多的是发现执行计划中“估计的行数”与“行数”(执行的)…

图解java.util.concurrent并发包源码系列——Condition条件等待队列深入详解

图解java.util.concurrent并发包源码系列——Condition条件等待队列深入详解 Condition的作用Condition的原理Condition源码Condition的定义和Condition对象的获取await方法addConditionWaiter方法unlinkCancelledWaiters方法 fullyRelease方法isOnSyncQueue方法checkInterrupt…

LeetCode //C - 290. Word Pattern

290. Word Pattern Given a pattern and a string s, find if s follows the same pattern. Here follow means a full match, such that there is a bijection between a letter in pattern and a non-empty word in s. Example 1: Input: pattern “abba”, s “dog c…

【Windows10下启动RocketMQ报错:找不到或无法加载主类 Files\Java\jdk1.8.0_301\lib\dt.jar】解决方法

Windows10下启动RocketMQ报错:找不到或无法加载主类 一、问题产生二、产生原因三、解决办法 一、问题产生 参考RocketMQ Github官网上的说明,下载rocketmq-all-5.1.3-bin-release.zip,解压配置环境变量后,执行如下命令&#xff1a…

竞赛项目 深度学习手势识别算法实现 - opencv python

文章目录 1 前言2 项目背景3 任务描述4 环境搭配5 项目实现5.1 准备数据5.2 构建网络5.3 开始训练5.4 模型评估 6 识别效果7 最后 1 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 深度学习手势识别算法实现 - opencv python 该项目较为新颖…

基于Flask的模型部署

基于Flask的模型部署 一、背景 Flask:一个使用Python编写的轻量级Web应用程序框架; 首先需要明确模型部署的两种方式:在线和离线; 在线:就是将模型部署到类似于服务器上,调用需要通过网络传输数据&…

【Windows 常用工具系列 5 -- 如何在网页(CSDN)中实现右上角及右下角数字显示】

文章目录 网页右上角/右下角标号写法 网页右上角/右下角标号写法 在网页撰写文章时经常遇到需要平方的写法&#xff0c;比如书写 X 的 2次方, 可以通过下面方法完成&#xff1a; <sup>x</sup> : x 上移到右上角;<sub>x</sub> : x 下移到右下角。 实…

【数据结构】反转链表、链表的中间节点、链表的回文结构(单链表OJ题)

正如标题所说&#xff0c;本文会图文详细解析三道单链表OJ题&#xff0c;分别为&#xff1a; 反转链表 &#xff08;简单&#xff09; 链表的中间节点 &#xff08;简单&#xff09; 链表的回文结构 &#xff08;较难&#xff09; 把他们放在一起讲的原因是&#xff1a; 反转链…

面试题02

这里写目录标题 主存储器和CPU之间增加Cache的目的是?判断一个char变量c1是否为小写字母循环链表顺序存储的线性表,访问结点和增加删除结点的时间复杂度请列举你所知道的c/c++ 语言中引入性能开销或阻碍编译优化的语言特性,并尝试说明对应的解决办法请列举CPU cache对编程开…

如何从项目中学习

日常工作中&#xff0c;经常会有这样的错觉&#xff0c;就是明明感觉参与了不少项目&#xff0c;但是好像技术并没有提升太多。 那原因大概率是&#xff0c;平时工作内容是非核心业务&#xff0c;更多是在CRUD的“打螺丝”。无法接触到核心的优质业务、或者参与到架构设计方面来…

A2C原理和代码实现

参考王树森《深度强化学习》课程和书籍 1、A2C原理&#xff1a; Observe a transition&#xff1a; ( s t , a t , r t , s t 1 ) (s_t,{a_t},r_t,s_{t1}) (st​,at​,rt​,st1​) TD target: y t r t γ ⋅ v ( s t 1 ; w ) . y_{t} r_{t}\gamma\cdot v(s_{t1};\mathbf…

【RabbitMQ】golang客户端教程5——使用topic交换器

topic交换器&#xff08;主题交换器&#xff09; 发送到topic交换器的消息不能具有随意的routing_key——它必须是单词列表&#xff0c;以点分隔。这些词可以是任何东西&#xff0c;但通常它们指定与消息相关的某些功能。一些有效的routing_key示例&#xff1a;“stock.usd.ny…

知识图谱基本工具Neo4j使用笔记 四 :使用csv文件批量导入图谱数据

文章目录 一、系统说明二、说明三、简单介绍1. 相关代码以及参数2. 简单示例 四、实际数据实践1. 前期准备&#xff08;1&#xff09; 创建一个用于测试的neo4j数据库&#xff08;2&#xff09;启动neo4j 查看数据库 2. 实践&#xff08;1&#xff09; OK 上面完成后&#xff0…

阿里云Linux服务器安装FTP站点全流程

阿里云百科分享使用阿里云服务器安装FTP全教程&#xff0c;vsftpd&#xff08;very secure FTP daemon&#xff09;是Linux下的一款小巧轻快、安全易用的FTP服务器软件。本教程介绍如何在Linux实例上安装并配置vsftpd。 目录 前提条件 步骤一&#xff1a;安装vsftpd 步骤二…

QT正则校验

文章目录 前言一、Qt正则校验1.对输入框进行校验&#xff0c;不允许输入其他字符2.直接校验字符串 二、常用正则校验表达式 前言 项目中会经常遇到需要对字符串进行校验的情况&#xff0c;需要用到正则表达式&#xff08;Regular Expression&#xff0c;通常简写为RegExp、RE等…