嵌入式Linux之Ubuntu学习笔记(shell脚本入门)

1.什么是shell脚本

我们已经能够熟练的在终端中输入命令来完成一些常用的操作,但是我们都是一条一条的输入命令。这样会很麻烦,那么有没有一种方式可以将很多条命令放到一个文件里面,然后直接运行这个文件即可?肯定有,这个就是shell脚本!

shell脚本类似windows的批处理文件,shell脚本就是将连续执行的命令写成一个文件。

shell脚本提供数组,循环,条件判断的等功能。shell脚本一般是Linux运维或者系统管理员要掌握的,作为嵌入式开发人员,只需要掌握shell脚本最基础的部分即可。

2.shell脚本写法

shell脚本是个纯文本文件,命令从上而下,一行一行的开始执行,shell脚本扩展名为.sh。shell脚本第一行一定要为:#!/bin/bash

表示要使用bash。

3.shell脚本语法

1.第一个shell脚本

echo的意思是输出

hello写错了不必在意哈哈哈

2.交互式shell脚本

read。

3.shell脚本的数值计算

shell仅支持整形,数值计算使用**$((表达式))**。

第3第4行的first和second前一定要加空格!!!!!

第5行total后面的=号也不能有空格!!!!!!

4.test命令

test命令用于查看文件是否存在,权限等信息,可以进行数值,字符,文件三方面的测试。

&&和||命令:cmd1&&cmd2当cmd1执行完并且正确,那么cmd2开始执行,如果cmd1执行完毕错误,那么cmd2不执行。村民的cmd1||cmd2当cmd1执行完毕并正确,那么cmd2不执行,反之cmd2执行。

5.中括号[]判断符

\] 里只能输入**==** 或 **!=** ![](https://file.jishuzhan.net/article/1743123902529277954/e3b6536b8f814ddfd536302728f751dc.webp) ### 6.默认变量 $0-$n:表示shell脚本的参数,包括shell脚本命令本身,shell脚本命令本身为$0; $#:#表示最后一个参数的标号; $@:表$1,$2,$3 ![](https://file.jishuzhan.net/article/1743123902529277954/cb24ba0b247e88a7e1c33f5ca3a5f204.webp) ![](https://file.jishuzhan.net/article/1743123902529277954/3078b4a0a3ecf3d632cc24ec24d15492.webp) 第6行应该是second,但是无所谓不必在意。

相关推荐
爱吃生蚝的于勒1 分钟前
【Linux】进程信号的产生(一)
linux·运维·服务器·c语言·开发语言·数据结构·c++
Codigger官方7 分钟前
算力的去中心化重构:简析Codigger分布式计算生态
linux·vim
Linux技术芯14 分钟前
浅谈 NVMe over Fabrics (NVMe-oF) 协议
linux
爱装代码的小瓶子23 分钟前
【C++与Linux基础】文件篇 -语言特性上的文件操作
linux·开发语言·c++
Jo乔戈里23 分钟前
Git学习自用笔记
笔记·git·学习
杨了个杨898226 分钟前
Nginx 升级 OpenSSL 版本
linux·服务器·nginx
zhangrelay27 分钟前
单片机原理与接口技术-2025修订-Arduino-Wokwi-Fritzing-ROS-MEGA2560
笔记·单片机·学习
yumenai_27 分钟前
【K8s 避坑指南】2026 最新 Kubernetes v1.28 + Containerd 安装全流程(内网/离线通用版)
ubuntu·云原生·容器·kubernetes·k8s
Moonquakes54032 分钟前
嵌入式开发基础学习笔记(I2C 通信协议与 ADC 模数转换)
笔记·单片机·学习
好奇龙猫32 分钟前
人工智能学习-AI入试相关题目练习-第十一次
人工智能·学习