Linux 超级漂亮的 Shell

相关阅读:一款神仙接私活低代码平台,吊到不行(附源码)

来自:入门小站

先来一张美图

e9c97ab75114de21d2546a53270a0234.png

zsh 介绍

Linux shell

Linux/Unix 提供了很多种 Shell,为毛要这么多 Shell?

难道用来炒着吃么?那我问你,你同类型的衣服怎么有那么多件?花色,质地还不一样。写程序比买衣服复杂多了,而且程序员往往负责把复杂的事情搞简单,简单的事情搞复杂。

牛程序员看到不爽的 Shell,就会自己重新写一套,慢慢形成了一些标准,常用的 Shell 有这么几种,sh、bash、csh 等,想知道你的系统有几种 shell,可以通过以下命令查看:

cat /etc/shells

显示如下:

009a6be3c6d43190af4d426457714ada.png

2 zsh 简介

Zsh 是一个 Linux 下强大的 shell, 由于大多数 Linux 产品安装,以及默认使用bash shell, 但是丝毫不影响极客们对 zsh 的热衷, 几乎每一款 Linux 产品都包含有 zsh,通常可以用 apt-get、urpmi 或 yum 等包管理器进行安装

Zsh 具有以下主要功能

3 zsh 与 oh-my-zsh 终极配置

之前是因为看到这篇文章:终极 Shell——Zsh 才选择使用 zsh,被它的自动完成、补全功能吸引了。官网:www.zsh.org

选择 oh-my-zsh, oh-my-zsh 是基于 zsh 的功能做了一个扩展,方便的插件管理、主题自定义,以及漂亮的自动完成效果。

在 Github 上找关于 zsh 的项目时发现的,试用了一下觉得很方便,不用像上面文章里面提到的那么复杂,配置一些插件的名称即可使用相应的功能。

官网:https://github.com/robbyrussell/oh-my-zsh

安装 zsh

安装 zsh

对于一般的 Ubuntu 系统,配置好正确的源之后,就能直接键入以下命令安装:

sudo apt-get install zsh

 配置 zsh

zsh 的配置是一门大学问,这里不赘述,直接给出一个配置文件,大家可以下载后放入 zsh 配置文档直接使用。(我的一个法国朋友手配的,相当顺手)

把. zshrc 拷贝到相应用户的 home 目录即可

(也可以把你的 bash 的配置文件 (~/.bash_prorile 或者~/.profile 等) 给拷贝到 zsh 的配置文件~/.zshrc 里,因为 zsh 兼容 bash)

或者

chsh -s /bin/zsh
chsh -s `which zsh`

如果要切换回去 bash:

chsh -s /bin/bash

当然你实在不愿意把 zsh 当成默认的 shell, 而又想使用它, 那么你可以每次进入是都使用zsh进入, 而输入exit退出

671650971ffd86cc474bf0bf75440f57.png

安装 oh-my-zsh

直接用 zsh 会很蛋疼,因为 zsh 功能很强大但是太复杂,所以需要 oh-my-zsh 来将它简单化

直接用 git 从 github 上面下载包

git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh

备份已有的 zshrc, 替换 zshrc

cp ~/.zshrc ~/.zshrc.orig
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc

直接使用脚本安装

cd oh-my-zsh/tools
./install.sh

你可以直接直接使用如下命令安装

curl

sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

wget

sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"

其本质就是下载并执行了 github 上的 install.sh 脚本, 该脚本位于oh-my-zsh/tools/install.sh

配置主题

oh-my-zsh 集成了大量的主题, 位于 oh-my-zsh/theme

配置主题, 可以通过修改~/.zshrc中的环境变量ZSH_THEME来完成

ZSH_THEME="agnoster" # (this is one of the fancy ones)

如果你觉得主题太多你可以选择使用随机模式, 来由系统随机选择

ZSH_THEME="random" # (...please let it be pie... please be some pie..)

7c263d32edf09c06d85ade0344e08d48.png

详细的主题信息, 可以参见 zsh 主题介绍,另外,微信搜索公众号:互联网架构师,回复:面试 领取资料 。

配置插件

修改~/.zshrc中plugins

plugins=(git bundler osx rake ruby)

详细的插件信息, 可以参见 zsh 插件 Plugins 介绍

更新 oh-my-zsh

默认情况下, 您将被提示检查每几周的升级. 如果你想我 ZSH 自动升级本身没有提示你, 修改 `~/.zshrc

disable_update_prompt = true

禁用自动升级, 修改~/.zshrc

disable_auto_update = true

当然你也可以选择手动更新

如果你想在任何时间点升级(也许有人刚刚发布了一个新的插件,你不想等待一个星期?) 你只需要运行:

upgrade_oh_my_zsh

卸载 oh-my-zsh

如果你想卸载oh-my-zsh, 只需要执行uninstall_oh_my_zsh zsh, 从命令行运行. 这将删除本身和恢复你以前的 bash 或者 zsh 配置.

uninstall_oh_my_zsh zsh

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
-End-

1、985副教授工资曝光

2、心态崩了!税前2万4,到手1万4,年终奖扣税方式1月1日起施行~

3、雷军做程序员时写的博客,很强大!

4、人脸识别的时候,一定要穿上衣服啊!

5、清华大学:2021 元宇宙研究报告!

6、绩效被打3.25B,员工将支付宝告上了法院,判了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux C 模拟Shell 是指使用C语言编写一个可以执行类似于Linux Shell的功能的程序。ShellLinux 下的命令行解释器,通过输入命令可以实现很多功能,包括文件操作、进程管理、权限控制等。模拟Shell意味着我们需要在C语言中实现类似的功能。 要实现一个模拟Shell,首先需要解析用户输入的命令。用户输入的命令一般包括命令本身和参数,我们可以使用C语言的字符串处理函数将命令和参数进行拆分和解析。然后,根据命令的类型,我们可以使用C语言调用相关的系统调用或库函数来实现相应的功能。如,使用 `fork()` 创建子进程执行外部命令,使用 `exec()` 系列函数执行外部程序,使用 `chdir()` 改变当前工作目录等等。 在实现Shell的功能时,还需要考虑输入输出重定向、管道和后台执行等特殊功能。比如,可以使用 `dup2()` 来实现输入输出重定向,使用 `pipe()` 来实现管道,使用 `fork()` 和 `exec()` 来实现后台执行。 最后,需要设置一个循环,即一个命令行提示符,使得用户可以不断输入命令并执行。在每次循环中,我们对用户输入的命令进行解析和处理,然后再次等待用户输入。 总结来说,要实现Linux C 模拟Shell,我们需要用C语言实现命令解析、系统调用、特殊功能等相关功能,并设置一个循环来持续接受用户指令。这样就可以实现一个简单的模拟Shell程序。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值