【Linux】【Shell解释器使用小结】
- 定义:一种终端解释器,可以作为用户与操作系统内部通信的媒介,支持变量、参数、循环、分支等功能特性
- Shell脚本命令的工作方式:
- 交互式(interactive):用户输入一条指令就立即执行;// 例如,在命令行窗口输入 pwd 命令,该命令就被执行并显示当前绝对路径;
- 批处理式(batch):用户事先编写一个Shell脚本,Shell脚本会一次性执行脚本中诸多命令 // Shell脚本文件一般以.sh 为后缀名,以区别其它普通文件;
- Shell脚本文件主要包括以下三个部分:
- 第一行脚本声明,告诉系统使用哪种Shell解释器执行该脚本
- 第二行脚本注释,对脚本的介绍
- 后面是可执行语句
- Shell脚本运行示例(123.sh 是脚本名称,左边是脚本内容 右边在终端执行):
- Shell脚本进阶知识:
- 接收参数: $0表示脚本名称,$*所有参数值, $?显示上一次命令执行的返回值, $k 对应第k个位置上的参数值; 参数是在执行脚本的时候给出 如 "bash 123.sh one two three" 该123.sh脚本执行时会接收到3个参数,参数值分别为 one two three 在脚本中可以通过"$k"使用相应的参数值;
- 测试语句: 格式 [ 条件表达式 ] 注意条件表达式左右两边各应有1个空格:包括文件测试语句,逻辑测试语句,整数值比较语句,文件测试语句 例如:
3. 流程控制语句(语法)
-
-
-
- if语句: for语句:for 变量名 in 取值列表 do 命令序列 done
- 单分支: if 条件测试语句 then 命令序列 fi
- 双分支: if 条件测试操作 then 命令序列1 else 命令序列2 fi
- 多分支: if 条件测试操作1 then 命令序列1 elif 条件测试操作2 命令序列2 else 命令序列3 fi
- while语句: while 条件测试操作 do 命令序列 done
- case语句: case 变量值 in 模式1 命令序列1) ;; 模式2) 命令序列2 ;; …… *) 默认命令序列 esac
- if语句: for语句:for 变量名 in 取值列表 do 命令序列 done
-
-
- 计划任务服务程序:
- 可以用at命令在指定日期执行某些指令 如在命令行输入“at 20:00 11/14/2018”, 然后再后面的语句输入“python 123.py”,再按“Ctrl+D”键结束编写计划任务; 系统会自动在2018年11月14日20:00 执行“python 123.py”命令
- 参考书籍 《Linux就该这么学》
- 转载请注明出处
转载请注明出处及链接 谢谢