嵌入式Linux shell编程实例

1. 输入两个数,实现两个数的相加

(1)具体实现代码如下

  1 #!/bin/bash2 read a3 read b4 sum=$(($a+$b))5 echo "$sum"

(2)编辑完内容后按Esc键再输入:wq保存,回车退出,执行结果如下图;

(3)上图示例为输入两个数,实现两个数相加和,输出结果。

2. 计算1~100的和

(1)具体实现代码如下

  1 #!/bin/bash2 i=03 n=1                            # 定义循环变量4 while [ $n -lt 101 ];do        # 定义循环条件 n < 1015 i=$(( $i + $n ))               # 累加6 n=$(( $n + 1 ))7 done8 echo "$i"

(2)编辑完内容后按Esc键再输入:wq保存,回车退出,执行结果如下图;

(3)上图示例为1~100自然数相加和,输出结果。

3. 从键盘输入任意数字,计算其绝对值的累加和,一直到输入“end”结束,输出结果。

(1)在shell编程中,可以使用循环结构和条件判断语句实现从键盘输入任意数字,计算其绝对值的累加和,一直到输入“end”结束,输出结果。具体实现如下:

#!/bin/bash
sum=0
while true
doread numif [ "$num" == "end" ]; thenbreakfiabs=$(echo $num | awk '{if($1>=0) print $1; else print -$1}')sum=$(($sum+$abs))
done
echo "累加和为:$sum"

(2)首先,我们设置一个变量$sum来保存累加和,然后使用while true循环结构来不断读取用户的输入,当输入为“end”时跳出循环。

(3)在循环中,我们使用read命令读取用户输入的数字,并使用if语句判断输入是否为“end”,如果是则跳出循环。

(4)接着,我们使用awk命令来计算输入数字的绝对值,并将其保存在变量$abs中。最后,我们将$abs加入累加和$sum中。

(5)当用户输入“end”时,循环结束,使用echo命令输出累加和$sum。具体步骤如下:

(6)脚本内容代码示例如下:

(7)编辑完内容后按Esc键再输入:wq保存,回车退出,执行结果如下图;

4. 提示输入自然数N,计算1至N的累加和,输出结果。

  1 #! /bin/bash2 number=13 sum=04 read num5 while [ $number -le $num ]6 do7     sum=$(($sum+$number))8     number=$(($number+1))9 done10 echo "$sum"

(1)脚本内容代码示例如下:

(2)编辑完内容后按Esc键再输入:wq保存,回车退出,执行结果如下图;

(3)上图示例为输入自然数5,计算1至5的累加和,输出结果为15。

5. 编写一个能读入位置参数、实现任一四则运算功能的shell脚本(函数)并运行;

(1)具体实现代码如下

  1 #!/bin/bash2 read -p "input number:" a3 read -p "input number:" b4 read -p "input fuhao:" c5 case $c in6 +)let "result=$a+$b"7 echo $result;;8 -)let "result=$a-$b"9 echo $result;;10 /)let "result=$a/$b"11 echo $result;;12 *)let "result=$a*$b"13 echo $result;;14 esac

(2)编辑完内容后按Esc键再输入:wq保存,回车退出,执行结果如下图;

(3)上图示例为输入两个数,输入运算符号实现算数基本运算法则

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/20598.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

系统安全及其应用

系统安全及其应用 部署服务器的初始化步骤&#xff1a; 1、配置IP地址&#xff0c;网关&#xff0c;DNS解析 2、安装源&#xff0c;外网&#xff08;在线即可yum&#xff09; 内网&#xff08;只能用源码包编译安装&#xff09; 3、磁盘分区 lvm raid 4、系统权限配置和基础安…

用r语言处理 Excel数据当中的缺失值方法

以下是使用 R 编程语言处理 Excel 缺失数据的一些常见方法示例代码&#xff1a;&#xff08;无需循环&#xff09; 读取包含缺失数据的 Excel 文件 data <- read.csv(“your_file.csv”) 查看数据中是否有缺失值 sum(is.na(data)) 用平均值填充缺失值 data c o l u m …

Django里多app

在 Django 里的某一个项目&#xff0c;里面得包含很多 App (功能)&#xff0c;那么如何在该项目里管理这么多App呢&#xff1f; 先说明下背景&#xff1a;未先创建 apps 文件夹来存各个app文件夹&#xff0c;直接在项目文件目录里创建各个app。为了便于管理&#xff0c;得将各…

WireShark下载安装

下载地址 WireShark站内下载资源&#xff1a;&#xff08;土豪方便下载&#xff09; https://download.csdn.net/download/qq_58662768/89377088 官网下载&#xff1a; Wireshark Go Deep 进入主页后&#xff0c;选择Get Acquainted&#xff0c;再选择Download。 选择合适…

【vue3|第4期】Vue3的选项式与组合式

日期&#xff1a;2024年5月30日 作者&#xff1a;Commas 签名&#xff1a;(ง •_•)ง 积跬步以致千里,积小流以成江海…… 注释&#xff1a;如果您觉得有所帮助&#xff0c;帮忙点个赞&#xff0c;也可以关注我&#xff0c;我们一起成长&#xff1b;如果有不对的地方&#xf…

【IPFS应用开发】基于IPFS的视频播放器

本系列文章是针对 https://blog.csdn.net/weixin_43668031/article/details/83962959 内容的实现所编写的。开发经历包括思考过程、重构和推翻重来。 基于IPFS的视频播放器 想写一个真正的、基于IPFS的&#xff0c;可以播放IPFS上的视频的程序支持多种数据加载格式同时支持单文…

CentOS7某天的samba服务搭建操作记录(还没成功)

#CentOS7 yum软件仓库阿里云 samba服务器配置失败 sensors成功了 (花了200元组装H61测试机&#xff0c;75元的主板只有一块能用&#xff0c;垃圾板但又不完全能用&#xff09; 2024.5月的某天记录如下&#xff1a; https://blog.csdn.net/dszgf5717/article/details/53732182 …

一篇文章讲透数据结构之树

一.树 1.1树的定义 树是一种非线性的数据结构&#xff0c;它是有n个有限结点组成的一个具有层次关系的集合。把它叫做树是因为它看起来像一棵倒挂的树&#xff0c;也就是说它是根在上&#xff0c;叶在下的。 在树中有一个特殊的结点&#xff0c;称为根结点&#xff0c;根结点…

Humanoid Whole-body Control

系列文章目录 前言 我们拟举办的研讨会旨在为生物力学和机器人学这两个学科架起一座桥梁&#xff0c;尤其侧重于人体运动分析和仿人机器人的全身控制。将人体运动转化为仿人机器人是一个新兴的跨学科领域。在过去二十年里&#xff0c;传统的双足行走步态生成和基于动态模型优化…

VSCode插件Data Previewer

此插件支持直接在vscode 里对csv&#xff0c;xlsx等数据做可视化、统计探索 1. 安装 2. 使用效果 2.1. yaml文件 2.2. xml文件 2.3. csv文件 可以对文件进行各种分析&#xff0c;如此多的选项 散点图 线图 参考文献 GitHub - RandomFractals/vscode-data-preview: Data Pre…

通过DLL方式链接glfw3.dll

主要是CMakeLists.txt文件变化 cmake_minimum_required(VERSION 3.10) project(glfwTest) set(CMAKE_CXX_STANDARD 11) aux_source_directory(. SRC_SOURCES) set(GLFW_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/include) set(GLFW_LIBRARY_DIR ${CMAKE_SOURCE_DIR}/lib/glfw) add_ex…

关于Maven环境变量配置的报错The JAVA_HOME environment variable is not defined correctly的解决

天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物。 每个人都有惰性&#xff0c;但不断学习是好好生活的根本&#xff0c;共勉&#xff01; 文章均为学习整理笔记&#xff0c;分享记录为主&#xff0c;如有错误请指正&#xff0c;共同学习进步。…

40号渐变灰色背景证件照要求,手机拍照轻松拍干部照片

灰色渐变背景的证件照是一种常见的照片类型&#xff0c;在干部档案、事业单位工作人员信息采集、履历及升迁公示等阶段会用到&#xff0c;按照规范需要使用40号渐变灰色背景。很多朋友不清楚40号灰色是哪种灰色&#xff0c;以及照片的尺寸要求&#xff0c;下面就重点介绍40号渐…

安装conda虚拟环境错误集合

1.AttributeError: module colorama has no attribute init 在网上搜了一下&#xff0c;有好多答案&#xff0c;但不对&#xff1b; 解决方案 重新下载colorama包替换conda包环境中对应的文件夹&#xff0c;然后重新启动miniconda&#xff0c;搞定&#xff1b; 不定期更新 &a…

C++编程:模板初阶

目录 一、泛型编程 1、通用版交换函数的实现&#xff1a; 2、模板的引入 二、函数模板 1、函数模板的定义和使用 2、函数模板的实例化 三、类模板 1、类模板的定义和实例化 模板是C的一项强大特性&#xff0c;犹如中国古代四大发明中的活字印刷术与造纸术融为一体一般&a…

linux 利用 ~$() 构造数字

2024.6.1 题目 <?php //flag in 12.php error_reporting(0); if(isset($_GET[x])){$x $_GET[x];if(!preg_match("/[a-z0-9;|#\"%&\x09\x0a><.,?*\-\\[\]]/i", $x)){system("cat ".$x.".php");} }else{highlight_file(__F…

牛客网刷题 | BC103 金字塔图案

目前主要分为三个专栏&#xff0c;后续还会添加&#xff1a; 专栏如下&#xff1a; C语言刷题解析 C语言系列文章 我的成长经历 感谢阅读&#xff01; 初来乍到&#xff0c;如有错误请指出&#xff0c;感谢&#xff01; 描述 KiKi学习了循环&am…

AI发展的探索与未来展望

随着科技的不断进步&#xff0c;人工智能&#xff08;AI&#xff09;技术已经成为当今社会最热门的话题之一。从简单的自动化任务到复杂的决策支持系统&#xff0c;AI技术正以前所未有的速度改变着我们的世界。本文将深入探讨AI技术的发展历程、当前应用、面临的挑战以及未来的…

C++:细谈Sleep和_sleep

ZINCFFO的提醒 还记得上上上上上上上上上上上上上上上上上上&#xff08;上的个数是真实的&#xff09;篇文章吗&#xff1f; 随机应变——Sleep()和_sleep() 但在ZINCFFO的C怪谈-02中&#xff1a; 我不喜欢Sleep...... 奤&#xff1f;媜煞鷥&#xff01; 整活&#xff01;…

Java的JDK环境变量配置(Windows)

只写了需要配置的环境变量 注&#xff1a;从JDK1.5开始&#xff0c;配置Java环境变量时&#xff0c;不再需要配置CLASSPATH&#xff0c;只需要配置JAVA_HOME和Path 1、配置JAVA_HOME 找到自己的JDK位置&#xff0c;我这里是 C:\dev\java\jdk-17.0.119在环境变量-系统变量中&…