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

相关推荐
wuminyu14 分钟前
Virtual Thread重投递至ForkJoinPool任务队列过程解析
java·linux·c语言·jvm·c++
xuhe214 分钟前
Codex解决新模型无法使用/model选择的问题
linux·ai·codex
well06121 小时前
Linux 文件相关底层知识
linux·运维·服务器
Lsetea1 小时前
OpenSSL verify报CA certificate key too weak:auth_level与弱密钥链排查
运维·https·ssl证书·openssl·证书链
羔羊++1 小时前
26_实验二十五_busybox构建根文件系统
linux
熊猫钓鱼>_>1 小时前
从闲置平板到家里的“控制大脑“:鸿蒙智慧中控面板完整实战
运维·人工智能·华为·自动化·电脑·ai编程·harmonyos
xUxIAOrUIII1 小时前
日常笔记-1005-1
linux·笔记·python·macos
nazisami1 小时前
程序地址空间
linux·虚拟地址
库拉镜像AI牛牛2 小时前
漫剧工作室量产方案:依托知漫剧 AI 短剧降本增效
大数据·服务器·前端·人工智能·语音识别
不会就选b2 小时前
Linux之TCP<2>
linux·网络·tcp/ip