news 2026/5/5 10:30:43

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/5/3 16:38:53

Simple Clock:你的全天候智能时间管理大师

Simple Clock:你的全天候智能时间管理大师 【免费下载链接】Simple-Clock Combination of a beautiful clock with widget, alarm, stopwatch & timer, no ads 项目地址: https://gitcode.com/gh_mirrors/si/Simple-Clock 还在为错过重要会议而焦虑&…

作者头像 李华
网站建设 2026/4/29 17:26:09

如何编写一个简单的服务器应用程序?

编写简单服务器应用程序的步骤 服务器应用程序允许客户端通过网络请求访问资源或服务。以下内容涵盖从基础概念到实际实现的完整流程,使用Python语言和Flask框架为例,便于快速理解。 理解服务器基础 服务器本质是一个长期运行的程序,监听特…

作者头像 李华
网站建设 2026/5/4 23:00:50

U盘数据失踪案:专业手法助你寻回失踪文件!

在数字化时代,U盘作为便携式存储设备,广泛应用于我们的日常生活与工作中。然而,有时我们会遇到一种棘手的情况:U盘明明显示有空间被占用,但打开后却看不到任何文件。这种情况不仅令人困惑,更让人担心存储在…

作者头像 李华
网站建设 2026/5/2 18:44:00

如何判断硬件解码器或者软件解码器

方法一: 根据源码frameworks/av/media/libstagefright/MediaCodecList.cpp bool MediaCodecList::isSoftwareCodec(const AString &componentName) {return componentName.startsWithIgnoreCase("OMX.google.")|| componentName.startsWithIgnoreCa…

作者头像 李华
网站建设 2026/5/2 20:37:42

EmotiVoice语音合成系统权限管理与访问控制设置

EmotiVoice语音合成系统权限管理与访问控制设置 在虚拟偶像直播中突然出现陌生声音,或企业语音助手被恶意调用生成虚假音频——这些并非科幻情节,而是真实存在的AI安全风险。随着EmotiVoice等高表现力TTS系统普及,仅需几秒样本即可克隆音色的…

作者头像 李华