Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   CMD/BAT -Нужно создать текстовый документ и записать все названия файлов (http://forum.oszone.net/showthread.php?t=355156)

Ilmira 18-04-2024 09:59 3026583

CMD/BAT -Нужно создать текстовый документ и записать все названия файлов
 
Нужно создать текстовый документ и записать все названия файлов в папке
Пример
Файлы названы:
01_test
02_test
нужно записать в текстовом документе:
/fsdfs/fgsdf/01_test
/fsdfs/fgsdf/02_test
Помогите пожалуйста как можно создать батник чтобы выполнял эти функции

NickM 18-04-2024 12:39 3026585

В том числе и из вложенных директорий:
Код:

@echo off
dir %~dp0*.* /b /s /a-d > file.txt


Ilmira 18-04-2024 12:46 3026586

Файл создается, но названия не пишутся
Цитата:

Цитата NickM
В том числе и из вложенных директорий:
Код:
@echo off
dir %~dp0*.* /b /s /a-d > file.txt »


NickM 18-04-2024 12:57 3026587

Так, стоп - Вам нужен листинг директории или требуется сформировать какой-то статический префикс + наименование файла в текущей директории?

Цитата:

Цитата NickM
или требуется сформировать какой-то статический префикс + наименование файла в текущей директории? »

Код:

@echo off
set "prefix=/fsdfs/fgsdf/"
for /f "tokens=* delims=" %%A in ('dir %~dp0*.* /b /a-d') do (
echo.%prefix%%%~nxA >> file.txt
)


Ilmira 18-04-2024 13:17 3026589

Нужно сформировать файл + записать все названия файлов в этот самый файл с припиской
Так он выводит все названия файлов, но нужна приписка к названию спереди
@echo off
chcp 1251
dir /b > file.txt

NickM 18-04-2024 13:26 3026590

Цитата:

Цитата Ilmira
Нужно сформировать файл + записать все названия файлов в этот самый файл с припиской »

В текущем каталоге формируем файл file.txt, в котором будет список файлов текущего каталога с указанием полного пути:
Код:

@echo off
for /f "tokens=* delims=" %%A in ('dir %~dp0*.* /b /a-d') do (
echo.%~dp0%%~nxA >> file.txt
)

С префиксом код предложен в предыдущем сообщении.

Ilmira 18-04-2024 15:52 3026593

Вставил с префиксом но не выводит в файл ни одну информацию
Цитата:

Цитата NickM
@echo off
for /f "tokens=* delims=" %%A in ('dir %~dp0*.* /b /a-d') do (
echo.%~dp0%%~nxA >> file.txt
) »


NickM 18-04-2024 15:59 3026594

Цитата:

Цитата Ilmira
но не выводит в файл ни одну информацию »

Пробелы в путях директорий - это зло:
Код:

@echo off
set "prefix=/fsdfs/fgsdf/"
for /f "tokens=* delims=" %%A in ('dir "%~dp0*.*" /b /a-d') do (
echo.%prefix%%%~nxA >> "%~dp0file.txt"
)


megaloman 19-04-2024 10:34 3026614

Код:

@Echo Off &cls &>nul chcp 1251
        Set "BoxIn=Z:\Box_In"
rem        Set "BoxIn=%~dp0"
        Set "Mask=*.*"
        Set "Prefix=/fsdfs/fgsdf/"

        Set "FileOut=D:\FileReestr.txt"
rem        Set "FileOut=%~dp0FileReestr.txt"

        Pushd "%BoxIn%" || (Echo "%BoxIn%" Not found &Pause &Exit /B 2)

        >"%FileOut%" (For /R %%f In ("%Mask%") Do Echo %Prefix%%%~nxf)
        Popd
pause
Exit /B

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


Время: 09:00.

Время: 09:00.
© OSzone.net 2001-