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

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

Ответить
Настройки темы
CMD/BAT - [решено] Создать текстовые файлы из списка в .txt

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


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

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


Здравствуйте! Может кто знает маленьку программку,которая может из файла .txt со списком внутри-создать несколько текстовых файлов с названиями из .txt
Например: внутри .txt имеется список:
Понедельник
Вторник
Среда
и т.д. И нужно,чтобы программа создала файлы
Понедельник.txt
Вторник.txt
Среда.txt
и т.д. Может через батник как-то можно это реализовать.Подскажите,пожалуйста!

Отправлено: 14:57, 06-07-2021

 

Ветеран


Contributor


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

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


Цитата Z:\Box_In\внутри.txt:
Понедельник
Вторник
Среда
Хроно синкластическая инфандибула
и т.д.
Код: Выделить весь код
@Echo Off
>nul chcp 1251
	FOR /F "usebackq delims=" %%s IN ("Z:\Box_In\внутри.txt") DO >"Z:\Box_Out\%%s.txt" cd.
Exit /B 0
Я предположил, что Ваш текстовый файл создан в кодировке 1251, поэтому и батник надо сохранить в кодировке 1251, иначе надо удалить >nul chcp 1251 и сохранить батник в 866 кодировке.

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 06-07-2021 в 15:41.

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

Отправлено: 15:25, 06-07-2021 | #2



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

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


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


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

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


Цитата megaloman:
@Echo Off
>nul chcp 1251
FOR /F "usebackq delims=" %%s IN ("Z:\Box_In\внутри.txt") DO >"Z:\Box_Out\%%s.txt" cd.
Exit /B 0 »
Всё работает,как надо.Спасибо большое!

Отправлено: 16:14, 06-07-2021 | #3


Забанен


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

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


Цитата lyohalyoha:
Например: внутри .txt имеется список:
Понедельник
Вторник
Среда
и т.д.
С днями недели ежели, то всё решается командой:
Код: Выделить весь код
pwsh -nop -c "(Get-Culture ru-RU).DateTimeformat.DayNames.ForEach{New-Item -Name ""$($_).txt"" -ItemType File}"
pwsh делает это более наглядно, хотя и не является штатным.
Это сообщение посчитали полезным следующие участники:

Отправлено: 17:20, 06-07-2021 | #4


Ветеран


Contributor


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

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


lyohalyoha, Если список файлов небольшой, можно обойтись без текстового файла с именами, например:
Код: Выделить весь код
@Echo Off
>nul chcp 1251
	FOR %%s IN (Понедельник Вторник Среда Четверг Пятница Суббота Воскресенье "Свод за неделю") DO >"Z:\Box_Out\%%~s.txt" cd.
Exit /B 0
Если в имени предполагаются пробелы, в списке взять его в кавычки.

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.

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

Отправлено: 19:59, 06-07-2021 | #5


Ветеран


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

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


Цитата megaloman:
Хроно синкластическая инфандибула »
Я протестую ! Инфандибулум!

Отправлено: 20:16, 06-07-2021 | #6


Ветеран


Contributor


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

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


Цитата Iska:
Я протестую »
Отклоняю: давайте не будем засорять русский язык иностранными словами. Моя пятилетняя дочь много лет тому назад изобразила красками именно инфандибулу.

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Отправлено: 20:48, 06-07-2021 | #7


Забанен


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

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


Цитата megaloman:
...давайте не будем засорять русский язык... Моя пятилетняя дочь много лет тому назад...
Засорять то можете не засорять, но со стилистикой у вас что-то не очень: "пятилетняя дочь много лет назад", - а сколько лет наперёд она пятилетняя?


Между прочим, если допускается использование sed, можно не гонять for:
Код: Выделить весь код
>nul chcp 1251 & (sed "s/^/cd.>/;s/$/.txt/" list.txt |>nul cmd) & chcp 866>nul
Вполне корректно отработает в командной строке. Если же строки содержат пробелы:
Код: Выделить весь код
>nul chcp 1251 & (sed "s/^/cd.>\"/;s/$/.txt\"/" list.txt |>nul cmd) & chcp 866>nul

Последний раз редактировалось greg zakharov, 06-07-2021 в 21:19.


Отправлено: 21:10, 06-07-2021 | #8


Ветеран


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

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


Цитата megaloman:
Моя пятилетняя дочь много лет тому назад изобразила красками именно инфандибулу. »
Хочу-хочу-хочу. Покажите!

Отправлено: 21:49, 06-07-2021 | #9



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Любой язык - [решено] Добавить блоки строк из одного txt файла в другие txt файлы Alexander_88 Скриптовые языки администрирования Windows 7 06-07-2019 00:15
Любой язык - [решено] Добавить строки из одного txt файла в другие txt файлы Alexander_88 Скриптовые языки администрирования Windows 4 02-07-2019 20:29
CMD/BAT - переименовать файлы из списка txt lovator Скриптовые языки администрирования Windows 7 15-11-2018 23:59
CMD/BAT - Переименование файлов из списка *.txt IntuitOS Скриптовые языки администрирования Windows 12 30-03-2013 10:36
CMD/BAT - [решено] Создание файлов из списка в txt kasik Скриптовые языки администрирования Windows 1 15-01-2011 20:04




 
Переход