[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 求助:批处理获取计算机号写入指定的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 删掉试试
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

echo,机号=%computername:~-2%
提供bat代写,为你省时省力省事,支付宝扫码头像支付
微信: unique2random

TOP

回复 2# Batcher

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

TOP

回复 4# hhdmmjz


    set /a ji=1%num:~-2%-100
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

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

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

TOP

返回列表