【发布时间】:2013-02-27 09:09:27
【问题描述】:
unix/linux shell 变量命名有什么规则吗?
例如,像 Java 变量命名的通用规则。
【问题讨论】:
-
还有shell函数名?
标签: linux shell variables unix syntax
unix/linux shell 变量命名有什么规则吗?
例如,像 Java 变量命名的通用规则。
【问题讨论】:
标签: linux shell variables unix syntax
您必须非常小心,不要将任何 UNIX 命令用作变量。它会弄乱代码并产生意想不到的结果。另外,请记住保留字(if、else、elif、do、done...),并且大写变量保留供系统使用。
来自Rules for Naming variable name:
变量名必须以
字母数字字母字符或下划线开头 字符 (_),后跟一个或多个字母数字或下划线 人物。有效的 shell 变量示例
或如The Open Group Base Specifications Issue 7:
在 shell 命令语言中,一个词仅由 可移植字符集中的下划线、数字和字母。 名称的第一个字符不是数字。
【讨论】:
$ 开头,因此有一个名为$ls 或$done 的变量(尽管使用ls=1 或done=1 初始化)似乎不会导致问题- 即使它看起来令人困惑。你能举一个它不起作用的例子吗?