我的家乡是写一个shell。而且我必须使用$PS2
。
但是当我写这样的代码时:
char *ENV_ps2;
ENV_ps2 = getenv("PS2");
我刚刚发现
ENV_ps2
指向(null)
。如何在程序中获取
$PS2
? 最佳答案
PS1
和PS2
shell变量不会导出,因此无法从子进程中访问。您可以使用简单的脚本对此进行测试:
$ cat /tmp/pstest.sh
#!/bin/sh
echo PS1=$PS1
echo PS2=$PS2
$ /tmp/pstest.sh
PS1=
PS2=