Shell 入门教程(七):变量的使用
文章首发于【陈树义的博客园】,点击跳转到原文:https://www.cnblogs.com/chanshuyi/p/quick_start_of_shell_07_variable.html
因为 Shell 语言是一门弱语言类型,所以变量可以无须定义便可直接使用。在 Shell 语言中,引用变量有几种方式。
第一种,直接使用 $ 符号引用。
str="Hello"
echo $str //Hello
第二种,使用 ${} 符号引用。
str="Hello"
echo ${str} //Hello
一般来说,如果不会引起变量的阅读困难,那么可以使用第一种变量引用方式。但如果在较为复杂的环境,会引起阅读和理解困难,那还是使用第二种引用方式。例如:
#!/bin/sh
echo "What is your name?"
read USER_NAME
echo "Hello $USER_NAME"
echo "I have create an email $USER_NAME@gmail.com for you"
上面的例子非常简单,输入你的名字,为你创建一个邮箱。虽然上面的例子能正常运行,但是却不易阅读。特别最后一行,你需要很仔细端详,才知道原来是引用了$USER_NAME
这个变量,而不是引用了$USER_NAME@gmail.com
这个变量。在这种情况下,使用花括号来引用变量是更为合适的:
#!/bin/sh
echo "What is your name?"
read USER_NAME
echo "Hello $USER_NAME"
echo "I have create an email ${USER_NAME}@gmail.com for you"
虽然说我们可以加上大括号,或者不加,但是业界统一的规范还是加上大括号。因为这样比较统一,便于阅读。因此树义也建议大家使用第二种方式,即使用加上大括号的方式。
文章首发于【陈树义的博客园】,点击跳转到原文:https://www.cnblogs.com/chanshuyi/p/quick_start_of_shell_07_variable.html

分类:
35. Shell 入门教程
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构