kyo*_*kyo 8 unix linux macos bash shell
我有var.sh
name="John"\nage="29"\n
Run Code Online (Sandbox Code Playgroud)\n\n我也有main.sh
eval "var.sh"\necho "My name is $name"\n
Run Code Online (Sandbox Code Playgroud)\n\n当我跑步时,我不断得到
\n\n\xe2\x9a\xa1\xef\xb8\x8f Desktop bash main.sh \nmain.sh: line 1: var.sh: command not found\nMy name is \n
Run Code Online (Sandbox Code Playgroud)\n\n将本地 bash 文件导入另一个 bash 文件的最佳做法是什么?
\n\n有没有办法可以在 Mac OS X、Linux 和 Windows 上工作?
\ncod*_*ter 10
eval
不适用于将脚本导入另一个脚本。你需要source
内置的:
source var.sh
Run Code Online (Sandbox Code Playgroud)
这是同义词:
. var.sh
Run Code Online (Sandbox Code Playgroud)
eval
由于以下一个或两个原因引发错误:
即使我们解决了这两个问题,eval
也会生成一个 shell 来运行var.sh
,这意味着一旦完成,里面设置的所有变量var.sh
都会被忘记eval
,这不是您想要的。
输出help source
:
Run Code Online (Sandbox Code Playgroud)source var.sh
归档时间: |
|
查看次数: |
5303 次 |
最近记录: |