Macos 为什么我会得到;没有这样的文件或目录;对于存在的目录?
我正在运行一个名为Macos 为什么我会得到;没有这样的文件或目录;对于存在的目录?,macos,terminal,Macos,Terminal,我正在运行一个名为setenv.sh的脚本来设置环境变量。其中一行是: config.dir=/Users/arianna/work/next/conf 运行它之后,我收到一条错误消息说:config.dir=/Users/arianna/work/next/conf:没有这样的文件或目录 我很困惑,因为这个目录存在。我可以复制,粘贴和cd到它 我在这里感到困惑。怎么了?在变量中使用是导致问题的原因;在bash中,它用作环境变量和/或仅在某些shell中有效,这些shell可以将其识别为正则变
setenv.sh
的脚本来设置环境变量。其中一行是:
config.dir=/Users/arianna/work/next/conf
运行它之后,我收到一条错误消息说:config.dir=/Users/arianna/work/next/conf:没有这样的文件或目录
我很困惑,因为这个目录存在。我可以复制,粘贴和cd到它
我在这里感到困惑。怎么了?在变量中使用
是导致问题的原因;在bash中,它用作环境变量和/或仅在某些shell中有效,这些shell可以将其识别为正则变量。我建议使用下划线,除非您绝对需要使用点
config_dir=/Users/arianna/work/next/conf
如果要将其用作环境变量或检索它,则可以执行以下操作:
config_dir=$( env 'config.dir=/Users/arianna/work/next/conf' \
awk 'BEGIN {print ENVIRON["config.dir"]}' )
echo "$config_dir"
说明:
↳ 当你说“在运行它之后”,你的意思是什么时候运行它?或者你是说以后你做别的事情的时候?如果是前者,你到底是如何运行脚本的?如果是后者,您是如何导致显示错误消息的?我的意思是,这是运行命令
/setenv.sh
的结果。错误消息是上述命令的结果。请注意,错误消息表示“config.dir=
”正在被视为文件路径的一部分,而这并不存在。