utshell 用户手册
介绍
utshell 是一个与 bash 兼容的 shell。它实现了基本的内建命令执行和启动外部命令。同时也实现了任务、管道和信号处理等功能。
安装和卸载
安装
utshell 使用 rpm 命令进行安装,我们假设使用的是欧拉的 2309 系统:
进入命令行界面执行:
根据提示输入"y",即可安装成功。
卸载
在命令行执行rpm -e utshell
即可卸载 utshell。
rpm -e utshell
使用
一般命令
在 utshell 环境下,直接键入命令名即可执行对应的命令。
utshell 支持如下内建命令:
变量定义和使用
变量定义
变量定义直接用"=",中间不能有空格。
var=4
变量使用
echo \${var}
数组的定义和使用
数组的定义
distros=(ubuntu fedora suse \"arch linux\")
数组的使用
echo \${distros\[2\]}
函数定义和使用
函数的定义
func() { echo \$1; }
函数的调用
func 1
给函数传递参数
调用函数时,在函数名后面直接已空格分割参数:
func firstParam secondParam
在函数体中使用$1,$2......其中$1 表示第一个参数,$2 表示第二个参数,大于 9 的需要用大括号括起来。
func() {
echo \$1 \${10} \#需要传递 10 个参数
}
\#调用
func 1 2 3 4 5 6 7 8 9 0
逻辑判断
if 语句
语法为:
if condition; then
do-if-true;
elif second-condition; then
do-else-if-true
elif third-condition; then
do-else-if-third-true
else
do-else-false
fi
其中 condition 可以是命令,如:
if \[ \"\$s\" = \"string\" \]; then
echo \"string is equivalent to \\\$s\"
else
echo \"string is not equivalent to \\\$s\"
fi
也可以是测试条件操作符:
下面简单介绍些条件操作符:
-f 检查文件是否存在并且它是一个普通文件。
-d 检查提供的参数是否是目录。
-h 检查提供的参数是否是符号链接。
-s 检查文件是否存在且不为空。
-r 检查文件是否可读。
-w 检查文件是否可写。
-x 检查文件是否可执行。
如果用于数字比较,可以用如下测试条件操作符:
-lt 小于
-gt 大于
-ge 大于等于
-le 小于等于
-ne 不等于
如果用于字符串比较,可以用如下测试条件操作符:
== 两个字符串相同
= 两个字符串相同(同==)
!= 两个字符串不同
-z 空字符串,返回 true
-n 长度不是 0,则返回 true
循环
for 循环
for number in 1 2 3 4 5
do
echo \$number
done
使用列表:
for number in {1..500..2}
do
echo \$number
done
其中{1..500..2}表示起始数字为 1,结束数字为 500(包括),步长为 2。
until 循环
until \[condition\]; do
commands
done
当条件为真时,执行循环;
while 循环
while \[ condition \]; do
commands
done
当条件为真时,执行循环。
文档捉虫