本文目录导读:

Bash 脚本(Linux/macOS)
#!/bin/bash # 获取当前进程的环境变量 echo "所有环境变量:" env # 获取特定环境变量 echo "PATH: $PATH" echo "HOME: $HOME" # 获取指定进程的环境变量(需要进程PID) PID=12345 cat /proc/$PID/environ 2>/dev/null | tr '\0' '\n' # 或者使用 tr 命令 cat /proc/$PID/environ | tr '\0' '\n' | grep -E "^(PATH|HOME)="
Python 脚本
import os
import subprocess
import sys
# 获取所有环境变量
print("所有环境变量:")
for key, value in os.environ.items():
print(f"{key}={value}")
# 获取特定环境变量
path = os.environ.get('PATH', 'Not Set')
print(f"PATH: {path}")
# 获取指定进程的环境变量
def get_process_env(pid):
try:
# Linux 系统
with open(f'/proc/{pid}/environ', 'rb') as f:
data = f.read().decode('utf-8', errors='ignore')
for line in data.split('\0'):
if line: # 跳过空行
print(line)
except FileNotFoundError:
print(f"进程 {pid} 不存在")
except PermissionError:
print(f"没有权限访问进程 {pid}")
# 使用示例
get_process_env(12345)
PowerShell 脚本(Windows)
# 获取当前进程的环境变量
Write-Host "所有环境变量:"
Get-ChildItem Env:
# 获取特定环境变量
Write-Host "PATH: $env:PATH"
Write-Host "USERNAME: $env:USERNAME"
# 获取指定进程的环境变量
function Get-ProcessEnv {
param($ProcessName)
$process = Get-Process -Name $ProcessName -ErrorAction SilentlyContinue
if ($process) {
# 使用 WMI 获取进程环境变量
$wmi = Get-WmiObject Win32_Process -Filter "Name='$ProcessName.exe'"
if ($wmi) {
# 解析环境变量
$envVars = $wmi.GetOwner() | Out-Null
# 注意:WMI 不直接暴露环境变量,需要其他方法
}
}
}
# 替代方法:使用 Start-Process 启动进程并捕获环境
$processInfo = New-Object System.Diagnostics.ProcessStartInfo
$processInfo.FileName = "cmd.exe"
$processInfo.Arguments = "/c set"
$processInfo.UseShellExecute = $false
$processInfo.RedirectStandardOutput = $true
$process = [System.Diagnostics.Process]::Start($processInfo)
$output = $process.StandardOutput.ReadToEnd()
$process.WaitForExit()
Write-Host $output
Perl 脚本
#!/usr/bin/perl
use strict;
use warnings;
# 获取所有环境变量
print "所有环境变量:\n";
foreach my $key (sort keys %ENV) {
print "$key=$ENV{$key}\n";
}
# 获取特定环境变量
print "\n特定变量:\n";
print "PATH: $ENV{PATH}\n" if exists $ENV{PATH};
print "HOME: $ENV{HOME}\n" if exists $ENV{HOME};
Node.js 脚本
#!/usr/bin/env node
// 获取所有环境变量
console.log("所有环境变量:");
console.log(process.env);
// 获取特定环境变量
console.log(`PATH: ${process.env.PATH}`);
console.log(`HOME: ${process.env.HOME}`);
// 获取指定进程的环境变量(需要特殊处理)
const fs = require('fs');
const pid = process.argv[2] || process.pid;
try {
// Linux 系统
const data = fs.readFileSync(`/proc/${pid}/environ`, 'utf-8');
const envVars = data.split('\0').filter(Boolean);
console.log(`\n进程 ${pid} 的环境变量:`);
envVars.forEach(env => console.log(env));
} catch (err) {
console.error(`无法读取进程 ${pid} 的环境变量: ${err.message}`);
}
注意事项
- 权限问题:Linux 下读取其他进程的环境变量需要 root 权限或与目标进程相同用户
- 跨平台差异:Windows 和 Linux 获取其他进程环境变量的方法不同
- 进程生命周期:获取的环境变量是进程启动时的快照,后续修改不会反映
- 安全性:环境变量可能包含敏感信息,注意保护
选择哪个脚本取决于你的操作系统和具体需求,Bash 在 Linux 下最直接,Python 和 PowerShell 跨平台性更好。
版权声明:NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
篮球直播
篮球直播
篮球直播
篮球直播
篮球直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
篮球直播
篮球直播
篮球直播
篮球直播
篮球直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播