如何清除launchd中的环境变量?

如何清除launchd中的环境变量?

目前,我有这个 bash 脚本:

#!/bin/bash
function clear_secrets {
  export bob=""
  export john=""
}
clear_secrets

我希望这个 bash 脚本通过 launchd 每 1 分钟运行一次。但是,当我在 bash 会话中设置这些环境变量时,它们在一分钟后不会被清除。我假设这是因为 launchd 在不同的会话中运行脚本。有没有办法让 launchd 影响所有 bash 会话?

为了澄清,我想在所有当前的 bash 会话中每分钟清除一些环境变量。我尝试使用 bash 脚本并每分钟启动一次该 bash 脚本。我可以做什么来实现这个目标?

答案1

尝试将脚本更改为:

#!/bin/bash
function clear_secrets {
  export bob=""
  export john=""
}
while true
do
  clear_secrets
  sleep 60
done

然后更新 /etc/bashrc (或系统的默认 bashrc 所在的位置)以调用此脚本。就像是:

/usr/local/bin/clearSecrets &

相关内容