INNER CODE UNIT · Python
collect_env_info
usepr/eva · eva.py:136
def collect_env_info():
cmds = {
"Linux": [
"uname -a",
"for t in python3 python node npm git docker curl wget; do command -v $t >/dev/null 2>&1 && echo \"$t: $(${t} --version 2>&1 | head -1)\" || echo \"$t: 未安装\"; done",
"ls -1A | grep -v '^\\.$' | grep -v '^\\..$' | while IFS= read -r f; do if [ -d \"$f\" ]; then echo \"[目录] $f\"; else echo \"[文件] $f\"; fi; done",
],
"macOS": [
"sw_vers && uname -m",
"for t in python3 python node npm git docker curl wget brew xcode-select; do command -v $t >/dev/null 2>&1 && echo \"$t: $($t --version 2>&1 | head -1)\" || echo \"$t: 未安装\"; done",
"find . -maxdepth 1 -mindepth 1 -print | sed 's#^./##' | while IFS= read -r f; do if [ -d \"$f\" ]; then echo \"[目录] $f\"; else echo \"[文件] $f\"; fi; done",
],
"Windows": [
"[System.Environment]::OSVersion.VersionString",
"foreach ($t in @('python','node','git','docker','curl.exe')) { $cmd = Get-Command $t -ErrorAction SilentlyContinue; if ($cmd) { $v = & $t --version 2>&1 | Select-Object -First 1; $name = $t -replace '\\.exe$',''; Write-Output \"$name`: $v\" } else { $name = $t -replace '\\.exe$',''; Write-Output \"$name`: 未安装\" } }",
"Get-ChildItem -Force | Where-Object { $_.Name -ne '.' -and $_.Name -ne '..' } | ForEach-Object { if ($_.PSIsContainer) { Write-Output \"[目录] $($_.Name)\" } else { Write-Output \"[文件] $($_.Name)\" } }",
]
}