我写了一个bash脚本,我的脚本失败了,当我所做的就是分配变量时。
在我的脚本中,我有以下声明:
pcre-version="8.39"
尝试运行程序后,我收到此错误:
-bash: pcre-version=8.39: command not found
我做错了什么?
更新
变量不能包含连字符。删除它们解决了这个问题。
答案 0 :(得分:5)
-
不是变量名称的有效部分,请尝试使用_
它被解析为
正如chepner指出的那样,原始字符串中没有pcre
-
version
=
"8.39"
IFS
个字符,因此它不会受到单词拆分的影响。所有这些都是有效的文件系统字符(通常至少),因此它被视为命令名称并在PATH
中搜索,这不太可能找到,因此错误消息
请参阅有关此内容的this related question on U&L
这是一个“Gotcha”here