本帖最后由 aloha20200628 于 2024-1-26 18:15 编辑
在帖子 http://www.bathome.net/thread-68291-1-1.html 中曾用bat+jscrpit混编版请后者给前者援助浮点运算功能,vbs/jscript裸码不能直接在命令行运行,虽可经过mshta载入,但单行句式较长,且因mshta窗口瞬间开闭会导致屏闪,因而采用了bat+jscript混编方案。用本帖可以练一把powershell/python/awk给批处理脚本援助浮点运算功能的一行流句式,GB精度设为小数点后一位。
powershell版本- @echo off
- for /f "skip=1 tokens=1*" %%1 in (' "wmic path win32_videocontroller get adapterram,name" ') do if "%%2" neq "" (
- for /f "delims=" %%v in (' powershell -c "[math]::round((%%1/1gb),1)" ') do (echo,%%vGB %%2)
- )
复制代码 python版本- @echo off
- for /f "skip=1 tokens=1*" %%1 in (' "wmic path win32_videocontroller get adapterram,name" ') do if "%%2" neq "" (
- for /f "delims=" %%v in (' python -c "print(round(%%1/1073741824,1))" ') do (echo,%%vGB %%2)
- )
复制代码 gawk版本- @echo off
- for /f "skip=1 tokens=1*" %%1 in (' "wmic path win32_videocontroller get adapterram,name" ') do if "%%2" neq "" (
- for /f "delims=" %%v in (' gawk "BEGIN{printf(""%%.1f"",%%1/1073741824)}" ') do (echo,%%vGB %%2)
- )
复制代码
|