Java学习日记 20210421 shell

本文详细介绍了Shell,它是操作系统与应用程序之间的主要接口,负责解释命令和输出。主要内容包括Shell的使用方法(手工和脚本),注释,变量(普通变量、命令变量、只读变量及删除变量),数组,字符串运算,关系运算符,布尔运算,逻辑运算符,以及if判断语句,for和while循环,函数和read命令。通过实例展示了如何在Shell中进行各种操作。
摘要由CSDN通过智能技术生成

shell
shell是一个命令解释器。
shell是位于操作系统和应用程序之间,是他们二者最主要的接口。
shell负责把应用程序的输入命令信息解释给操作系统,将操作系统指令处理后的结果解释给应用程序
shell就是早操作系统和应用程序之间的一个命令翻译工具。

使用方法: 手工方式:
手打键盘,输入命令,然后按下回车
脚本方式:
我们把手工执行的命令写到一个文件中,然后运行这个我呢见,达到执行命令的效果。这个文件就叫做脚本文件。

shell注释

单行注释: # 注释内容
多行注释: :<<! 注释内容 !

shell变量

普通变量:
变量名 = 变量值 变量值必须是一个整体,中间没有特殊字符
变量名= ‘变量值’ 单引号中的内容,原样赋值
变量名= “变量值” 如果双引号中有其他变量,会把变量的结果进行拼接,然后赋值。
命令变量
变量名=命令
变量名=$(命令)
使用变量
变 量 名 非 标 准 写 法 , 图 省 事 " 变量名 非标准写法,图省事 " "变量名" 非标准写法,图省事
变 量 名 在 双 引 号 里 面 要 使 用 变 量 的 值 " {变量名} 在双引号里面要使用变量的值 " 使"{变量名}" 标准写法
只读变量 readonly变量名
删除变量 unset变量名
shell数组*
定义数组: 数组名=(值1 值2…) arr=(1 2 3 4 5)
给数组的元素赋值: 数组名[索引]=值 arr[0]=1
获取元素:${数组名[下标]} a r r [ 0 ] 获 取 长 度 : {arr[0]} 获取长度: arr[0]{#数组名[]} ${#arr[]}
${#数组名[@]} ${#arr[@]}
shell字符串运算
条件表达式在[]里面 0 为真 1为假
$?可以获取上一条语句的执行结果
shell关系运算符
关系运算符只支持数字,不支持字符串,除非字符串的值是数字。
-eq:判断两个数书否相等,相等返回true
-ne:判断两个数是否不相等,不相等返回true
-gt:检测左边的数是否大于右边,如果是,返回true
-lt:检测左边的数是否小于右边,如果是,返回true
-ge:检测左边的数是否大于等于右边,如果是,返回true
-le:检测左边的数是否小于等于右边,如果是,返回true
shell布尔运算
! 取反运算
-o 或运算,有一个表达式为true,则返回true
-a 与运算,两个表达式都为true,才返回true
shell逻辑运算符
&& [[ true && true ]] 返回true
|| [[ false || false]] 返回false
shell判断语句
if[条件] then 语句体 fi
if[条件] then 语句体 else 语句体 fi
if[条件1] then 语句体 elif[条件2] 语句体 else 语句体 fi
shell选择结构语句
case 值 in
模式1)
语句体1
;;
模式1)
语句体1
;;
esac
shell的for循环语句
for 变量 in 范围
do
循环体
done
shell的while循环语句
while 条件表达式
do
循环体
done
shell函数
无参无返回值函数的定义 : 函数名(){ 函数体 }
函数的调用:函数名
有参无返回值函数的定义 : 函数名(){
echo “第一个参数$1”
echo “第二个参数$2”
}
有参无返回值函数的调用:函数名 a b
有参有返回值函数的定义 : 函数名(){
echo “第一个参数$1”
echo “第二个参数$2”
return $(($1+$2))
}
有参无返回值函数的调用:函数名 a b echo $?

read 变量名 ----表示把键盘录入的数据复制给这个变量

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

淡抹宜人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值