在bash命令行中,我设置了一个变量myPath =/home/user/dir。我创建了一个脚本,将echo $ myPath放入其中,但似乎不起作用。它没有任何回应。我能做些什么来访问脚本中的myPath变量。如果我在命令中写入echo $ myPath,它可以工作,但不能在脚本中使用。在bash脚本中访问变量
9
A
回答
8
尝试
export myPath=/home/user/dir
18
你是怎么分配的变量?它应该是:
$ export myPath="/home/user/dir"
然后里面shell程序,如:
#!/usr/bin/env bash
echo $myPath
你会得到想要的结果。
5
你也可以做到这一点,设置myPath变量中只是MyScript可
myPath="whatever" ./myscript
为环境变量承认棘手的语法的详细信息,请参阅: http://www.pixelbeat.org/docs/env.html
1
您必须声明你的变量赋值“导出“:
export myPath="/home/user/dir"
这将导致shell将变量包含在enviro它启动的子流程。 默认情况下,声明的变量(不包含“导出”)不会传递给子过程。这就是为什么你最初没有得到你预期的结果。
相关问题
- 1. 如何在tcl(expect)脚本中访问bash变量脚本
- 2. 如何在bash脚本中访问PHP环境变量?
- 3. 在bash脚本中访问系统范围的环境变量
- 4. 在ruby脚本self.method中访问变量
- 5. 变量bash脚本
- 6. 如何访问Bash shell脚本中自动命名的变量
- 7. 在bash脚本中连接变量
- 8. 在bash脚本中定义变量
- 9. Bash脚本 - 在变量中存储stderr
- 10. 在BASH脚本中嵌入变量
- 11. 在Pentaho Kettle中访问bash变量
- 12. 从bash脚本访问ERRORLEVEL
- 13. 在bash shell脚本中启动动态变量(变量变量)
- 14. 从bash shell脚本循环访问数组索引变量?
- 15. bash脚本创建脚本变量
- 16. 成变量 - bash脚本TAKE2
- 17. 的Bash shell脚本变量
- 18. Bash脚本 - 嵌套变量
- 19. lftp + bash脚本+变量
- 20. 变量传给bash脚本
- 21. 内联bash脚本变量
- 22. 检查在bash脚本变量存在
- 23. 访问bash脚本中的xml属性
- 24. 问题在bash脚本中回显变量
- 25. 访问和更新其他脚本中的shell脚本变量
- 26. bash脚本中的条件变量?
- 27. bash脚本中的变量转义
- 28. Bash脚本中的变量赋值
- 29. bash脚本中的命令变量
- 30. 在bash脚本之间共享变量
在你的bash配置文件中也使用export var - 如果你想让你的脚本访问这些变量。例如JAVA_HOME – LukeSolar 2013-10-17 10:00:02
这是误导。 `export`对当前shell没有可见的影响。当需要使变量的值对从当前shell启动的子进程可见时,它非常有用。 – tripleee 2017-11-28 12:30:02