Форум программистов, компьютерный форум, киберфорум
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.54/13: Рейтинг темы: голосов - 13, средняя оценка - 4.54
0 / 0 / 0
Регистрация: 05.03.2016
Сообщений: 19
1

Как сравнивать имена файлов?

05.03.2016, 19:57. Просмотров 2667. Ответов 2

Никак не могу понять как сравнивать имена файлов.
Вот само задание: "В каталогах, имена которых заданы первым и вторым параметрами командного файла, найти и вывести на экран имена файлов (расширения могут быть любые), присутствующие как в первом, так и во втором каталоге. Следует использовать только один оператор FOR."
Пытался сделать так:
Windows Batch file
1
2
@ECHO OFF
FOR %%f IN (H:\OS\ E:\) DO if H:\OS\*.*==E:\*.* ECHO %%f>>E:\txt.txt)
Но ничего не делает. Сложность в том, что не особо понимаю как всё это работает
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.03.2016, 19:57
Ответы с готовыми решениями:

Как реализовать переименование файлов в случайные имена?
Есть 100 картинок с именами типа 1.jpg, 2.jpg и т.д. Нужно разом их переименовать в рандомные имена...

Как пакетно отделить имена файлов от пути?
Есть список полных путей файлов в текстовом файле (допустим его зовут List.txt) Типа:...

Переименование PDF-файлов в имена, берущиеся из содержимого этих файлов
Всем доброго времени суток!:) Подскажите, пожалуйста, как переименовать файл с расширением pdf,...

Вернуть пробелы в имена файлов
Добрый день Имеется проблема. Есть папка в которой несколько десятков тысяч файлов все...

2
11 / 10 / 6
Регистрация: 26.10.2013
Сообщений: 72
08.03.2016, 16:02 2
Kosorev,
Windows Batch file
1
2
@echo off
for /f %%i in ('dir /a:-d /b "%~1"') do if exist "%~2\%%i" echo %%i
Здесь %~1 - первый параметр командного файла ("H:\OS" в Вашем примере), а %~2 - второй параметр ("E:").
0
3654 / 1876 / 612
Регистрация: 26.04.2015
Сообщений: 6,214
09.03.2016, 00:55 3
Или так:
Windows Batch file
1
2
3
@echo off
for %%a in ("%~1\*") do dir /a-d /b "%~2" | find "%%~na">nul && echo.%%~na
pause>nul
пример запуска: "name.bat" C:\papka1 C:\papka2
.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.03.2016, 00:55

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Вставить имена файлов в текстовые файлы
Задача - обработать все текстовые файлы в папке. Для каждого файла вставить в него первой строкой...

Циклический запуск программы для файлов в папке, имена файлов в виде параметров для программы
Имеется задача - с помощью bat файла циклически запускать программу convert.exe для всех файлов в...

Вывести имена первых трех .txt файлов
Создать пакетное задание, которое выводит имена первых трех .txt файлов в каталоге. Буду очень...

Вывести в указанный файл имена файлов из указанных директорий
Написал только для одной директории, прошу помочь написать для нескольких echo on dir d:\ > t.txt


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.