news 2026/4/16 19:55:57

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/4/16 16:10:19

19、深入探索Shell函数与Rolo程序的优化升级

深入探索Shell函数与Rolo程序的优化升级 一、Shell函数基础 现代的Shell都支持函数,函数是一系列命令的组合,可以在Shell程序中多次引用和重复使用。定义函数的通用格式如下: name () { command; ... command; }name 是函数的名称。 括号 () 表示正在定义一个函数。…

作者头像 李华
网站建设 2026/4/16 13:35:26

20、深入探索Shell编程:从电话簿程序到交互式特性

深入探索Shell编程:从电话簿程序到交互式特性 电话簿程序的操作流程与实现 在处理电话簿文件时,有一系列特定的操作流程。首先,为了避免用户在编辑器中按下删除键导致程序终止,系统会忽略删除键产生的信号。之后,会启动编辑器,让用户对电话簿条目进行必要的修改。 修改…

作者头像 李华
网站建设 2026/4/16 15:13:54

Kotaemon在跨境电商客户服务中的适配策略

Kotaemon在跨境电商客户服务中的适配策略 在全球电商持续扩张的今天,用户对跨境购物体验的期待早已超越“下单-发货”这一基础流程。越来越多消费者要求即时、精准、多语言且个性化的客服支持。然而现实是,许多平台仍依赖人工坐席或规则驱动的聊天机器人…

作者头像 李华
网站建设 2026/4/16 13:07:25

终极指南:5分钟学会用EPubBuilder制作专业电子书

终极指南:5分钟学会用EPubBuilder制作专业电子书 【免费下载链接】EPubBuilder 一款在线的epub格式书籍编辑器 项目地址: https://gitcode.com/gh_mirrors/ep/EPubBuilder 想创作属于自己的电子书,却苦于复杂的格式要求?EPubBuilder这…

作者头像 李华
网站建设 2026/4/16 14:30:03

终极指南:Windows包管理器Winget完整安装方案

终极指南:Windows包管理器Winget完整安装方案 【免费下载链接】winget-install Install winget tool using PowerShell! Prerequisites automatically installed. Works on Windows 10/11 and Server 2022. 项目地址: https://gitcode.com/gh_mirrors/wi/winget-i…

作者头像 李华
网站建设 2026/4/16 12:58:58

基于Unreal与Omniverse的数字孪生工厂解决方案

系统地阐述了使用 Unreal Engine 5.4 与 NVIDIA Omniverse 构建高保真、低延迟数字孪生工厂的完整方案。其核心价值在于提出了一套集成了先进渲染、多源数据协同与实时数据同步的“虚实共生”体系。 实战指南的核心内容整理如下: 📋 核心内容导览章节核心…

作者头像 李华