0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Raspberry Pi Bash Shell 脚本简介

星星科技指导员 来源:嵌入式计算设计 作者:Jeremy S. Cook 2022-08-15 15:08 次阅读

开始使用 Raspberry Pi 单板计算机 (SBC) 通常意味着安装 Raspberry Pi OS,并与其类似 Windows 的图形用户环境进行交互。这一切都很好,但是 Raspberry Pi 和其他基于 Linux 的系统的真正强大功能可以通过使用 Bash 的命令行输入获得。

虽然有点学习曲线,但一旦你熟悉了自己的方式,这并不难;模糊地让人想起您可能熟悉的 MS-DOS 提示符。您当然可以创建和删除文件以及各种其他任务,要求您记住文本命令,而不是通过一系列菜单。一开始会令人沮丧,但一旦掌握了这项技术,它就是一个出色的界面。

为了更上一层楼,您甚至可以编写自动输入的 Bash shell 脚本,将一个命令变成多个命令。当您必须一遍又一遍地执行任务时,这些脚本可以为您节省大量输入,甚至可以将它们设置为在不同时间自动执行。

基础知识

要在 Raspberry Pi Bash Shell 环境中创建您的第一个脚本,请在您的主目录中输入sudo nano hello-shell.sh 。在文本编辑器中,在第一行输入#!/bin/sh,这就是所谓的“shebang”。这告诉脚本如何执行命令,但现在只需接受这一行将在您编写的每个脚本的顶部。

在第二行,输入echo “Hello world!” ,然后使用Ctrl+x关闭文本编辑器,然后使用y和Enter保存文件。关闭后,输入sh hello-shell.sh以查看“Hello world!”字样。像魔术一样在你的屏幕上弹出。如果您与文件在同一目录中工作,您也可以使用。/hello-shell.sh运行脚本,但您需要事先运行sudo chmod +x hello-shell.sh以使其自身可执行。

更多示例

除了简单地打个招呼之外,Bash 脚本还非常适合任务自动化。以这个脚本为例:

#!/bin/bash

echo “shell script”

ls -l

echo “pausing for 5 seconds”

# this is a comment

sleep 5

ls -a

在 shebang 之后,脚本输出它是一个带有echo命令的 shell 脚本,然后执行命令ls -l以相当详细地显示目录中的文件。然后它声明它暂停了 5 秒——实际上暂停了 5 秒——然后列出了目录中的文件,没有太多细节,但包括隐藏文件。注意# 这是注释行。“#”符号用于在 Bash 中开始注释行,除了在它们处理 shebang 的第一行。

pYYBAGL581SAC8drAAMF_dshfhc556.png

如何使用变量,甚至数学?Bash 能够做到这一点,甚至更多。考虑这个脚本,它是从堪萨斯州立大学BASH 文档页面上的第一个脚本大量修改的:

#!/bin/bash

echo “math and variables”

n=6/3

echo $n

n=$((6/3))

echo $n

k=$((n/3))

echo $k

如下所示,脚本首先说“数学和变量”。然后它会回显 n 的字面意思是“6/3”,因为它是作为字符串处理的。事实上,你可以输入“n=6/3hello”,它也会输出。然而,一旦你输入 $((6/3)),它就会被计算为整数 2,然后可以用它来计算 k。请注意,k 是一个整数,由 2/3 得出,即 0。

poYBAGL581yAOiHVAACHVfx4jgk855.png

如果您尝试输入原始的 K 状态代码 (5.9.1),您会注意到它实际上并没有在 Raspberry Pi 上运行。不幸的是,所有版本的 Bash 处理输入的方式都不相同。我使用在这里找到的信息来让事情正常工作,如果你想复制一个非 Pi 特定的脚本,你可能需要花点时间。

抛开潜在的麻烦不谈,Bash 可以是一个非常强大的工具,让您可以自动执行各种任务。在即将发表的文章中,我将展示如何使用 Bash 脚本以及一些硬件技巧来自动化我的 Raspberry Pi 冷却风扇。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 计算机
    +关注

    关注

    19

    文章

    7409

    浏览量

    87691
  • WINDOWS
    +关注

    关注

    3

    文章

    3524

    浏览量

    88399
收藏 人收藏

    评论

    相关推荐

    Banana Pi M5 与 Raspberry Pi 4 – 基准测试

    Banana Pi M5 基准测试已成为我的网站上最受欢迎的作品之一,而且似乎人们真正想看到的是它与其 Raspberry 口味的表亲之间的直接比较,所以这里就是 Banana Pi M5 与
    的头像 发表于 10-28 10:28 263次阅读
    Banana <b class='flag-5'>Pi</b> M5 与 <b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b> 4 – 基准测试

    e络盟开售Raspberry Pi AI 摄像头

    安富利旗下全球电子元器件产品与解决方案分销商e络盟开售全新 Raspberry Pi AI摄像头,这是 Raspberry Pi 的最新产品,扩大了 e络盟的人工智能设备范围。
    的头像 发表于 10-10 10:09 175次阅读
    e络盟开售<b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b> AI 摄像头

    shell脚本执行的三种方式及区别

    在Linux系统中,Shell脚本是一种非常实用的工具,用于自动化执行一系列命令。Shell脚本可以大大提高工作效率,简化复杂的任务。在这篇文章中,我们将介绍
    的头像 发表于 08-30 15:24 732次阅读

    执行shell脚本的方式包括什么

    执行Shell脚本的方式有很多种,以下是一些常见的方法: 直接运行脚本文件 在命令行中,可以直接使用脚本文件的路径来运行脚本。例如: ./s
    的头像 发表于 08-30 15:17 265次阅读

    嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-shell脚本编写之本地脚本的编写和执行

    :3)shell应用程序执行shell脚本也可直接使用shell应用程序进行执行。我们前面说过,我们指定的shell应用为/bin/
    发表于 08-29 10:51

    shell脚本编写之本地脚本的编写和执行

    过,我们指定的shell应用为/bin/bash,所以,我们使用bash程序直接执行myshell.sh,或者/bin/bash myshell.sh:如果使用
    发表于 08-28 09:36

    嵌入式学习-shell介绍

    输出执行结果呈现给用户;同时Shell也是一种解释性的编程语言或者脚本语言,开发容易可以在短时间内完成功能强大又好用的脚本,可以在不同的系统上移植非常方便。二、Shell的特性不同的发
    发表于 08-16 09:13

    shell基本介绍及常用命令之shell介绍

    输出执行结果呈现给用户;同时Shell也是一种解释性的编程语言或者脚本语言,开发容易可以在短时间内完成功能强大又好用的脚本,可以在不同的系统上移植非常方便。二、Shell的特性不同的发
    发表于 08-15 09:28

    名单公布!树莓派5(Raspberry Pi 5)开发板免费试用!!!

    名单公布: jinsheng、华仔stm32 树莓派5(Raspberry Pi 5)新主板采用2.4GHz四核64位Arm Cortex-A76处理器,拥有512KB的L2缓存和2MB的共享L3
    发表于 06-27 15:40

    震惊!居然有人给 Raspberry Pi 5 做 X 射线!

      Jeff Geerling 会做一些莫名其妙的怪事,比如用信鸽来对抗网速,不过这也是我们喜欢他视频的原因。最近,杰夫对 Raspberry Pi 5 进行了 X 光透视,揭示了
    的头像 发表于 01-10 16:42 456次阅读
    震惊!居然有人给 <b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b> 5 做 X 射线!

    shell脚本调试技巧

    0、专业脚本的规范格式 函数1函数2main函数main$* 1、使用dos2unix命令转换来自windows下开发的脚本 dos2unix默认是没有安装的,可以yum 安装
    发表于 12-28 16:57

    搭载 树莓派5 Raspberry Pi 5 全新的HMI发布!

    多年来,上海晶珩不断推陈出新,在成功推出一系列基于 Raspberry Pi CM4 的平板电脑后,现推出了首个搭载 Raspberry Pi 5 的平板电脑系列HMI3010。其中,
    的头像 发表于 12-28 11:33 815次阅读
    搭载 树莓派5 <b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b> 5 全新的HMI发布!

    Shell脚本检查工具ShellCheck介绍

    ShellCheck是一个用于bash/sh shell脚本的静态分析工具,可以辅助检查脚本语法错误,给出建议增强脚本健壮性。
    的头像 发表于 12-27 13:43 2004次阅读
    <b class='flag-5'>Shell</b><b class='flag-5'>脚本</b>检查工具ShellCheck介绍

    基于Raspberry Pi 5的蜂窝物联网项目

    今天小拜年给大家带来的是来自美国的Maker Rob Lauer的基于树莓派5的蜂窝网络项目,了解如何为新的 Raspberry Pi 5 单板计算机添加低带宽蜂窝连接。
    的头像 发表于 12-25 10:55 1211次阅读
    基于<b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b> 5的蜂窝物联网项目

    100个Linux Shell脚本总结

    不知道大家有没有发现,会编写shell脚本的运维,工资不会低,并且他的工作会很轻松!今天浩道跟大家分享每一个Linux运维应知必会的100个shell脚本,虽然你工作中可能用不上,但是
    的头像 发表于 12-05 09:28 1193次阅读