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

相关推荐
郝亚军3 分钟前
ec_private.pem的生成方法
linux·运维·服务器
NendoZen29 分钟前
Arch Linux解决Grub无法SAVEDEFAULT问题(uki启动问题)
linux·运维·服务器
Elastic 中国社区官方博客2 小时前
Elasticsearch:安装自行管理的 Elastic Stack 集群
大数据·运维·服务器·数据库·elasticsearch·搜索引擎·全文检索
忆挽篱笙歌2 小时前
进程控制管理
linux·运维·服务器
Escalating_xu2 小时前
【Linux 网络编程】connect 的断线重连:用状态机写一个能恢复连接的 TCP 客户端
linux·网络·tcp/ip
Zucker n3 小时前
英语“论文”语法检查工具
linux·windows
fengkai45453 小时前
3、Kubernetes的Namespace&Contexts&Pod&YAML格式
运维·容器·kubernetes·k8s·namespace·yaml·pod
2401_868534783 小时前
局域网络中信息安全方案设计及攻击防范技术(制造企业园区网)
服务器·网络
戴西软件4 小时前
制造研发中的AI视觉与仿真:戴西工程图纸智能审图智能体、戴西3DViz_CAE AI集成与戴西3DViz_CAD AI集成
大数据·运维·人工智能·3d·自动化·制造·rpa
苏宸啊4 小时前
Reactor反应堆模式
linux