Shell
1. Shell脚本基本概述
1.1 什么是shell
Shell是一个命令解释器,它在操作系统的最外层,负责直接与用户进行对话,将用户输入的命令翻译给操作系统,并将处理的结果输出至屏幕。
shell的两种使用方式:r
- 交互:登录 执行命令 退出
- 非交互:执行某个文件,文件中都是一堆命令,整个文件从上往下依次执行
1.2 什么是shell脚本
- 将系统命令堆积在一起,顺序执行
- 特定的格式+特定的语法+系统的命令=文件
1.3 Shell脚本的标准
标准:
1.安装方式一致
2.安装路径一致
3.目录结构一致
4.日志格式一致
5.脚本路径一致
2. Shell脚本抒写方式
2.1 shell脚本命名
- 编写脚本时,名字要有意义
- 脚本名不宜过长
- 由于Linux系统中,文件没有扩展名,但还是建议以.sh结尾 。如:check_memory.sh
2.2 shell脚本格式
shell脚本开头必须指定脚本的运行环境,以#!这两个特殊符号来组成。如:#!/bin/bash指定该脚本是运行解析由/bin/bash来完成的。
shell脚本的两种执行方式:
1.加执行权限 ./script_filename.sh
2.通过bash直接翻译:bash script_filename.sh
2.3 shell脚本中的#号使用
[root@manger ~]# cat check_system_status.sh
#!/usr/bin/bash
# Author: xiaowang
# Created Time: 2020/02/02 10:00 v1.1
# Script Description: 检查系统状态的脚本,比如cpu 内存 磁盘 网络 等等
==注意==
!/usr/bin/bash 加与不加区别在哪?
1.如果你明确清楚这是一个什么类型的脚本,直接调用对应的解释器执行,没有影响?
2.如果你不清楚是什么类型的脚本, 直接使用./执行,那么会读取该脚本的第一行
如果第一行是#!/usr/bin/bash 或者 没有写该行,那么都将使用默认的bash翻译
问题: 如果我是一个python脚本,没有写开头,那么执行一定会报错
因为默认查找的是bash解释器,而我的文件需要用python解释器来翻译.
网友评论