shell 脚本编程

简介:

  • 用户通过shell向计算机发送指令的
  • 计算机通过shell给用户返回指令的执行结果

通过shell编程可以达到的效果

  • 提高工作效率
  • 可以实现自动化

需要学习的内容:

  • linux
  • shell的语法规范

编写shell的流程

  • 第一步:用vi/vim创建一个.sh的文件
  • 第二步:在文件中进行开发
  • 第三步:给文件赋予可执行权限
  • 第四步:执行脚本

本地变量:

  • 定义变量:Var_Name="Value" 变量名="值"
  • 引用变量:${Var_Name}
  • 撤销变量:unset Var_Name

局部变量:

  • 定义:local Var_Name="Value"
  • 在函数内部生效

环境变量:

  • 定义:export Var_Name="Value"
  • 常用的环境变量:
  • PS1
  • HOSTNAME
  • LANG

位置变量

  • 主要用于向脚本中传递参数
  • 表示方法:$1,$2,3,.....n
  • 举例说明: ./1.sh 1 6 34(传入的数据)

特殊变量:

  • $0脚本自身名称
  • $?上个命令的执行状态
  • $# 参数列表

变量命名要求:

  • 只能使用数字、字符和下划线组成
  • 不能以数子开头
  • 不能使用程序中的关键字

变量名的默认规则:

  • 见名知意
  • 自定义变量小写
  • 环境变量大写

补充环境变量:

  • set命名可以显示当前系统上所有的变量
  • export、env命名可以显示环境变量

重定向:

什么是重定向

重定向就是"修改"指令发送给计算机的途径、计算机将指令执行结果返回个用户的途径

重定向的分类:

  • 输入重定向
  • 标准输出重定向
  • 错误输出重定向

输入:

  • 标准输入:键盘
  • 输入重定向:<

输出:

  • 标准输出:终端
  • 标准错误输出:终端
  • 标准输出重定向:> >>
  • 标准错误输出重定向:2> 2>>
  • 将结果保存到文件、屏蔽输出结果

特殊文件:

  • /dev/null
  • /dev/zero

管道符

  • |
  • 仅仅用于传递命令的执行结果另一个命令
相关推荐
中云DDoS CC防护蔡蔡31 分钟前
微信小程序被攻击怎么选择高防产品
服务器·网络安全·微信小程序·小程序·ddos
HPC_fac130520678161 小时前
以科学计算为切入点:剖析英伟达服务器过热难题
服务器·人工智能·深度学习·机器学习·计算机视觉·数据挖掘·gpu算力
yaoxin5211233 小时前
第二十七章 TCP 客户端 服务器通信 - 连接管理
服务器·网络·tcp/ip
内核程序员kevin3 小时前
TCP Listen 队列详解与优化指南
linux·网络·tcp/ip
sinat_384241097 小时前
使用 npm 安装 Electron 作为开发依赖
服务器
朝九晚五ฺ7 小时前
【Linux探索学习】第十四弹——进程优先级:深入理解操作系统中的进程优先级
linux·运维·学习
自由的dream7 小时前
Linux的桌面
linux
xiaozhiwise8 小时前
Makefile 之 自动化变量
linux
Kkooe8 小时前
GitLab|数据迁移
运维·服务器·git