Chinaunix

标题: 全局变量没有作用了? [打印本页]

作者: yufeiluo    时间: 2018-03-30 11:46
标题: 全局变量没有作用了?
bash 默认函数外的变量是全局变量。
问题:其他脚本调用.bashrc中的函数。
.bashrc中有下面的几句。
var="xxx"
fun1(){
    echo $var
}
一个变量+一个函数

如果你想从其他的脚本中调用bashrc里面的这个函数,你必须写成这样

fun1(){
    var="xxx"
    echo $var
}

export -f fun1

var="xxx" 写在fun1函数定义里面了,问题是:其他的许多在.bashrc中的函数也需要这个变量,你将它写到fun1函数定义里面了,其他的函数定义里面也必须加这一行。

请问,有无简洁的办法解决?

作者: wh7211    时间: 2018-03-30 13:45
回复 1# yufeiluo


  1. 编辑 .bashrc:
  2. var="xxx"
  3. fun1(){
  4.     echo $var
  5. }
  6. export var
  7. export -f fun1
复制代码





欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2