Board logo

标题: [文件操作] 来一个批处理判断条件最后一行的第一列长度是9-10个字符 [打印本页]

作者: 娜美    时间: 2021-12-2 19:20     标题: 来一个批处理判断条件最后一行的第一列长度是9-10个字符

如果最后一行的第一列长度是9-10个字符, 则打开该文本,     如果最后一行的第一列长度不是上述条件不用打开文本
分隔符是*和-

D:\A.txt

2021/12/02 17:54
atb6catbc*d420*3
uyb7catb6c-d420-3

作者: Fit    时间: 2021-12-2 19:54

@echo off&setlocal enabledelayedexpansion
set str=
for /f "tokens=1,* delims=-*" %%i in (d:\A.txt) do set str=%%i
set /a cout=0
for /l %%i in (0,1,11) do (
    if  not "!str:~%%i,1!"=="" set /a cout+=1
)
if %cout% equ  9 goto start
if %cout% equ 10 goto start
echo,未打开文件&pause&exit
:start
echo,打开文件
start "" d:\A.txt
pause&exit
作者: 娜美    时间: 2021-12-2 20:18

回复 2# Fit


   Fit哥好帅 Thank you
作者: qixiaobin0715    时间: 2021-12-2 21:44

本帖最后由 qixiaobin0715 于 2021-12-3 08:40 编辑
  1. @echo off
  2. cd /d "D:\"
  3. sort /+500 A.txt>a.log
  4. set /p var=<a.log
  5. del a.log
  6. setlocal enabledelayedexpansion
  7. for /f "delims=*-" %%a in ("%var%") do (
  8.     set str=%%a-
  9.     if "!str:~9!"=="-" (
  10.         start "" A.txt
  11.     ) else if "!str:~10!"=="-" (
  12.         start "" A.txt
  13.     )
  14. )
复制代码
win10以上系统勿用
作者: 娜美    时间: 2021-12-3 09:14

Thank thanks




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