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

相关推荐
动力 continue7 小时前
Linux 基础篇 · 压缩打包与用户管理
linux·服务器·基础命令linux
画中有画8 小时前
软件架构中质量属性(性能、安全、可扩展性)的权衡设计
java·运维·安全
g3voip8 小时前
防爆电话如何接入SIP调度系统?工业通信系统架构解析
服务器·tcp/ip·系统架构·信息与通信·ip
NJCloud9 小时前
Ansible(三)——Zabbix 监控系统部署与敏感信息加密
linux·运维·chrome·信息可视化·ansible·zabbix
ltl9 小时前
Cgroups v2:为什么内存限制设了,宿主机数据库还是被 OOM
linux
NJCloud9 小时前
TiDB 集群部署与 MySQL 兼容性适配实战
linux·运维·数据库·mysql·tidb
2401_868534789 小时前
UNIX常用命令英文全称与中文解释整理
linux·运维
FL162386312910 小时前
室内易燃物识别易燃评估室内易燃程度识别分割数据集labelme格式1015张85类别
java·服务器·前端
阿祖zu10 小时前
开源项目-让本地 Codex 临时接管远程 Linux 服务,实现快速运维
linux·gpt·agent
Android系统攻城狮12 小时前
Linux PipeWire深度解析之pw_factory_create_object调用流程与实战(七十二)
linux·音频进阶·pipewire音频进阶