0 / 0 / 0
Регистрация: 14.03.2013
Сообщений: 8
1

Посчитать в текстовом файле количество строк с заданным текстом

18.03.2013, 19:11. Показов 3871. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
А как задать счетчик, который считает количество строк с заданной переменной?
т.е. к примеру есть файл текстовый в нем записаны имена работников и категории к которым они относятся

Bash
1
2
3
4
5
6
7
8
rem переменные задаются
set /a tab_num1=1
set /a tab_num1=2
set /a tab_num1=3
rem далее поис в файле...
echo %num1% человек состоит в 1 категории
echo %num2% человек состоит в 3 категории
echo %num3% человек состоит в 3 категории
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.03.2013, 19:11
Ответы с готовыми решениями:

Посчитать количество строк в файле
Здравствуйте! Помогите пожалуйста. Задание такое: У меня есть вот такой вариант (не работает):...

Создание файлов с именами, взятыми из списка в текстовом файле, и с заданным содержимым
Добрый день. Нужна помощь в создании файла из списка. Что нужно: Из списка создается "папка" в...

Удаление строк в текстовом файле
Доброго времени суток! Требуется помощь. Задача следующая, есть текстовый файл - 1.txt, который...

Перенос строк в текстовом файле
Помогите со скриптами! Есть текстовый файл (data.txt), в нем содержаться данные.(логин:пароль) ...

4
Эксперт WindowsАвтор FAQ
17996 / 7697 / 892
Регистрация: 25.12.2011
Сообщений: 11,470
Записей в блоге: 16
19.03.2013, 01:34 2
Можно без счетчика.
Bash
1
find /C <"file.txt"
Для более сложных условий поиска нужно, чтобы Вы предоставили образец файла,
и более детально расписали задачу.
0
0 / 0 / 0
Регистрация: 14.03.2013
Сообщений: 8
19.03.2013, 05:57  [ТС] 3
Программа должна отобразить на экране, сколько работников относится к 1 категории, сколько ко 2 и т.д.

Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
@echo off
chcp 1251>nul
 
setlocal EnableDelayedExpansion
 
set /p est1=1
set /p est2=2
set /p est3=3
for /f "skip=2 tokens=4 delims=; " %%a in (work.csv) do (
if "%est1%" == "%%a" echo.
)
for /f "skip=2 tokens=4 delims=; " %%a in (work.csv) do (
if "%est2%" == "%%a" echo.
)
for /f "skip=2 tokens=4 delims=; " %%a in (work.csv) do (
if "%est3%" == "%%a" echo.
)
pause
Файл: work.rar
0
Эксперт WindowsАвтор FAQ
17996 / 7697 / 892
Регистрация: 25.12.2011
Сообщений: 11,470
Записей в блоге: 16
19.03.2013, 16:00 4
Hakimoto, написал Вашим стилем. Не стал усложнять. Хотя можно было и одним циклом.
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
@echo off
setlocal EnableDelayedExpansion
chcp 1251>nul
 
::Задаем названия категориям
set katN.1=1
set katN.2=2
set katN.3=3
 
Echo Категория %katN.1%
for /f "UseBackQ skip=2 delims=; tokens=1-3" %%A in ("work.csv") do (
  if "%%C"=="%katN.1%" (
    echo.%%B
    set /A katC.1+=1
  )
)
Echo Кол-во сотрудников: %katC.1%
Echo.
Echo Категория %katN.2%
for /f "UseBackQ skip=2 delims=; tokens=1-3" %%A in ("work.csv") do (
  if "%%C"=="%katN.2%" (
    echo.%%B
    set /A katC.2+=1
  )
)
Echo Кол-во сотрудников: %katC.2%
Echo.
Echo Категория %katN.3%
for /f "UseBackQ skip=2 delims=; tokens=1-3" %%A in ("work.csv") do (
  if "%%C"=="%katN.3%" (
    echo.%%B
    set /A katC.3+=1
  )
)
Echo.Кол-во сотрудников: %katC.3%
pause>nul
1
0 / 0 / 0
Регистрация: 14.03.2013
Сообщений: 8
20.03.2013, 06:05  [ТС] 5
Спасибо!

Засунул все в 1 цикл для краткости -)

Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
echo.
set katN.1=1
set katN.2=2
set katN.3=3
set katC.1=0
set katC.2=0
set katC.3=0
for /f "skip=2 tokens=1-3 delims=;" %%A in (work.csv) do (
if "%%C"=="%katN.1%" set /a katC.1+=1
if "%%C"=="%katN.2%" set /a katC.2+=1
if "%%C"=="%katN.3%" set /a katC.3+=1
)
echo  %katC.1% человек из числа сотрудников предприятия имеют "%katN.1%" категорию
echo  %katC.2% человек из числа сотрудников предприятия имеют "%katN.2%" категорию
echo  %katC.3% человек из числа сотрудников предприятия имеют "%katN.3%" категорию
echo.
pause>nul
0
20.03.2013, 06:05
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.03.2013, 06:05
Помогаю со студенческими работами здесь

Замена строк в текстовом файле
Добрый день. Будьте добры, оказать помощь в написании готового bat-файла, который изменит...

Замена в текстовом файле строк по маске
подскажите, можно ли как то замену по маске делать в txt ? например надо найти &lt;sup&gt;&lt;a name=r3&gt;&lt;a...

Замена и удаление строк в текстовом файле
Добрый день! Есть txt файл, который содержит след. информацию. Подскажите пожалуйста, как удалить...

Вывод последних двух строк в текстовом файле
Доброго дня, товарищи, позволю себе еще немного наглости, в плане освоения команд для пакетных...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru