RHCE从0到满分 shell脚本

shell

这一期主要讲解shell 脚本的编写。

1.基础知识

  • #!/bin/bash 脚本的声明,告诉谁可以认识我们的脚本
  • 这里有个知识需要普及一下:整数比较运算符仅是对数字的操作,不能将数字与字符串、文件等内容一起操作,而且不能想当然地使用日常生活中的等号、大于号、小于号等来判断。因为等号与赋值命令符冲突,大于号和小于号分别与输出重定向命令符和输入重定向命令符冲突。因此一定要使用规范的整数比较运算符来进行操作。
    • e:equal 相等
    • gt:grater than 大于
    • lt:less than 小于
      RHCE从0到满分 shell脚本_第1张图片
  • 字符串的比较
    RHCE从0到满分 shell脚本_第2张图片

2.参数

  • $0 接收的是脚本的名称
  • $1 接收第一个参数
  • $2 接收第二个参数
  • $# 参数的总个数
  • $* 参数分别是什么
[root@linuxprobe ~]# vim example.sh
#!/bin/bash
echo "当前脚本名称为$0"
echo "总共有$#个参数,分别是$*。"
echo "第1个参数为$1,第5个为$5。"
[root@linuxprobe ~]# sh example.sh one two three four five six
当前脚本名称为example.sh
总共有6个参数,分别是one two three four five six。
第1个参数为one,第5个为five。

3.判断语句

3.1 基本判断语句
3.1.1 定义
  • 格式 需要特别注意的是[ 语句 ] 语句前后有空格;否则会报错;
  • 基本的判断很简单,只有一个判断语句
[ 判断语句 ] 
3.1.2 示例代码
  • 判断/etc/fstab是否为一个目录类型的文件,然后通过Shell解释器的内设$?变量显示上一条命令执行后的返回值。如果返回值为0,则目录存在;如果返回值为非零的值,则意味着目录不存在
    RHCE从0到满分 shell脚本_第3张图片
[root@linuxprobe ~]# [ -d /etc/fstab ]
[root@linuxprobe ~]# echo $?
1
  • 判断/etc/fstab是否为一般文件,如果返回值为0,则代表文件存在,且为一般文件
  • 一般文件就是除了隐藏文件之外的。

你可能感兴趣的:(RHCE,shell,linux,rhel)