powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / батник по работе с текстовыми файлами.
5 сообщений из 5, страница 1 из 1
батник по работе с текстовыми файлами.
    #38790388
Dogmat-iGwt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день, коллеги.

Есть простенькая задача, которую можно запилить через cmd.
Беда в том, что я пока совершенно не сталкивался с командной строкой в работе, но хочется на примере разобраться и понять.

Итак: есть папка in, в которой лежит произвольное количество текстовых файлов с произвольным наполнением.
Необходимо:

вариант А: создать в папке out такие же файлы с такими же именами, но в начале текста каждого из них первой строкой добавить имена каждого файла без расширения, а в конце - последней строкой добавить текст "end of file".

вариант B: создать в папке out 1 файл с именем состоящем из текущей даты, в котором должен содержаться такой текст: первой строкой - имя этого файла (дата), затем тексты из всех файлов папки in, разделенные строками со знаком "/" в том порядке, в котором они лежат в папке, а в конце, последней строкой текст "end of file".

Обе папки находятся в одной директории с батником. Исходные файлы желательно должны иметь кодировку ANSI.
Задача имеет примерный характер, но решение планируется использовать для вполне реальных задач.
...
Рейтинг: 0 / 0
батник по работе с текстовыми файлами.
    #38790431
Фотография DarkMaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dogmat-iGwt,

Сколько готов заплатить?

P.S. Тебе помогут: for /? type /? и чуть-чуть знания о >> и echo
...
Рейтинг: 0 / 0
батник по работе с текстовыми файлами.
    #38790770
dogmat-igwt@mail.ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Правильный ответ:

Код: sql
1.
2.
3.
4.
5.
6.
for %%i in (in\*.*) do (
  echo %%~ni > out\%%~ni%%~xi
  type %%i >> out\%%~ni%%~xi
  echo. >> out\%%~ni%%~xi
  echo end of file >> out\%%~ni%%~xi
)



Код: sql
1.
2.
3.
4.
5.
6.
7.
echo %DATE% > out\%DATE%.txt
for %%i in (in\*.*) do (
  type %%i >> out\%DATE%.txt
  echo. >> out\%DATE%.txt
  echo / >> out\%DATE%.txt
)
echo end of file >> out\%DATE%.txt
...
Рейтинг: 0 / 0
батник по работе с текстовыми файлами.
    #38790902
WSh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WSh
Гость
Powershell

Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
#Итак: есть папка in, в которой лежит произвольное количество текстовых файлов с произвольным наполнением.


#вариант А: создать в папке out такие же файлы с такими же именами, но в начале текста каждого из них первой строкой добавить #имена каждого файла без расширения, а в конце - последней строкой добавить текст "end of file".

ls c:\in\*.txt | %{  {$_.BaseName; gc $_.FullName; "End of file"}.Invoke() > c:\out\$($_.Name) }


#вариант B: создать в папке out 1 файл с именем состоящем из текущей даты, в котором должен содержаться такой текст: первой #строкой - имя этого файла (дата), затем тексты из всех файлов папки in, разделенные строками со знаком "/" в том порядке, в #котором они лежат в папке, а в конце, последней строкой текст "end of file".

$out = Get-Date -Format dd.MM.yyyy
$out > out\$out 
ls c:\in\*.txt | %{  {"/";gc $_.FullName}.Invoke() >> c:\out\$out }
"End of file" > out\$out 
...
Рейтинг: 0 / 0
батник по работе с текстовыми файлами.
    #38790982
F#
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
F#
Гость
то есть
Код: powershell
1.
ls c:\in\*.txt | %{  &{$_.BaseName; gc $_.FullName; "End of file"} > c:\out\$($_.Name) }
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / батник по работе с текстовыми файлами.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]