Board logo

标题: [数值计算] [分享]批处理获取的硬盘序列号转换成十进制数 [打印本页]

作者: Batcher    时间: 2019-5-31 17:08     标题: [分享]批处理获取的硬盘序列号转换成十进制数

问题:
for /f "tokens=1,2* delims= " %%i in ('dir c:\^|findstr /c:"卷的序列号是"') do set C_SN=%%j
批处理获取的硬盘序列号怎么转换成十进制数呢


代码:
  1. @echo off
  2. for /f "tokens=1-3 delims=- " %%i in ('dir c:\^|findstr /c:"卷的序列号是"') do (
  3.     for /f %%a in ('set /a 0x%%j') do (
  4.         set SN1=%%a
  5.     )
  6.     for /f %%a in ('set /a 0x%%k') do (
  7.         set SN2=%%a
  8.     )
  9. )
  10. echo %SN1%-%SN2%
  11. pause
复制代码

作者: Batcher    时间: 2019-5-31 20:00

问题:
7010-222E如获取后是这个的,然后把中间的-去掉变成7010222E再转成十进制

代码:
  1. @echo off
  2. for /f "tokens=1-3 delims=- " %%i in ('dir c:\^|findstr /c:"卷的序列号是"') do (
  3.     for /f %%a in ('set /a 0x%%j%%k') do (
  4.         set SN=%%a
  5.     )
  6. )
  7. echo %SN%
  8. pause
复制代码

作者: CrLf    时间: 2019-6-1 01:26

emmmm...这和直接计算有什么区别吗...
  1. @echo off
  2. for /f "tokens=1-3 delims=- " %%i in ('dir c:\^|findstr /c:"卷的序列号是"') do (
  3.     set /a SN=0x%%j%%k
  4. )
  5. echo %SN%
  6. pause
复制代码





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2