嵌入式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,但是无所谓不必在意。

相关推荐
原来是猿5 小时前
网络计算器:理解序列化与反序列化(中)
linux·运维·服务器·网络·tcp/ip
Cat_Rocky5 小时前
k8s-持久化存储,粗浅学习
java·学习·kubernetes
AOwhisky5 小时前
虚拟化技术学习笔记
linux·运维·笔记·学习·虚拟化技术
一只机电自动化菜鸟6 小时前
一建机电备考笔记(33) 机电专业技术(起重技术-吊装方案)(含考频+题型)
经验分享·笔记·学习·职场和发展·课程设计
吃好睡好便好6 小时前
博客等级升级啦
学习
小新同学^O^6 小时前
简单学习 --> Spring事务
数据库·学习·spring
rabbit_pro6 小时前
Docker compose部署Ollama使用模型
linux·运维·docker
ECT-OS-JiuHuaShan7 小时前
彻底定理化:从量子纠缠到量子代谢
数据库·人工智能·学习·算法·生活·量子计算
小陈phd7 小时前
多模态大模型学习笔记(四十)——从“看字”到“懂结构”:版面分析与表格解析技术全解
笔记·学习
xuhaoyu_cpp_java7 小时前
SpringMVC学习(二)
java·经验分享·笔记·学习·spring