Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Поиск файлов в поддиректориях по списку из txt и перемещение

Ответить
Настройки темы
CMD/BAT - [решено] Поиск файлов в поддиректориях по списку из txt и перемещение

Аватара для Sub-Zero

Старожил


Сообщения: 153
Благодарности: 9

Профиль | Сайт | Отправить PM | Цитировать


Приветствую!
Помогите решить задачу. Есть заранее составленный список в текстовом файле вида:
file_1fskldv1.xls
file_vdkyt.doc
file_fsdf.com и так далее.
Нужно пройтись по этому списку и найти в текущей папке, откуда выполняется скрипт, и всех подпапках файлы из списка и переместить их в заданную папку.
Те файлы которые в процессе работы не были найдены - занести в отдельный текстовый файл.
Спасибо!

Отправлено: 03:48, 10-08-2014

 

Пользователь


Сообщения: 112
Благодарности: 1

Профиль | Отправить PM | Цитировать


Цитата Iska:
Никакое. Откройте командную строку, сделайте текущим корневой каталог диска «e:»:
Код: Выделить весь код
cd /d e:\
затем оттуда запускайте пакетный файл, указав полный путь к нему (чтобы не набирать вручную полный путь — можно тупо перетянуть его в окно командной строки из Проводника). »
Вы имеете ввиду Пуск - Выполнить - Командная строка - cd /d e:\ ? Так можно и запутаться (боюсь, сотрется все в С). Я сделал, но ничего не получилось. Может как-то в батнике указать съемный диск Е?

И потом даже в том виде что есть (текстовые оперирующие файлы и файлы для перемещения) этот скрипт не всегда работает - спотыкается при каждом втором запуске. Почему так?

Последний раз редактировалось a_Wizard, 22-03-2017 в 15:24.


Отправлено: 14:29, 22-03-2017 | #11



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Цитата a_Wizard:
Вы имеете ввиду Пуск - Выполнить - Командная строка - cd /d e:\ ? »
Да.

Цитата a_Wizard:
Так можно и запутаться (боюсь, сотрется все в С) »
Начинайте осваивать Far Manager. Там не запутаетесь. И большинство пакетных файлов-однодневок попросту станут не нужны.

Отправлено: 15:52, 22-03-2017 | #12


Пользователь


Сообщения: 112
Благодарности: 1

Профиль | Отправить PM | Цитировать


Iska, но почему Пуск - Выполнить - Командная строка - cd /d e:\ и О.К, при том же оперирующем файле ничегo не выполняет? Чтобы мне было яснее, выложите плиз скриншот вашего черного окна Администратор - Командная строка. Кстати, О.К. надо нажимать сразу после вставки cd /d e:\ или потом?

Последний раз редактировалось a_Wizard, 23-03-2017 в 18:40.


Отправлено: 15:58, 22-03-2017 | #13


Пользователь


Сообщения: 112
Благодарности: 1

Профиль | Отправить PM | Цитировать


Что-то не нравится мне предложенный выше скрипт.
Скрытый текст
@echo off
chcp 1251>nul

set "list=list.txt"
set "folder=С:\Заданная папка"
set "not_found=not_found.txt"

2>nul md "%folder%"
>"%not_found%" (
for /f "usebackq delims=" %%i in ("%list%") do (
for /f "delims=" %%j in ('
"2>nul dir /a-d/b/s "%%i""
') do (
>nul move "%%j" "%folder%"
)
)|| (
echo %%i
)
)

exit /b

Он работает через раз и очень медленно. Даже малюсенькие (в несколько килобайт) файлы перемещает через полминуты. И потом, непонятно, в какой конкретно папке должны находится оперирующие файлы, именно в той откуда хочу переместить искомые, которые не должны находится в подпапках, или операция возможна только с конкретного локального диска?

Последний раз редактировалось a_Wizard, 27-03-2017 в 07:35.


Отправлено: 07:26, 27-03-2017 | #14


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Цитата a_Wizard:
Iska, но почему Пуск - Выполнить - Командная строка - cd /d e:\ и О.К, при том же оперирующем файле ничегo не выполняет? »
Недостаточно исходной информации для осмысленного ответа.

Цитата a_Wizard:
Кстати, О.К. надо нажимать сразу после вставки cd /d e:\ или потом? »
В окне командной строки нет кнопки ОК.

Цитата a_Wizard:
Что-то не нравится мне предложенный выше скрипт. »
Мне тоже. Я категорически не люблю chcp 1251.


Цитата a_Wizard:
И потом, непонятно, в какой конкретно папке должны находится оперирующие файлы, »
Что такое «оперирующие файлы»?

Отправлено: 09:39, 27-03-2017 | #15


Пользователь


Сообщения: 112
Благодарности: 1

Профиль | Отправить PM | Цитировать


Цитата Iska:
И потом, непонятно, в какой конкретно папке должны находится оперирующие файлы, »
Имеются ввиду list(.txt), not_found(.txt) и батник. Если файлы разбросаны по всему компу, то как вести поиск? И вообще, в том виде, что дан скрипт выше, он не работает, можно сказать. Только малюсенькие файлы и то через раз-два перемещает. А большие ни разу не переместил.
В Total Commander есть команда Поиск файлов по списку. Однако это срабатывает если файлы лежат в локальных дисках компа. Со съемным диском ничего не получается. ТС хоть видит его, но не оперирует с ним.

Отправлено: 12:58, 27-03-2017 | #16



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Поиск файлов в поддиректориях по списку из txt и перемещение

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Копирование файлов по списку из файла foma24 Скриптовые языки администрирования Windows 2 30-12-2022 15:35
CMD/BAT - [решено] Перемещение файлов по списку neprotiv Скриптовые языки администрирования Windows 4 24-01-2013 03:06
CMD/BAT - поиск и копирование файлов по списку-маске martyn_80 Скриптовые языки администрирования Windows 1 24-11-2012 14:47
CMD/BAT - [решено] Перемещение файлов по списку в заданные директории 929151 Скриптовые языки администрирования Windows 4 16-11-2012 01:56
CMD/BAT - Перемещение файлов по списку Arsenik77 Скриптовые языки администрирования Windows 4 04-12-2011 20:43




 
Переход