env
命令在 CentOS 系统中用于显示当前环境变量或根据指定的环境变量运行程序。以下是 env
命令的一些常用参数及其详解:
显示所有环境变量
env
这将列出当前 shell 会话中的所有环境变量及其值。
显示特定环境变量
env VARIABLE_NAME
替换 VARIABLE_NAME
为你想要查看的环境变量的名称。例如,要查看 PATH
变量:
env PATH
使用指定环境变量运行程序
env VARIABLE_NAME=value COMMAND
这允许你在运行命令时临时设置一个环境变量。例如,要使用特定的 PATH
运行 ls
命令:
env PATH=/usr/local/bin:/usr/bin:/bin ls
-i
清除所有环境变量,只保留 LANG
和 SHELL
。这对于创建一个干净的环境非常有用,特别是在运行某些程序时需要避免环境变量的干扰。
env -i COMMAND
-u VARIABLE_NAME
删除指定的环境变量。例如,要删除 MY_VAR
变量:
env -u MY_VAR COMMAND
-0 使用空字符(null character)作为字段分隔符,而不是默认的空格或换行符。这在处理包含空格或特殊字符的环境变量值时非常有用。
env -0
–ignore-environment 忽略所有继承的环境变量,只使用命令行中显式设置的环境变量。
env --ignore-environment COMMAND
假设你想在一个干净的环境中运行 echo
命令,并且只想保留 LANG
和 SHELL
环境变量:
env -i LANG=en_US.UTF-8 SHELL=/bin/bash echo "Hello, World!"
这将输出:
Hello, World!
并且环境变量 LANG
和 SHELL
将被设置为指定的值,其他所有环境变量都将被清除。
通过这些参数,你可以灵活地管理和使用环境变量,以满足不同的需求。