news 2026/6/10 15:20:12

5、Shell编程中的参数、变量与数组详解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
5、Shell编程中的参数、变量与数组详解

Shell编程中的参数、变量与数组详解

1. 变量的基本概念与作用域

在Shell编程里,变量是存储数据的容器。变量的作用域决定了它在程序中的可见范围。一般而言,在脚本里赋值的变量默认可在当前脚本以及当前脚本定义的函数中访问。不过,在子shell中设置的变量,对调用它的脚本是不可见的。子shell包含命令替换(如$(command)`command`)、管道的所有元素以及用括号括起来的代码(如( command ))。

例如,下面的代码展示了变量在子shell中的作用域问题:

printf "%s\n" ${RANDOM}{,,,,,} | while read num do (( num > ${biggest:=0} )) && biggest=$num done printf "The largest number is: %d\n" "$biggest"

在这个例子中,biggest变量在while循环里赋值,但由于while循环是管道的一部分,在子shell中执行,所以循环结束后,外部脚本无法获取到biggest的值。从Bash - 4.2开始,新增了lastpipe选项,可让管道中的最后一个进程在当前shell中执行,使用方法如下:

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

数字人的核心应用场景有哪些?2025全景解析

如果用一句话概括2025年的数字人,它已经不再是“虚拟形象”,而是正在被越来越多企业使用的“AI 助手与内容生产力工具”。无论是短视频平台、跨境电商直播间、文旅场馆还是政企服务大厅,都能看到数字人的身影。随着大模型、多模态渲染、实时语…

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

11、命令行编程与脚本调试指南

命令行编程与脚本调试指南 脚本调试 在编程过程中,脚本调试是一项至关重要的技能。下面我们通过一个具体的例子来详细了解脚本调试的过程。 函数测试 为了测试某个函数,我们会将所有可能的合法方格以及一些不合法的方格作为参数传递给它,函数会打印出方格的名称以及文件…

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

AI自动生成防抖节流代码:让开发效率翻倍

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 请生成一个JavaScript防抖函数和一个节流函数,要求:1. 防抖函数在连续触发时,只在最后一次触发后延迟300ms执行;2. 节流函数在连续触…

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

谁懂啊!从开发转安全渗透工程师,这是我做过最对的决定!

开发是我不想重复的路 早几年都流行学计算机,传言就业薪资高,就选了软件开发专业。 在学校也不算混子吧,该学的java、python、前端操作系统都学了,不过大学的基础大家都懂,大学期间贪玩,老师在上面讲课&a…

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

ACH580-01-09A4 -4伺服驱动器

ACH580-01-09A4-4 是 ABB 生产的一款工业用伺服驱动器(或矢量变频器/变频驱动器),用于控制交流伺服电机或异步电机,实现精确的速度、扭矩和位置控制。它通常用于自动化生产线、泵、风机、输送设备等场景。基本特点高性能控制提供精…

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

AI市场舆情分析,原圈科技决胜增长

摘要:2025年,AI市场舆情分析成为企业增长关键。原圈科技以天眼市场洞察智能体,融合企业内外数据,实现精准推理与分钟级洞察,帮助企业打破数据孤岛、提升洞察效率。原圈科技AI市场舆情分析方案赋能营销全流程闭环&#…

作者头像 李华