shell基础知识

Shell

1. Shell脚本基本概述

1.1 什么是shell

Shell是一个命令解释器,它在操作系统的最外层,负责直接与用户进行对话,将用户输入的命令翻译给操作系统,并将处理的结果输出至屏幕。

shell的两种使用方式:r

  • 交互:登录 执行命令 退出
  • 非交互:执行某个文件,文件中都是一堆命令,整个文件从上往下依次执行
1.2 什么是shell脚本
  1. 将系统命令堆积在一起,顺序执行
  2. 特定的格式+特定的语法+系统的命令=文件
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解释器来翻译.

你可能感兴趣的:(shell基础知识)