环境 (env)

此对象由 environment() 返回,并存储有关如何设置环境变量的详细信息。 它应作为 env 关键字参数传递给测试和其他函数。

自 0.58.0 起 env.append()env.prepend() 可以多次调用相同的 varname。 较早的 Meson 版本会发出警告,并且只有最后一次操作有效。

由以下函数和方法返回

环境对象由以下函数和方法返回

示例

```meson
env = environment()

# MY_PATH will be '0:1:2:3'
env.set('MY_PATH', '1')
env.append('MY_PATH', '2')
env.append('MY_PATH', '3')
env.prepend('MY_PATH', '0')
```

环境方法

env.append()

将给定值追加到环境变量的旧值,例如 env.append('FOO', 'BAR', 'BAZ', separator : ';') 如果 FOO 的值为 BOB 则产生 BOB;BAR;BAZ,如果值未定义则产生 BAR;BAZ

签名

# appends the given values to
void append(
  str variable,     # The variable to modify
  str Value...,     # The values to append

  # Keyword arguments:
  separator : str  # The separator to use
)

参数

方法 env.append() 接受以下位置参数

名称 类型 描述 标签
变量 str

要修改的变量

此外,该方法接受 0无穷大 个可变参数 (Value...) 的类型为 str

要追加的值

最后,env.append() 接受以下关键字参数

名称 类型 描述 标签
分隔符 str

要使用的分隔符。 如果没有明确指定,将使用主机操作系统的默认路径分隔符,即 Windows 的 ';' 和 UNIX/POSIX 系统的 ':'。


env.prepend()

append 相同,但它写入变量的开头。

签名

# Same as `append` except that it writes to the beginning of the variable
void prepend(
  str variable,     # The variable to modify
  str Value...,     # The values to prepend

  # Keyword arguments:
  separator : str  # The separator to use
)

参数

方法 env.prepend() 接受以下位置参数

名称 类型 描述 标签
变量 str

要修改的变量

此外,该方法接受 0无穷大 个可变参数 (Value...) 的类型为 str

要追加的值

最后,env.prepend() 接受以下关键字参数

名称 类型 描述 标签
分隔符 str

要使用的分隔符。 如果没有明确指定,将使用主机操作系统的默认路径分隔符,即 Windows 的 ';' 和 UNIX/POSIX 系统的 ':'。


env.set()

将第一个参数中指定的环境变量设置为 varargs 中的值,这些值用分隔符连接。 例如,env.set('FOO', 'BAR'), 将 envvar FOO 设置为值 BAR

签名

# Sets the environment variable
void set(
  str variable,     # The variable to modify
  str Value...,     # The values to set

  # Keyword arguments:
  separator : str  # The separator to use
)

参数

方法 env.set() 接受以下位置参数

名称 类型 描述 标签
变量 str

要修改的变量

此外,该方法接受 0无穷大 个可变参数 (Value...) 的类型为 str

要设置的值

最后,env.set() 接受以下关键字参数

名称 类型 描述 标签
分隔符 str

要使用的分隔符。 如果没有明确指定,将使用主机操作系统的默认路径分隔符,即 Windows 的 ';' 和 UNIX/POSIX 系统的 ':'。


env.unset()

取消设置指定的环境变量。 如果此变量不存在,则不会发生任何事情。

签名

(自 1.4.0 起)

void unset()


搜索结果为