了解zsh shell

一、zsh的简介

zsh shell是由Paul Falstad 开发的一个开源Unix shell。它汲取所有现在shell设计理念,目的是为程序员创建一个无所不能的高级shell。它由如下特点:

  • 改进的shell选项处理
  • shell兼容模式
  • 可加载模块

因此zsh提供了添加额外命令模块的能力。

二、zsh的组成
1.选项

大多数情况下zsh使用选项来定制shell的行为,可以使用set命令设置shell选项。可用的选项如下:

-c :只执行指定的命令后退出
-i :启用交互式shell功能
-s :强制从标准输入中读取命令
-o :指定命令行选项
2.内置命令(部分)
命令意义
alias设置别名
autoload预加载shell函数到内存中
bg后台执行作业
builtin执行内置命令,而不是同名的外部命令
command执行外部命令,而不是内置的同名命令
emulate仿真其他shell
eval当前shell执行指定的命令和参数
exec执行命令和参数来替换当前的shell进程
zmodload加载额外的模块操作
3.操作模块
  • 查看当前已安装的模块
zmodload
  • 添加新的模块
zmodload zsh/zftp       <==命令上指定模块名称就可以
  • 删除已安装的模块
zmodload -u zsh/zftp

这些命令都是临时生效的,要想永久生效通常把这些命令放在.zshrc启动文件中。

三、脚本编程
1.数学运算

zsh提供了两种方式:

  • let命令
  • 双圆括号

实例:

  • let value1="2 * 3 / 3.2 " <==如果要加空格的话,使用双引号引起来。当然空格不是必须的。
  • value1=$((2 * 3 *4))
  • (( value1=2 * 3 * 4))
2.使用数学函数

安装zsh/mathfunc 模块才能使用数学函数,zmodload zsh/mathfunc。

value1=$(( sqrt(9) ))
3.结构化命令
  • if-then-else
  • for
  • while
  • until
  • select
  • case
  • repeat 用于重复执行命令多少次
repeat param
do
  commands
done
4.函数

zsh支持使用两种方式定义函数,如下:

  • function命令方式
  • 圆括号定义函数
    实例:
function functest{
  echo "This is a test function."
}

funchello() {
  echo "This is another test function."
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值