gpt4 book ai didi

linux - 找出命令使用了哪些环境变量

转载 作者:IT王子 更新时间:2023-10-29 00:25:32 24 4
gpt4 key购买 nike

在 Linux 环境中(在我的例子中是 XUbuntu),有没有办法找出从控制台运行的命令访问了哪些环境变量?

必须能够找出这些变量,因为必须有人向程序提供值。但是是否有一些默认方法可以做到这一点?

这里讨论的程序是 xprintidle。

最佳答案

假设您想要某些运行命令的进程实际使用的变量,您可以使用 ltrace并查找对 getenv 的调用:

$ ltrace -e getenv ./your_program

当然,可以计算 getenv 的参数(因此您无法真正预测它)。

但是,某些(旧的或奇怪的)应用程序可能会使用 environ 全局变量,或 main 的第三个可选参数;一些应用程序甚至使用 putenv 改变它们的环境, setenvunsetenv(所有 3 个都是 libc 函数,而不是内置的 shell)。

xprintidle 主要与 Xorg 服务器交互。我很惊讶您期望它使用许多环境变量(DISPLAY 除外)。

关于linux - 找出命令使用了哪些环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8494434/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com