for /f "tokens=*" %%a in (GH.TXT) do (set .=%%a&set .=!.:kma=☆!
if "!.!"=="%%a" (echo %%a>>2.txt) else (echo %%a>>2.txt&del GH.TXT&rename 2.txt GH.TXT&exit))
因为要在VB里用SHELL 调用,只能写到一行,本人试过,从if 开始只能放到第二行,不能写到第一行里去,请解决!
完整的批理是这样的:
@echo off &setlocal enabledelayedexpansion&for /f "tokens=*" %%a in (GH.TXT) do (set .=%%a&set .=!.:kma=☆!
if "!.!"=="%%a" (echo %%a>>2.txt) else (echo %%a>>2.txt&del GH.TXT&rename 2.txt GH.TXT&exit))
完整的GH.txt 文件如下:批处理的作用是删掉"kma"所在行后面的所有内容
# Ord Boot Id Ext First Num Last Used NTFS
5 5 0 7 Yes 737303238 614405862 1351709100 0 No
6 6 0 7 Yes 1351709163 601810902 1953520065 0 No
DiskManager diagnostic...
=========================
Fixed Drives
Drive 0 SMI USB DISK 1100 AA00000000000485
ASPI
Total Sectors 15413248
Bytes per Sector 512
MB 7526
Successful IO Count 0
把bat批处理中的所有命令写到一行?
答案:3 悬赏:60
解决时间 2021-03-07 19:07
- 提问者网友:冷场帝
- 2021-03-07 07:44
最佳答案
- 二级知识专家网友:茫然不知崩溃
- 2021-03-07 07:50
把你的GH.txt的大概内容说一下
我给你测试测试
我还以为你要把2.txt里面的内容保证是一行的哦
我给你测试测试
我还以为你要把2.txt里面的内容保证是一行的哦
全部回答
- 1楼网友:开心就好
- 2021-03-07 09:34
规定好的语法格式 你写成一行就乱了,......批处理本来就是一行一行运行下去的
你这样我没什么办法呢 查查vb有没有其他的函数可以完成
- 2楼网友:茫然不知崩溃
- 2021-03-07 08:26
一行没问题,我测试了一下,运行可以,只是结果不正确,没有再深入研究。
@echo off &setlocal enabledelayedexpansion&for /f "tokens=*" %%a in (GH.TXT) do (set .=%%a&set .=!.:kma=☆! && if "!.!"=="%%a" (echo %%a>>2.txt) else (echo %%a>>2.txt && del GH.TXT && rename 2.txt GH.TXT&exit))
把那孤独的&改成一对儿就行了。
变成一行,我做到了。运行正常。你代码中的逻辑关系我就不管了哦,抱歉。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯
• 手机登qq时,显示手机磁盘不足,清理后重新登 |
• 刺客的套装怎么选啊? |