Man*_*ish -1 bash shell-script
我有以下变量
$a=/opt
$b=var
$c=usr
$path=/$a/$b/$c/man
Run Code Online (Sandbox Code Playgroud)
当我执行 cd $path 时,它说没有这样的文件或目录。
但这条路径实际上存在 /opt/var/usr/man .. 有什么建议吗?
问题是变量赋值中的语法错误。
$a=/opt
$b=var
$c=usr
$path=/$a/$b/$c/man
Run Code Online (Sandbox Code Playgroud)
.. 永远不会工作,因为变量赋值不能以$.
你应该这样做:
a=opt
b=var
c=usr
dir=/$a/$b/$c/man
cd $dir
Run Code Online (Sandbox Code Playgroud)
请注意,我更改了最终变量名称,因为使用两个名称相同但情况不同的变量是一个坏主意,因为它可能会造成混淆。(PATH作为一个非常重要的环境变量)