Форум программистов, компьютерный форум, киберфорум
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 29.05.2015
Сообщений: 40

Поиск заданного слова в файле и подстановка его в название файла

01.06.2015, 15:18. Показов 1516. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток!

Есть текстовый файл: log.txt
Нужно найти в нем строку: ComputerName = COMP1 и переименовать файл log.txt в файл comp1_date_time.txt , где date и time, соответственно время и дата на момент создания (переименования) файла. Значение COMP1 будет меняться..
Спасибо
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
01.06.2015, 15:18
Ответы с готовыми решениями:

Реализовать поиск заданного файла в древе каталогов и поиск указанной информации в этом файле
Имеется много папок в каждой папке есть файл proc.txt, как можно по всем этим папкам пройтись и из каждой папки в этом файле достать...

Поиск слова в файле и его замена
Не могу никак решить одну проблему. Мне осталось в 3 классе написать следующее: - Программа просит ввести строку, которую нужно заменить....

Поиск слова в файле и его удаление
как находить нужное слово в файле и удалять его?

6
 Аватар для ComSpec
3462 / 2000 / 635
Регистрация: 26.02.2014
Сообщений: 1,457
01.06.2015, 18:17
Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
@echo off
 
set "log=log.txt"
 
for /f "tokens=1* delims== " %%i in ('findstr/irc:"^ComputerName = .*$" "%log%"') do (
 for /f "tokens=1-6 delims=.-/:, " %%k in ("%date% %time%") do (
  set h=0%%n& call ren "%log%" "%%j_%%m.%%l.%%k_%%h:~1%%.%%o.%%p.txt"
 )
)
 
exit/b 0
0
0 / 0 / 0
Регистрация: 29.05.2015
Сообщений: 40
03.06.2015, 09:19  [ТС]
ComSpec, скрипт отрабатывает, но ничего не происходит- может ошибка где?
0
 Аватар для ComSpec
3462 / 2000 / 635
Регистрация: 26.02.2014
Сообщений: 1,457
03.06.2015, 09:40
Цитата Сообщение от iurum Посмотреть сообщение
может ошибка где?

Может быть... Вот здесь:
Цитата Сообщение от iurum Посмотреть сообщение
ComputerName = COMP1
.
0
0 / 0 / 0
Регистрация: 29.05.2015
Сообщений: 40
03.06.2015, 11:09  [ТС]
Цитата Сообщение от ComSpec Посмотреть сообщение
Может быть... Вот здесь:
Сообщение от iurum
ComputerName = COMP1
Ну, здесь все правильно - ComputerName = ****** , а название в логе меняется как и говорил: COMP2, COMPUTER3, Terrminal06 ...

Добавлено через 1 час 12 минут
ComSpec, разобрался я... В строке, содержащей ComputerName = **** есть еще символы, т.е. выглядит она целиком так:
Property(S): ComputerName = COMP1
Без вот этого Property(S): - все замечательно работает
Можно добавить в скрипт, чтобы игнорировало все, что до ComputerName ? И если можно, чтобы переименовывало файл в нижнем регистре
0
 Аватар для ComSpec
3462 / 2000 / 635
Регистрация: 26.02.2014
Сообщений: 1,457
03.06.2015, 13:35
Лучший ответ Сообщение было отмечено iurum как решение

Решение

Цитата Сообщение от iurum Посмотреть сообщение
ComSpec, разобрался я... В строке, содержащей ComputerName = **** есть еще символы, т.е. выглядит она целиком так:
Property(S): ComputerName = COMP1
Без вот этого Property(S): - все замечательно работает
Можно добавить в скрипт, чтобы игнорировало все, что до ComputerName ?


Надеюсь, что на сей раз строка приведена верно.

Код пакетного файла:

Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
@echo off
 
set "log=log.txt"
 
for /f "tokens=2* delims== " %%i in ('findstr/irc:"^[^ ].* ComputerName = .*$" "%log%"') do (
 for /f "tokens=1-6 delims=.-/:, " %%k in ("%date% %time%") do (
  set h=0%%n& call ren "%log%" "%%j_%%m.%%l.%%k_%%h:~1%%.%%o.%%p.txt"
 )
)
 
exit/b 0
.




Цитата Сообщение от iurum Посмотреть сообщение
И если можно, чтобы переименовывало файл в нижнем регистре


Можно.

Есть такой трюк с созданием временного файла и использованием команды "DIR" с ключом "/L", переводящий верхний регистр в нижний (нельзя только использовать символы, которые исключены для имён файлов).

Полный код пакетного файла:

Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
13
@echo off
 
set "log=log.txt"
 
for /f "tokens=2* delims== " %%i in ('findstr/irc:"^[^ ].* ComputerName = .*$" "%log%"') do (
 for /f "delims=" %%k in ('rem:^>"%%j"^& dir/b/l "%%j"^& del "%%j"') do (
  for /f "tokens=1-6 delims=.-/:, " %%l in ("%date% %time%") do (
   set h=0%%o& call ren "%log%" "%%k_%%n.%%m.%%l_%%h:~1%%.%%p.%%q.txt"
  )
 )
)
 
exit/b 0
.
1
0 / 0 / 0
Регистрация: 29.05.2015
Сообщений: 40
03.06.2015, 13:41  [ТС]
ComSpec, великолепно! Огромный респект!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
03.06.2015, 13:41
Помогаю со студенческими работами здесь

Поиск слова в файле и его замена другим
Требуется помощь в следующем есть файл с текстом в нем нужно найти слово и заменить другим а затем этот файл сохранить с изменениями...

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

Поиск слова в файле, с файла в переменные
Доброго времени суток форумчанен! Недавно написал код который ищет введенное пользователем слово в файле и если не находит его, то...

Как реализовать поиск в текстовом файле слова, и вывод его перевода?
Проблема в том, что не знаю, как реализовать поиск в текстовом файле слова и вывод его перевода. Говорили, что есть функция которая ищет...

Поиск в файле первого слова, введённого пользователем и замена его на второе
Помогите написать программу Заранее спасибо:D Задание: Имеется файл inform.txt. В нём содержится некоторый текст, состоящий...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru