![]() |
|
Модераторы: Poseidon |
![]()
|
|
| Alenka |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 28.8.2006 Репутация: нет Всего: нет |
Есть вот такая вот задачка:
Написать командный файл для поиска строки в нескольких текстовых файлах (использовать команду FIND). Строка для поиска, а также имена файлов задаются в командной строке. В командном файле использовать не более двух формальных параметров: %1 %2. Результаты по выбору пользователя вывести на экран или в файл RESULT.TXT (команда CHOICE). Проверить существование каждого файла. Решение получается только такое:
Как вы наверное уже поняли bat сделан только для поиска в одном файле... Как сделать в нескольких я не знаю... Cделать find с for не выходит... Параметров можно сделать только два (shift как я поняла тут тоже не сработает)... Что делать ума не приложу... Мальчики, кто-нибудь помогите... Большое пожалуйста !!! :( Это сообщение отредактировал(а) Alenka - 4.6.2007, 14:26 |
||||
|
|||||
| S.A.G. |
|
|||
![]() не эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1339 Регистрация: 20.7.2006 Где: in ad equate Репутация: нет Всего: 19 |
В условии сказано что нужно искать в нескольких файлах. Но там же написано что параметров должно быть два, т.е. имя файла и строка для поиска. Если параметров может быть больше то, просто сделайте тоже самое и со всеми другими параметрами содержащими название файла. Тоесть так:
Если параметров может быть только два то ваша задача решена. Или я неправильно понял условие. Это сообщение отредактировал(а) S.A.G. - 4.6.2007, 15:11 -------------------- Вот она задачка: спасти себя от себя самого © Cube Sometimes good people do evil things © A Simple Plan |
|||
|
||||
| Alenka |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 28.8.2006 Репутация: нет Всего: нет |
Нет к сожалению так не получится: Во-первых %3 это уже третий формальный параметр (что противоречит условию) Во-вторых ищем мы одну и ту же строку (параметр %2) в нескольких txt файлах (параметр %1) и файлов этих, должна быть возможность, указать любое количество (так параметров не хватит, и shift тут не поможет)... Вся проблема в том что надо как-то уместить в одном формальном параметре %1 список из нескольких txt фалов и затем этот список передать в for find... |
||||
|
|||||
| apook |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 794 Регистрация: 12.7.2006 Репутация: 10 Всего: 23 |
Вариантов может быть куча, один из нх апример передать
с параметром директорий где эти файлы лежат в батнике пишешь
запускаешь test.bat . произведется поиск в текущем директории всех файлов с расширением txt и если есть строка ABCDEF она выведется -------------------- Мои руки из дуба, голова из свинца ну и пусть ... |
|||
|
||||
| Alenka |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 28.8.2006 Репутация: нет Всего: нет |
Миленькие ну не могу я задавать в командной строке ничего кроме ИСКОМОЙ СТРОКИ и ИМЕН TXT ФАЙЛОВ (которых может быть любое количество)... Не могу я задавать никаких директорий (т.к. противоречит заданию + искать надо не во всех txt а в указанных в командной строке)...
Я не могу понять как засунуть в %1 скажем 1.txt 2.txt 3.txt и передать их в for find... Может есть какие-нибудь шаблоны записи, о которых я не знала? |
|||
|
||||
| apook |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 794 Регистрация: 12.7.2006 Репутация: 10 Всего: 23 |
Забыл добавить-Если хочешь чтоб параметр командной строки содержал пробелы заключи его в кавычки напр: "1.txt 2.txt 3.txt 4.txt" Это относится не только к батникам но и к eкзешникам и вообще это общепринятое правило. Это сообщение отредактировал(а) apook - 6.6.2007, 05:46 -------------------- Мои руки из дуба, голова из свинца ну и пусть ... |
|||
|
||||
| Alenka |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 28.8.2006 Репутация: нет Всего: нет |
OK пасибо! Буду пробовать!
|
|||
|
||||
![]()
|
| Правила форума "Центр помощи" | |
|
|
ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Более подробно с правилами данного раздела Вы можете ознакомится в этой теме. Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Центр помощи | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |