news 2026/6/11 22:44:18

46、脚本编程与菜单设计:从数字进制转换到操作菜单实现

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
46、脚本编程与菜单设计:从数字进制转换到操作菜单实现

脚本编程与菜单设计:从数字进制转换到操作菜单实现

数字进制转换脚本详解

在脚本编程中,数字进制转换是一个常见且实用的功能。下面将详细介绍实现数字进制转换的脚本步骤和关键要点。

  1. getopts 定义解析
    getopts 定义包含两个主要部分:
    • while 循环:包含 getopts 语句,在这个循环中定义了两个有效的命令开关 -f 和 -t。需要注意的是,在 case 语句中定义这些开关时不需要添加连字符 (-),但在命令行中必须添加。
    • case 语句:用于在找到有效或无效开关时执行相应操作。当定义以冒号 (:) 开头时,如果找到未定义的开关(如 -i),则在 case 语句中该无效开关将与问号 (?) 匹配。在这种情况下,通常会运行 usage 函数并以返回码 1 退出脚本。同时,使用反斜杠 (\?) 对问号进行转义,以便将其作为普通字符使用。

当开关定义后有冒号 (:) 时,表示该开关必须关联一个参数;如果没有冒号,则表示该开关无参数。例如,getopts ":t:f:i"定义了 -t 和 -f 为需要参数的命令行开关,-i 为无参数开关。

当找到开关时,无论其是否已定义,都会将其赋值给 ARGUMENT 变量(可使用任意变量名),供 case 语句使用。对于已定义的变量,需要在 case 语句中有匹配项;对于未定义的开关,如果 getopts 定义以冒号开头,则 ARGUMENT 会

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 14:41:57

Android BLE开发快速上手:5分钟环境搭建与实战避坑指南

Android BLE开发快速上手:5分钟环境搭建与实战避坑指南 【免费下载链接】Android-BLE-Library A library that makes working with Bluetooth LE on Android a pleasure. Seriously. 项目地址: https://gitcode.com/gh_mirrors/an/Android-BLE-Library 想要开…

作者头像 李华
网站建设 2026/6/11 17:02:39

EmotiVoice能否生成撒娇语气?女性用户测评

EmotiVoice能否生成撒娇语气?女性用户测评 在虚拟偶像直播中突然听到一句软糯的“哥哥~别走嘛”,你会不会心头一颤?这并非来自某位声优的精心录制,而是AI在“撒娇”。近年来,随着情感化交互需求激增&#x…

作者头像 李华
网站建设 2026/6/11 4:52:53

好用的叉车智能管理系统品牌

好用的叉车智能管理系统品牌 在现代物流和仓储行业中,叉车作为重要的搬运设备,其高效、安全的管理至关重要。叉车智能管理系统的出现,为叉车的管理带来了新的变革。那么,有哪些好用的叉车智能管理系统品牌呢?广州市双…

作者头像 李华
网站建设 2026/6/10 14:58:12

浏览器自动化太复杂?n8n-nodes-puppeteer让你轻松搞定网页抓取和截图

还在为繁琐的浏览器自动化任务头疼吗?n8n-nodes-puppeteer就像你的专属网页操作助手,让你用最简单的方式完成网页内容抓取、截图生成、PDF导出等复杂任务。无论你是需要监控网站变化、生成报表,还是进行自动化测试,这个工具都能帮…

作者头像 李华
网站建设 2026/6/9 18:55:21

计算机毕业设计springboot咖啡馆商城网站 基于 SpringBoot 的咖啡主题电商系统的设计与实现 SpringBoot+MySQL 构建的线上咖啡商城平台

计算机毕业设计springboot咖啡馆商城网站1hr9nn2e (配套有源码 程序 mysql数据库 论文) 本套源码可以在文本联xi,先看具体系统功能演示视频领取,可分享源码参考。当“喝一杯好咖啡”从线下排队变成线上点击,咖啡零售的数字化赛道便…

作者头像 李华
网站建设 2026/6/10 16:31:43

颠覆传统船舶设计:FREE!ship Plus如何用开源技术重塑行业格局

颠覆传统船舶设计:FREE!ship Plus如何用开源技术重塑行业格局 【免费下载链接】freeship-plus-in-lazarus FreeShip Plus in Lazarus 项目地址: https://gitcode.com/gh_mirrors/fr/freeship-plus-in-lazarus 在船舶设计领域,高昂的软件成本和复杂…

作者头像 李华