为什么l";消失在zsh脚本中
我在.zshrc中编写了一个函数:为什么l";消失在zsh脚本中,zsh,Zsh,我在.zshrc中编写了一个函数: cnj(){ port=0; echo -n "Enter number of port > "; read port; a="ssh -N -f -L localhost:$port:localhost:$port name@ip"; echo $a; } 结果表明: ssh -N -f -L localhost:8909ocalhost:8909 name@ip 为什么 消失在 localhost:89
cnj(){
port=0;
echo -n "Enter number of port > ";
read port;
a="ssh -N -f -L localhost:$port:localhost:$port name@ip";
echo $a;
}
结果表明:
ssh -N -f -L localhost:8909ocalhost:8909 name@ip
为什么
消失在
localhost:8909ocalhost:8909
这是一个例子
$var:l
特别是将$var
的内容转换为小写
要防止:l
被解释为修饰符,可以在变量名周围添加大括号:
"...${port}:localhost:..."
你能编辑你的问题并详细说明你在做什么以及你犯了什么错误吗?@ThiruShetty:这个问题对我来说似乎很清楚。回显字符串不包含OP所需的所有字符。您已经编辑了答案,但仍然:在双引号字符串中使用
$foo \:l
似乎也会输出回显本身。@FelixKling是的,这就是我删除它的原因。:-)我只是想在其他人想知道你为什么不建议使用\
:)之前指出这一点,你绝对是个天才!!
"...${port}:localhost:..."