Пакетный файл - подсчет количества строк - PullRequest
0 голосов
/ 27 сентября 2019

Я использую приведенный ниже скрипт BATCH для подсчета количества строк

Find /V /C "" < c:\Users\Admin\Desktop\123.txt >> lines.log

Можно ли получить информацию в диалоговом окне / окне сообщения (информация)

Ответы [ 2 ]

1 голос
/ 27 сентября 2019

Чтобы отобразить окно сообщения с cmd, нам нужно будет использовать vbs и выполнить его с wscript вместо cscript.Это выполнит приложение Windows вместо консольного приложения.Затем, используя .Echo(), мы сможем сделать всплывающее окно с сообщением.

Из командной строки

FOR /F "tokens=*" %%G  IN ('find /v /c "" ^< c:\Users\Admin\Desktop\123.txt') do ( 
set /a counter = %G 
)

echo >%temp%\msgbox.vbs Wscript.echo("Total count of lines: %counter%")

Wscript %Temp%\msgbox.vbs

Здесь counter останется переменной среды (set counter= чтобы стереть это).Вместо этого я предлагаю сделать это из командного файла,

@echo off

setlocal EnableDelayedExpansion

FOR /F "tokens=*" %%G  IN ('find /v /c "" ^< c:\Users\Admin\Desktop\123.txt') do ( set /a counter = %%G )    

echo >%temp%\msgbox.vbs Wscript.echo("Total count of lines: !counter!")

Wscript %Temp%\msgbox.vbs

exit /B
1 голос
/ 27 сентября 2019

Это нормально?

@echo off

set "file_to_check=./test.xml"

for /f "tokens=* delims=" %%# in ('Find /V /C "" ^< "%file_to_check%"') do (
    set "line_count=%%#"
)

::echo %line_count%

msg "%username%" "%line_count%"

или:

@echo off

set "file_to_check=./test.xml"

for /f "tokens=* delims=" %%# in ('Find /V /C "" ^< "%file_to_check%"') do (
    set "line_count=%%#"
)

::echo %line_count%

::msg "%username%" "%line_count%"

mshta "about:Lines of the %file_to_check% are <p> %line_count%"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...