文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

linux shell常用的脚本语句语法

2023-06-13 05:53

关注

这篇文章主要介绍“linux shell常用的脚本语句语法”,在日常操作中,相信很多人在linux shell常用的脚本语句语法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”linux shell常用的脚本语句语法”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

1shell中的if语句语法
我发现有时候等于是用eq表示,有时候用=标准,不明白
==============
eq数值
=字符串!!!
==============
可以看看man test
==============
流程控制

if 表达式 如果条件为真则执行then后面的部分:
if ....
then
....
elif ....
then
....
else
....
fi
大多数情况下,可以使用测试命令来对条件进行测试。比如可以比较字符串、判断文件是否存在及是否可读等等…
通常用 [ ] 来表示条件测试。注意这里的空格很重要。要确保方括号的空格。
[ -f somefile ] :判断是否是一个文件
[ -x /bin/ls ] :判断/bin/ls是否存在并有可执行权限
[ -n $var ] :判断$var变量是否有值
[ $a = $b ] :判断$a和$b是否相等
==============
今天看到一本书,上面说if语句中如果用=,<,>等比较符号是,应该写在括号中,如果是用-eq,-lt等就应该写在[ ]中,是这样嘛??
==============
这应该是针对 ksh/bash 的,因为它们都对原来的sh进行了扩展,可以直接使用
< > = 来进行数值判断,但是就象你提到的,要写在 (( )) 中。
==============
if 之后的判断是test语法,而
if [表达式] 和
if test 表达式
是等价的
++++++++++++++++++++++++++++++++++++
test命令用法:
1)判断表达式
if test (表达式为真)
if test !表达式为假
test 表达式1 &ndash;a 表达式2 两个表达式都为真
test 表达式1 &ndash;o 表达式2 两个表达式有一个为真

2)判断字符串
test &ndash;n 字符串 字符串的长度非零
test &ndash;z 字符串 字符串的长度为零
test 字符串1=字符串2 字符串相等
test 字符串1!=字符串2 字符串不等

3)判断整数
test 整数1 &ndash;eq 整数2 整数相等
test 整数1 &ndash;ge 整数2 整数1大于等于整数2
test 整数1 &ndash;gt 整数2 整数1大于整数2
test 整数1 &ndash;le 整数2 整数1小于等于整数2
test 整数1 &ndash;lt 整数2 整数1小于整数2
test 整数1 &ndash;ne 整数2 整数1不等于整数2

4)判断文件
test File1 &ndash;ef File2 两个文件具有同样的设备号和i结点号
test File1 &ndash;nt File2 文件1比文件2 新
test File1 &ndash;ot File2 文件1比文件2 旧
test &ndash;b File 文件存在并且是块设备文件
test &ndash;c File 文件存在并且是字符设备文件
test &ndash;d File 文件存在并且是目录
test &ndash;e File 文件存在
test &ndash;f File 文件存在并且是正规文件
test &ndash;g File 文件存在并且是设置了组ID
test &ndash;G File 文件存在并且属于有效组ID
test &ndash;h File 文件存在并且是一个符号链接(同-L)
test &ndash;k File 文件存在并且设置了sticky位
test &ndash;b File 文件存在并且是块设备文件
test &ndash;L File 文件存在并且是一个符号链接(同-h)
test &ndash;o File 文件存在并且属于有效用户ID
test &ndash;p File 文件存在并且是一个命名管道
test &ndash;r File 文件存在并且可读
test &ndash;s File 文件存在并且是一个套接字
test &ndash;t FD 文件描述符是在一个终端打开的转载请注明文章来

命令行内循环:
a=0 && while [ $a -lt 10 ] ; do echo $a && a=`expr $a + 1` ; done

到此,关于“linux shell常用的脚本语句语法”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-人工智能
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯