bshel笔记

bash shell

#!/bin/bash
echo "hello world";
位置参数和变量
参数描述
$0shell脚本名
$0–$9命令行参数对应的值
$*命令行中所有的参数,如果$*被""包括,则参数之间用环境变量IFS中的第一个字符隔开
$@命令行的所有参数,如果$@被""包括,所有参数不会结合在一起。(可用于遍历)
$#命令行参数的个数
$$shell脚本进程id
$?最近一次命令的退出状态
$!最近一次后台进程的id号

shift [N] 把命令行参数向前移动N个位置,可用于命令行参数多余9个的情况下。

set [option] agrnument-list 设置位置参数,可用来在脚本中改变位置参数的值等

$(命令) 命令替换,将命令的输出代替变量。

read [option] variable-list 变量的输入

控制结构
分支
if 表达式
then
    todo
fi

if 表达式
then
    todo
else
    todo
fi

if 表达式
then
    todo
elif 表达式
then
    todo
else
    todo
fi

case 变量 in
正则)
    todo ;;
*)
    default todo ;;
esca

test 表达式 =》判断表达式的逻辑值

[ 表达式 ] =》test命令的简写方式

字符串比较结果
str1 != str2不相等为真
str1 = str2相等为真
-n str不为空为真
-z str为空为真
数值比较结果
e1 -eq e2相等为真
e1 -ne e2不等为真
e1 -gt e2大于为真
e1 -ge e2大于等于为真
e1 -lt e2小于为真
e1 -le e2小于等于为真
文件相关结果
-d file目录为真
-e file存在为真
-f file普通文件为真
-g file文件SGID被置位为真
-r file可读为真
-w file可写为真
-x file可执行为真
-s file文件长度不为0为真
-u file文件SUID被置位为真
循环
for 变量 [in 变量列表]
do
    todo
done

while 表达式
do
    todo
done

until 表达式
do
    todo
done

break,continue同C程序中的意义。

exit n 程序结束,退出码为n

算术运算
  1. let命令
  2. $(())
  3. expr命令
    除了没有C中的++和–以外,其他的基本一致。
    **表示指数。
let “x=6” "y=9" "z=11"
let t=x+y

m=$((x-y))

n=`expr $x + $z` 【注意这里是反引号`】
函数

function_name()
{
函数体
}

调用

函数名 参数列表

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值