2014-12-22 2 views
0

Мне нужно переместить 300 изображений из папки (содержащей 800 изображений) в другую папку. Список файлов из этих 300 изображений доступен в формате excel. Можно ли переместить их через программирование вместо поиска файла и переместить его один за другим? Наши ИТ сказали мне, что он не может отделить эти файлы. У вас есть решение? Спасибо заранее!!!Переместить 300 изображений из папки (содержит 800 изображений) в другую на основе списка имен файлов

+0

Существует много форматов excel. Какой из них? XLS? XLSX? CSV? XML? Можете ли вы сохранить список в другом формате? (У меня есть идея, но для этого нужен список в формате CSV.) – SomethingDark

+0

Являются ли изображения в последовательном порядке? Как 300 до 600? Или что-то в этом роде. Если это так, вы можете использовать FOR/L в пакетном скрипте для подсчета. Или, если у вас есть доступ к сопоставленному диску, вы можете сделать это в проводнике Windows примерно в 500 раз быстрее, чем объединить какой-то код, который вы собираетесь использовать только один раз. Для меня это не имеет никакого смысла. – Leptonator

ответ

1

Вот один из способов сделать это - я предполагаю, что вы находитесь в Windows. Сначала сохраните текстовый файл с именем ListOfImages.txt, который содержит имена изображений, которые вы хотите переместить - поместите одно изображение в каждую строку и включите расширение. Затем сохраните следующий текст в файл с именем movefiles.cmd:

@echo off 
set Source=C:\Users\YourName\Desktop\moving\MovingFrom 
set Target=C:\Users\YourName\Desktop\moving\MovingTo 
set FileList=C:\Users\YourName\Desktop\moving\ListOfImages.txt 
echo. 

if not exist "%Source%" echo Source folder "%Source%" not found & goto Exit 
if not exist "%FileList%" echo File list "%FileList%" not found & goto Exit 
if not exist "%Target%" md "%Target%" 

for /F "delims=" %%a in ('type "%FileList%"') do move "%Source%\%%a" "%Target%" 

:Exit 
echo. 
echo press the Space Bar to close this window. 
pause > nul 

Вы хотите изменить переменные для Source, Target и FileList, чтобы соответствовать, где у вас есть те папки и ListOfImages.txt на вашей машине. После того, как вы сохранили этот файл (убедитесь, что он имеет расширение .cmd, вы должны быть в состоянии дважды щелкните на нем, и он будет запускать команды в вашем Command Prompt.

Например, сказать, что мой MovingFrom папка содержит следующие :

MovingFromFolder

и я только хочу, чтобы двигаться Image1.png и Image2.png - тогда мой ListOfImages.txt файл хотел бы это:

ListOfImages.txt File

После запуска moveFiles.cmd (при условии, я изменил необходимые переменные, чтобы указать на правильные папки/места на моей машине), моя папка MovingTo должна содержать:

MovingToFolder

Обратите внимание, что Image2.png было не перемещен, потому что он не был указан в текстовом файле ListOfImages.txt.

Смежные вопросы