|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Добавить строку в начало текстовых файлов |
|
|
CMD/BAT - Добавить строку в начало текстовых файлов
|
Новый участник Сообщения: 1 |
Подскажите решение моей проблемы... В папке имеется несколько текстовых файлов, нужно, чтобы в начало каждого файла добавилась нужная мне строка.
решение примерно такое: http://forum.oszone.net/thread-187587.html только нужно, чтобы строка вставлялась не в конец, а в начало |
|
Отправлено: 18:17, 22-05-2017 |
Забанен Сообщения: 793
|
Если не усложнять, то в простейшем случае решение может быть таким:
@echo off setlocal enabledelayedexpansion set "i=1" set "arr.0=first string" for /f "tokens=*" %%i in (file.txt) do ( set "arr.!i!=%%i"&set /a "i+=1" ) set /a "i-=1" cd.>file.txt for /l %%i in (0, 1, !i!) do ( for /f "tokens=1,* delims==" %%j in ( 'set arr.%%i' ) do echo:%%k>>file.txt ) endlocal exit /b |
Отправлено: 19:44, 22-05-2017 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 4593
|
Профиль | Отправить PM | Цитировать Если приемлемо использование сторонних утилит, то простой примерчик будет выглядить так:
|
Отправлено: 20:03, 22-05-2017 | #3 |
Ветеран Сообщения: 2732
|
Профиль | Отправить PM | Цитировать @Echo Off Set "Mask=Z:\Box_In\*.txt" Set "Str=Нужная мне для вставки в начало текстового файла строка" FOR %%f IN ("%Mask%") DO ( (Echo %Str% &More "%%f")>"%%f.tmp" Move /Y "%%f.tmp" "%%f" >nul ) Если не принципиально, решение лучше сделать посредством .vbs-скрипта. |
------- Последний раз редактировалось megaloman, 22-05-2017 в 21:50. Отправлено: 21:16, 22-05-2017 | #4 |
Старожил Сообщения: 231
|
Профиль | Отправить PM | Цитировать All
как же вы любите все усложнять... COPY /? и обращаем внимание на символ "+" в выводе справки. Дальше в принципе все очевидно. |
|
------- Отправлено: 22:41, 22-05-2017 | #5 |
Ветеран Сообщения: 2732
|
Профиль | Отправить PM | Цитировать |
------- Отправлено: 23:11, 22-05-2017 | #6 |
Забанен Сообщения: 793
|
Цитата y--:
rem тестовый файл для вставки строки E:\src> more < con > test.txt string 1 string 2 ^Z rem смотрим что получилось E:\src> type test.txt string 1 string 2 rem строку, которую нужно вставить, пишем в ADS E:\src> echo:required string>test.txt:stream1 rem убеждаемся что содержимое файла не изменилось E:\src> type test.txt string 1 string 2 rem и что в созданном потоке хранится строка для вставки E:\src> streams test.txt E:\src\test.txt: :stream1:$DATA 17 E:\> more < test.txt:stream1 required string rem переносим строки из основного потока в созданный ADS E:\> type test.txt>>test.txt:stream1 E:\> more < test.txt:stream1 required string string 1 string 2 rem выводим ADS в основной поток E:\> more < test.txt:stream1 > test.txt E:\> type test.txt required string string 1 string 2 rem убеждаемся, что ADS при перезаписи основного потока был удален E:\> streams test.txt |
|
Отправлено: 09:32, 23-05-2017 | #7 |
Старожил Сообщения: 231
|
Профиль | Отправить PM | Цитировать greg zakharov
Цитата greg zakharov:
Сравни быстродействие методов... и тогда понятно станет утрирую я или нет. |
|
------- Отправлено: 12:06, 23-05-2017 | #8 |
Забанен Сообщения: 793
|
Цитата y--:
|
|
Отправлено: 12:50, 23-05-2017 | #9 |
Ветеран Сообщения: 2732
|
Профиль | Отправить PM | Цитировать greg zakharov, Если приземлённо вникнуть в постановку и рассуждать без эмоций в деловом стиле, то возникает вопрос: а где решение поставленной задачи?
Цитата method777:
Цитата greg zakharov:
А вот этот файл file.txt вообще обрабатывается криво
Цитата greg zakharov:
|
|||
------- Последний раз редактировалось megaloman, 23-05-2017 в 17:19. Отправлено: 17:10, 23-05-2017 | #10 |
|
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - Добавить символ в начало каждой строчки в txt | supervision | Скриптовые языки администрирования Windows | 1 | 22-09-2015 14:36 | |
CMD/BAT - Добавить в начало каждой строки ее номер | papacoca | Скриптовые языки администрирования Windows | 10 | 17-11-2014 19:12 | |
Разное - [решено] Не могу добавить элемент в контекстное меню для текстовых файлов (*.txt) в windows 7 | kefirko | Microsoft Windows 7 | 37 | 17-07-2014 09:28 | |
.NET - Как добавить строку в таблицу? | котвася | Программирование и базы данных | 4 | 27-04-2012 02:44 | |
CMD/BAT - [решено] Добавить строку в конце текстовых файлов | Seryoga204 | Скриптовые языки администрирования Windows | 14 | 19-11-2010 02:33 |
|