Linux命令行下查找具有相同值的环境变量方法
在Linux命令行查找指定值的环境变量
假设你执行printenv后得到如下输出:
SHELL=/bin/bash GOOGLE_CLOUD_SHELL=true GOOGLE_CLOUD_PROJECT=qwiklabs-gcp-04-331618d6c19 JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64 CLOUD_SHELL=true DEVSHELL_PROJECT_ID=qwiklabs-gcp-04-331618d6c19 GCLOUD_PROJECT=qwiklabs-gcp-04-331618d6c19
要找出值为qwiklabs-gcp-04-331618d6c19的环境变量,两种输出格式的实现方法如下:
格式一:输出完整键值对
直接用grep精准匹配等号加目标值,避免误匹配变量名中包含目标字符串的情况:
printenv | grep -F "=qwiklabs-gcp-04-331618d6c19"
执行后输出:
GOOGLE_CLOUD_PROJECT=qwiklabs-gcp-04-331618d6c19 DEVSHELL_PROJECT_ID=qwiklabs-gcp-04-331618d6c19 GCLOUD_PROJECT=qwiklabs-gcp-04-331618d6c19
格式二:只输出变量名
方法一:用awk分割键值对匹配
printenv | awk -F '=' '$2=="qwiklabs-gcp-04-331618d6c19"{print $1}'
方法二:grep过滤后用cut截取
printenv | grep -F "=qwiklabs-gcp-04-331618d6c19" | cut -d '=' -f1
两种方法执行后均输出:
GOOGLE_CLOUD_PROJECT DEVSHELL_PROJECT_ID GCLOUD_PROJECT
内容的提问来源于stack exchange,提问作者Luke Schlangen
相关产品推荐
相关产品推荐

