批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程
[批处理文件精品]批处理版照片整理器[批处理文件精品]纯批处理备份&还原驱动在线第三方下载
返回列表 发帖

[文本处理] 求助:批处理获取计算机号写入指定的ini

目的是获取机房计算机名后两位的数字写入config.ini的第六行 从而获取机号显示在桌面上
  1. @echo off
  2. set num=%computername%
  3. set /a  ji=%num:~-2%
  4. (for /f "tokens=1* delims=:" %%a in ('type "config.ini" ^| findstr /n .*') do (
  5.     if %%a equ 6 (
  6.         echo 机号=%ji%
  7.     ) else (
  8.         echo,%%b
  9.     )
  10. ))>new.ini
  11. move /y new.ini config.ini
复制代码
以上代码可以实现,但当计算机后两位是08和09时就会是空内容,如计算机名是:504JF08和504JF09时,ini的机号就会是空,其它01~60数字都正常。请教高人帮助,谢谢!
补充,当计算机名后两位是01~09时,只显示一位数,就是显示 机号=1,而不是机号=01

set /a  ji=%num:~-2%
把这个 /a 删掉试试
【扫描二维码捐助论坛的朋友请留言注明论坛账号】http://bbs.bathome.net/thread-10403-1-1.html
【批处理在线视频分享】http://bbs.bathome.net/thread-31727-1-1.html
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html

TOP

echo,机号=%computername:~-2%
提供代写,省时省力省事,支付宝扫码头像支付,QQ956535081

TOP

回复 2# Batcher

删除  /a 能显示08,09。但我不想显示0,有办法解决否?谢谢热心回复

TOP

回复 4# hhdmmjz


    set /a ji=1%num:~-2%-100
【扫描二维码捐助论坛的朋友请留言注明论坛账号】http://bbs.bathome.net/thread-10403-1-1.html
【批处理在线视频分享】http://bbs.bathome.net/thread-31727-1-1.html
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html

TOP

本帖最后由 hhdmmjz 于 2019-3-14 19:57 编辑

回复 5# Batcher
谢谢版主,完美解决了。set /a  ji=1%num:~-2%-100,巧妙解决问题,再次感谢!

TOP

返回列表