Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Разработать программу которая будет считать кол-во символов,строк,слов в .txt

Ответить
Настройки темы
CMD/BAT - [решено] Разработать программу которая будет считать кол-во символов,строк,слов в .txt

Новый участник


Сообщения: 6
Благодарности: 1

Профиль | Отправить PM | Цитировать


Здравствуйте!
Надо разработать командный файл, который бы получал в качестве аргумента имя текстового файла
и выводил на экран информацию о том, сколько символов, слов и строк в текстовом файле.

В общем, я сделала все кроме слов.

Цитата:
dir %1
for /f %%i in ('type %1 ^|find /c /v "" ') do set ("line=%%i")
pause
Это сообщение посчитали полезным следующие участники:

Отправлено: 18:50, 13-05-2010

 

Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
@echo off
if "%~1"=="" echo using: %~nx0 filename& pause >nul& exit 1

for /f %%i in ('^<"%~1" find /c /v ""') do set $l=%%i
for /f "usebackq delims=" %%a in ("%~1") do for %%i in (%%a) do set /a $w+=1

echo lines  : %$l%
echo words  : %$w%
echo symbols: %~z1

pause >nul
Это сообщение посчитали полезным следующие участники:

Отправлено: 05:35, 14-05-2010 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 6
Благодарности: 1

Профиль | Отправить PM | Цитировать


Спасибо, только с символами и строками хорошо, но вот со словами коряво...

Отправлено: 18:45, 14-05-2010 | #3


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


Цитата klenb:
со словами коряво»
Не понял, в чем корявость - не работает?.. или Вы про эстетику?

на самом деле, для символов тоже не всё чисто - такой способ хорош только для текстовых файлов в OEM/ANSI кодировке, в юникоде (UTF8/UTF16) один символ может занимать несколько байт - в постановке задачи про это ни слова... что касается слов, то даже в мощных языках типа Perl задача далеко не тривиальна - к примеру, символ "-" может являться соединителем одного слова (перенос, сложное слово), равно как и разделителем (тире)...

Отправлено: 14:39, 15-05-2010 | #4


Новый участник


Сообщения: 5
Благодарности: 0

Профиль | Отправить PM | Цитировать


Корявость в том, что слова не правильно считает... Например, у меня текст три строки, в каждой строке по одному слову - программа все правильно выдает 3, но стоит мне в одну из строк добавить еще одно слово, программа выдает 12!!!

Отправлено: 08:27, 16-05-2010 | #5


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


bred, мне не удалось воспроизвести проблему, давайте конкретный пример

Отправлено: 08:47, 16-05-2010 | #6


Новый участник


Сообщения: 5
Благодарности: 0

Профиль | Отправить PM | Цитировать


Я же его только что привела... Вот конкретнее:
При таком тексте
Цитата:
aaa
bbb
ccc
выдает кол-во слов 3, а при таком
Цитата:
aaa ddd
bbb
ccc
12!

Отправлено: 09:33, 16-05-2010 | #7


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


bred, у меня выдает 4

Отправлено: 10:24, 16-05-2010 | #8


Новый участник


Сообщения: 5
Благодарности: 0

Профиль | Отправить PM | Цитировать


А у меня, когда текст в первый раз запускаешь все нормально считает, а если тут же его изменить и сохранить, то уже не правильно... Но это мелочи! Спасибо большое, помог очень

Отправлено: 19:38, 16-05-2010 | #9


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


bred, решено?..

Цитата bred:
когда текст в первый раз запускаешь все нормально считает, а если тут же его изменить и сохранить, то уже не правильно »
значит, у Вас есть уникальная возможность найти причину ;)
Это сообщение посчитали полезным следующие участники:

Отправлено: 08:16, 17-05-2010 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Разработать программу которая будет считать кол-во символов,строк,слов в .txt

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
На языке Shell разработать программу. MVA Программирование в *nix 4 02-05-2010 14:54
PHP|Кол-во строк между выбранными тегами morgan1991 Вебмастеру 0 17-03-2010 22:06
Подскажите программу, которая... nicohack Microsoft Windows NT/2000/2003 4 16-10-2009 12:38
Как удалить программу которая не удалаяется обычным способом? arif84 Хочу все знать 2 25-08-2009 21:26
Как отследить программу, которая тормозит систему? wale Хочу все знать 4 05-06-2007 19:37




 
Переход