当我执行此命令时
port=3128
echo $port:localhost
我得到了3128ocalhost
输出。
附言: 当我更改第一个“l”字符时,它工作正常。我甚至无法用谷歌搜索它。
答案1
在 Zsh 中,:l
作为修饰语,使扩展名变为小写。由于端口是数字,因此您没有得到额外的提示,但如果我们输入一些大写字符,则差异显而易见。
% port=AS10X
% echo $port:localost
as10xocalost
为了保留:l
Zsh 中的文字,请将其转义:$port\:localost
。
答案2
尝试一下这段代码,它对我来说效果很好:
#!/bin/sh
PORT=3128
echo "$PORT:localhost"
#输出:3128:localhost
答案3
在 bash 中您的代码可以运行。
尝试指定 SHELL 如下...
(在脚本中)
#!/bin/bash
port=3128
echo $port:localhost
(在终端中)
export SHELL=/bin/bash
port=3128
echo $port:localhost