Linux shell脚本编程

一、sehll简介:

用户通过shell向计算机发送指令的

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

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

提高工作的效率

可以实现自动化

1.2、sehll脚本编写的流程

复制代码
1、用vi/vim创建一个.sh的文件
2、在文件中进行开发
3、个文件赋予可执行权限
4、执行脚本

1.3、变量

本地变量:

定义变量:Var_Name="Value" (变量名=变量值)

引用变量:${Var_Name}(注意花括号可以省略不写)

撤销变量:unset Var_Name

注意:定义的变量只可以在当前终端上使用其他地方不可以!!!!

局部变量:

定义变量:local Var_Name

注意:实在是在函数内部生效的

环境变量:

什么是环境变量:环境变量是用来定义bash的工作特性的

定义变量:export Var_Name="Value"

常用的环境变量:

PS1

HOSTNAME

LANG

复制代码
set命令可以显示当前系统上的所有变量

export,env命令可以显示环境变量

配置文件:

profile类:为交互式登陆的用户提供的配置

bashrc类:非交互式登录的用户提供配置

位置变量:

主要用于向脚本中传递参数

表示方法:1,2,3...n

例子:./1.sh 1 2(传入两个数据)

特殊变量:

$0:脚本(文件)自身名称

$?:上个命令的执行状态

$#:参数列表(位置变量的数量)

$@:显示参数列表中的具体内容

1.4、变量名的命名要求:

只能使用数字、字母和下划线组成

不能以数字开头

不能使用Linux中的关键字

1.5、变量名的默认规则:

见明知意

自定义变量小写

环境变量大写

1.6、特殊文件:

/dev/null:黑洞文件(echo进去的内容都会屏蔽)

/dev/zero:这是个无限吐零的文件

dd if=/dev/zero of=zeros.bin bs=1G count=100000

相关推荐
浪客川2 小时前
【百例RUST - 004】函数使用
服务器·开发语言·rust
study_小达人2 小时前
ubuntu 22.04设置limit不生效
linux·运维·ubuntu
掘根2 小时前
【仿Muduo库项目】Buffer模块设计实现
服务器·网络·tcp/ip
Johny_Zhao2 小时前
黑客msfconsole渗透工具超详细使用说明
linux·python·网络安全·信息安全·渗透测试·云计算·系统运维·攻防演练
烈焰飞鸟2 小时前
华为云前后端部署实战手册
运维·前端·vue.js·后端·华为云
挨踢攻城2 小时前
Linux 下合并多个 PDF 文件为一个 PDF 文件的方法
linux·前端·rhce·rhca·linux运维·红帽认证·公众号:厦门微思网络
你的秋裤穿反了2 小时前
博图 modbus tcp 通讯实操
服务器·网络·tcp/ip
少云清2 小时前
【接口测试】7_接口测试 _Jenkins源码管理问题
运维·jenkins
liulilittle2 小时前
XDP VNP虚拟以太网关(章节:二)
linux·服务器·网络·c++·通信·xdp
qinyia2 小时前
如何安全清理以 amis 开头的容器与镜像
运维·数据库·人工智能·mysql·ssh