如何从Solaris中的ld.config中删除环境变量

时间:2018-06-14 09:52:07

标签: environment-variables solaris ld solaris-10

我刚刚使用 crle 命令将永久环境变量添加到/var/ld/ld.config和/var/ld/64/ld.config:

crle -E VAR=VALUE -u
crle -E VAR=VALUE -u -64

如何从ld.config中仅删除此变量,但保留rest params?

1 个答案:

答案 0 :(得分:1)

crle允许您使用-u添加到现有配置文件,但它不会为您提供从一个选择性地删除内容的方法。这不是对称的,并且删除所选属性的功能可能被视为缺少功能。但是,请注意,不会经常以这种方式操作crle配置文件,因此这不是常见的用例。更常见的是创建一个,然后再完全删除它。并且必须说配置文件通常很少使用。

解决这个问题很容易。目标是删除一个属性,而不必记住所有其他属性,只需将它们带过来。请注意,crle为给定配置文件显示的信息显示了重新创建文件的命令。因此,您可以通过使用剪切/粘贴来获取显示的命令,减去您不再需要的部分,来估计您在此之后的选择性删除类型。

例如,让我们创建一个包含2个环境变量的配置文件:

% crle -c ld.config -E VAR1=v1 -E VAR2=v2

稍后,如果我想从现有的配置文件中删除VAR1,我 将使用'crle -c file'显示当前内容:

% crle -c ld.config

Configuration file [version 5]: ld.config
    Platform:   32-bit LSB 80386
    Default Library Path:       /lib:/usr/lib  (system default)
    Trusted Directories:        /lib/secure:/usr/lib/secure  (system default)

Environment Variables:
    VAR1=v1  (permanent)
    VAR2=v2  (permanent)

Command line:
    crle -c ld.config -E VAR1=v1 -E VAR2=v2

最后一行显示了我所需要的一切,重现配置文件,省略了我不再需要的位:

% crle -c ld.config -E VAR2=v2