1 (изменено: Куприян, 2011-12-08 14:43:18)

Тема: CMD/BAT: Копирование имен файлов в TXT, которые содержаться в папке

Здравствуйте, наверно этот вопрос уже задавался - так наведите мои глаза на него - ато слепой))). Возникла такая необходимость чтобы записать название большого кол-ва файлов в ТХТ - это займет много времени. Лучше автоматизировать этот процесс. Мне надо: Чтобы я засунул в папку батник, запустил его. А он в свою очередь записал все имена файлов с их расширением в текстовый, который в свою очредь будет называться как та папка в которой находились файлы. Да и чтобы после названия файла он делал три пробела и вставлял этот знак ";" Чтобы было более понятно вот пример:
----------------------------
Mud.mp3   ;
Hello.doc   ;
CIIacubo.dll   ;
Привет.m3u   ;
inbox.html   ;
---------------------------
Чтобы была поддержка кирилицы ну если можно чтоб можно было выбирать ставить ли ";" или нет.
Спасибо

Мужик обманул Мужика - Жулик; Купец обманул Купца - Коммерсант; Генерал обманул Генерала - Стратег; Король обманул Короля - Политик. Все зависит от обстоятельств, но обстоятельства делаем мы - люди. Так что дерзайте...

2 (изменено: sov44, 2011-12-08 16:10:56)

Re: CMD/BAT: Копирование имен файлов в TXT, которые содержаться в папке

Как прописать имя текстового файла именем папки, не знаю. Самому интересно. Для имени 5.txt  батник будет выглядеть примерно так ( кодировка 866):

@echo off
SetLocal enabledelayedexpansion

>>5.txt echo ---------------
:: тут будет Ваш путь. Это пример 
set "dr=c:\Program Files\7-Zip"

for /f "delims=*" %%i in ('dir /b/a-d "%dr%\*.*" 2^>nul') do (
>>5.txt echo %%i   ;
)
>>5.txt echo ---------------
endlocal
exit

3 (изменено: Куприян, 2011-12-08 16:55:44)

Re: CMD/BAT: Копирование имен файлов в TXT, которые содержаться в папке

хоть так спасибо (так я понимаю - путь нада самому отредактировать каждый раз и имя ТХТ тоже самаму сделать)
--------------------
И кстати не работает (с кирилицей пробывал) (Если нет кирилических символов то работает) (set "dr=C:\Documents and Settings\Admin\Рабочий стол\ppp")
--------------------
А как сделать так чтобы не приходилось каждый раз изменять путь в батнике? закинул в папку да и жмакнул и усе.

Мужик обманул Мужика - Жулик; Купец обманул Купца - Коммерсант; Генерал обманул Генерала - Стратег; Король обманул Короля - Политик. Все зависит от обстоятельств, но обстоятельства делаем мы - люди. Так что дерзайте...

4

Re: CMD/BAT: Копирование имен файлов в TXT, которые содержаться в папке

Куприян пишет:

И кстати не работает (с кирилицей пробывал) (set "dr=C:\Documents and Settings\Admin\Рабочий стол\ppp")

Сохраните батник в 866 кодировке, с кириллицей проблем не будет. Я писал об этом.
п.с. Батник рабочий.

5

Re: CMD/BAT: Копирование имен файлов в TXT, которые содержаться в папке

Спасибо осознал и исправлюсь
А как сделать так чтобы не приходилось каждый раз изменять путь в батнике? закинул в папку да и жмакнул и усе.

Мужик обманул Мужика - Жулик; Купец обманул Купца - Коммерсант; Генерал обманул Генерала - Стратег; Король обманул Короля - Политик. Все зависит от обстоятельств, но обстоятельства делаем мы - люди. Так что дерзайте...

6

Re: CMD/BAT: Копирование имен файлов в TXT, которые содержаться в папке

Попробуйте так:

@echo off
SetLocal enabledelayedexpansion
set "tt=%~p0"

>>%tt:~1,-1%.txt echo ---------------
:: тут будет Ваш путь. Это пример 
set "dr=c:\Program Files\7-Zip"

for /f "delims=*" %%i in ('dir /b/a-d "%dr%\*.*" 2^>nul') do (
>>%tt:~1,-1%.txt echo %%i   ;
)
>>%tt:~1,-1%.txt echo ---------------
endlocal
exit

7

Re: CMD/BAT: Копирование имен файлов в TXT, которые содержаться в папке

Не чтоы путь не приходилось менять - засунул батник в папку с файлами - а он все названия этих файлов в ТХТ

Мужик обманул Мужика - Жулик; Купец обманул Купца - Коммерсант; Генерал обманул Генерала - Стратег; Король обманул Короля - Политик. Все зависит от обстоятельств, но обстоятельства делаем мы - люди. Так что дерзайте...

8

Re: CMD/BAT: Копирование имен файлов в TXT, которые содержаться в папке

Попробуйте поставить кавычки у %tt:~1,-1%.txt чтобы было так "%tt:~1,-1%".txt

п.с. профи, понимаю, вам забавно, поправляйте, если что не так!

9

Re: CMD/BAT: Копирование имен файлов в TXT, которые содержаться в папке

OFF:

п.с. профи, понимаю, вам забавно, smile поправляйте, если что не так!

Ничуть. Сами подобным же образом учились.

10

Re: CMD/BAT: Копирование имен файлов в TXT, которые содержаться в папке

Он сейчас вообще ничего не создает

@echo off
SetLocal enabledelayedexpansion
set "tt=%~p0"

>>"%tt:~1,-1%".txt echo ---------------
:: Џгвм
set "dr=C:\Documents and Settings\Admin\go"

for /f "delims=*" %%i in ('dir /b/a-d "%dr%\*.*" 2^>nul') do (
>>"%tt:~1,-1%".txt echo %%i   ;
)
>>"%tt:~1,-1%".txt echo ---------------
endlocal
exit

Сначало создавал только имя файла было 1`1 и тп, а потом я чет сделал и он вообще перестал создавать.

Мужик обманул Мужика - Жулик; Купец обманул Купца - Коммерсант; Генерал обманул Генерала - Стратег; Король обманул Короля - Политик. Все зависит от обстоятельств, но обстоятельства делаем мы - люди. Так что дерзайте...

11 (изменено: !k, 2011-12-08 21:15:23)

Re: CMD/BAT: Копирование имен файлов в TXT, которые содержаться в папке

@echo off &setlocal enableextensions &chcp 1251 >nul

set /p "tail=Enter the tail:"
if not "%tail%"=="" set "tail=   %tail%"

for %%d in ("%cd%") do (
  type nul >"%%~nxd.txt"
  for /f "delims=" %%f in ('dir /b/a-d') do if not "%%f"=="%~nx0" if not "%%f"=="%%~nxd.txt" >>"%%~nxd.txt" echo %%f%tail%
)

12

Re: CMD/BAT: Копирование имен файлов в TXT, которые содержаться в папке

Во спасибо большое

Мужик обманул Мужика - Жулик; Купец обманул Купца - Коммерсант; Генерал обманул Генерала - Стратег; Король обманул Короля - Политик. Все зависит от обстоятельств, но обстоятельства делаем мы - люди. Так что дерзайте...

13

Re: CMD/BAT: Копирование имен файлов в TXT, которые содержаться в папке

А нельзя ли модифицировать последний код - чтобы файлы с расширением ТХТ всегда были в низу списка?

Мужик обманул Мужика - Жулик; Купец обманул Купца - Коммерсант; Генерал обманул Генерала - Стратег; Король обманул Короля - Политик. Все зависит от обстоятельств, но обстоятельства делаем мы - люди. Так что дерзайте...

14

Re: CMD/BAT: Копирование имен файлов в TXT, которые содержаться в папке

отсортировать по расширению не устроит?

15

Re: CMD/BAT: Копирование имен файлов в TXT, которые содержаться в папке

Просто он в список добавляет тот же самы TXT - мне конечно не составляет его найти и удалить потом - но люди бывают разные, так и список может быть огромным - ладно у меня файлов 30 - 40, но бывает и 100 и 400.

Мужик обманул Мужика - Жулик; Купец обманул Купца - Коммерсант; Генерал обманул Генерала - Стратег; Король обманул Короля - Политик. Все зависит от обстоятельств, но обстоятельства делаем мы - люди. Так что дерзайте...

16

Re: CMD/BAT: Копирование имен файлов в TXT, которые содержаться в папке

исправлено

17

Re: CMD/BAT: Копирование имен файлов в TXT, которые содержаться в папке

Спасибо огромное - если бы можно было + я бы поставил)))

Мужик обманул Мужика - Жулик; Купец обманул Купца - Коммерсант; Генерал обманул Генерала - Стратег; Король обманул Короля - Политик. Все зависит от обстоятельств, но обстоятельства делаем мы - люди. Так что дерзайте...