Shell变量传递

父脚本 father.sh

#!/bin/bash

# echo father pid
echo "Father Process ID is $$"

# define local env
localvar="Define a local variable."
echo "localvar=$localvar"

ENVVAR="Define a environment variable."
export ENVVAR
echo "ENVVAR=$ENVVAR"

$PWD/child.sh

echo "Retrun to father process: $$"
echo "localvar=$localvar"
echo "ENVVAR=$ENVVAR"

子脚本 child.sh

#!/bin/bash

echo "Child Process ID is $$"
echo "My Father Process ID is $PPID"

echo "localvar=$localvar"
echo "ENVVAR=$ENVVAR"

localvar="Redefine this local variable."
ENVVAR="Redefine this environment variable."

echo "localvar=$localvar"
echo "ENVVAR=$ENVVAR"

结论
1 本地变量无法传递到子进程
2 环境变量对所有的子进程都有效
3 无论本地变量还是环境变量都无法向父进程传递参数

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值