news 2026/6/10 16:07:07

10、Shell编程中的参数传递与条件判断

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
10、Shell编程中的参数传递与条件判断

Shell编程中的参数传递与条件判断

1. 参数传递基础

在Shell编程里,学会处理传递给程序的参数能让程序变得更实用。当执行一个Shell程序时,Shell会自动把第一个参数存到特殊变量$1里,第二个参数存到$2里,依此类推。这些特殊变量也被叫做位置参数,它们是在Shell完成常规的命令行处理(像I/O重定向、变量替换、文件名替换等)之后才被赋值的。

1.1 修改程序以接受参数

以之前的run程序为例,原本它只能处理sys.caps文件:

$ cat run tbl sys.caps | nroff -mm -Tlp | lp

若要处理其他文件,可把对sys.caps的引用改成对第一个命令行参数的引用:

$ cat run tbl $1 | nroff -mm -Tlp | lp

执行时,在命令行输入文件名,如run new.hirenew.hire就会被存到$1里,Shell会把$1替换成这个文件名。

1.2 示例程序ison

下面的ison

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

12、提升Shell编程效率与稳定性的关键技巧

提升Shell编程效率与稳定性的关键技巧 1. 缩进的重要性 缩进对于提高程序的可读性和易理解性起着至关重要的作用。养成在自己的程序中设置并遵循缩进规则的习惯,当程序变得越来越复杂时,你会发现这一习惯带来的巨大好处。 2. 用户体验的提升 与之前的版本相比,程序的用户…

作者头像 李华
网站建设 2026/6/10 13:04:39

17、Unix 系统变量与参数使用指南

Unix 系统变量与参数使用指南 1. 变量与 .profile 文件 在 Unix 系统中,变量的定义和使用有其独特的规则。有些变量在子 shell 中表现如同普通的导出变量,但在执行完定义行代码后,调用的 shell 中就不再存在这些变量。 在登录 shell 显示命令提示符之前,会完成一系列登…

作者头像 李华
网站建设 2026/6/10 15:27:10

20、深入解析Bison的错误处理与高级特性

深入解析Bison的错误处理与高级特性 1. 精确错误报告:行号与列号 在解析器中实现精确的错误报告,关键在于准确记录每个标记的行号和列号。由于换行符的存在,需要手动重新扫描标记以检查换行情况,并将 yycolumn 设置为换行符后的字符数。这样,就能在报告错误时提供精确…

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

Kotaemon智能代理的情感分析功能实现

Kotaemon智能代理的情感分析功能实现 在客户服务日益智能化的今天,一个真正“懂你”的对话系统不再只是快速回答问题的工具,而是能感知情绪、理解语境、适时共情的交互伙伴。用户一句“你们这客服太慢了!”背后可能是积压已久的不满&#xff…

作者头像 李华
网站建设 2026/6/10 15:33:06

Kotaemon智能代理的多模态输入处理能力

Kotaemon智能代理的多模态输入处理能力 在企业智能化转型的浪潮中,一个现实问题正日益凸显:用户不再满足于简单的“你问我答”,而是期望AI能像真人一样理解复杂意图、调用系统功能、甚至主动推动任务完成。比如客服场景中,用户一句…

作者头像 李华
网站建设 2026/6/10 15:55:56

19、Windows 8 设备驱动与系统结构全解析

Windows 8 设备驱动与系统结构全解析 1. 设备驱动操作 在使用 Windows 8 系统时,设备驱动的管理至关重要。以下是关于设备驱动的安装、更新、卸载、备份等操作的详细介绍。 1.1 安装设备驱动 Windows 通常会自动更新新硬件的驱动程序。但有时,它可能无法自动找到或安装某…

作者头像 李华