0 / 0 / 0
Регистрация: 14.01.2016
Сообщений: 3
1

Копирование из одной папки в другие по одному случайному файлу

14.01.2016, 14:32. Показов 1170. Ответов 3
Метки нет (Все метки)

дорогие форумчане, необходимо создать батник
что имеется:
1. папка с 50 файлами (*.jpg)
2. локальная сеть из 50 ПК (имена ПК в файле PC.txt каждый с новой строки (в столбик))
необходимо, удалить из папки назначения файл back.jpg, взять случайный файл *.jpg скопировать его переименовав в back.jpg
и так необходимо сделать для каждого ПК, каждому ПК свой случайный файл
заранее спасибо

из темы: Копирование из одной папки в другую случайных неповторяющихся файлов

накопировал 50 раз, но это не вариант ))

Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
@echo off
cls
SetLocal EnableExtensions EnableDelayedExpansion
set "from=d:\1"
set "to=\\compname\C$\1"
set "file_cnt=1"
set "list=%temp%\%~n0"
title [moving %from%\*.jpg %to%\]
 
                :: на всякий случай почистим папку назначения
>nul 2>nul del "%to%\*.jpg"
 
>"%list%" (2>nul dir /a-d/b "%from%\*.jpg"|find /v /n "")&<"%list%" (for /f %%v in ('find /v /c /n ""') do set "cnt=%%v")
if %cnt%==0 echo.files not found&pause&exit /b 1
if %cnt% LSS %file_cnt% echo.num files in source [%cnt%] ^< num files in dest ["%file_cnt%"]&pause&exit /b 2
 
:loop
if %file_cnt%==0 (echo.done^^!&pause&>nul del "%list%"&exit /b 0)
                :: псевдослучайное число см. cyberforum.ru/post3902665.html
set /a "i=%random%%%(cnt)+1"
<"%list%" (for /f "delims=" %%v in ('find "[%i%]" ') do for /f "tokens=2 delims=[]" %%a in ("%%v") do (
           if NOT exist "%to%\%%a" echo.left copy !file_cnt! files...&set /a "file_cnt-=1"&>nul copy /y "%from%\%%a" "%to%/back.jpg"))
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.01.2016, 14:32
Ответы с готовыми решениями:

Копирование TXT-файлов из одной папки и BMP-файлов из другой папки в папку, в которой находится пакетный файл
Доброго времени суток. У кого есть возможность сообразить какой код мне нужет чтобы сделать вот...

Копирование TXT-файлов из одной папки и BMP-файлов из другой папки в папку, в которой находится пакетный файл
Доброго времени суток. У кого есть возможность сообразить какой код мне нужет чтобы сделать вот...

Копирование файлов из одной папки в другую
Добрый день! Нашел на форуме хорошую функцию копирования файлов из одной папки в другую. Но там...

Копирование файлов из одной папки в разные
Здравствуйте. Я с помощью макросов в SolidWorks создал несколько конфигураций одного изделия....

3
708 / 311 / 129
Регистрация: 17.03.2014
Сообщений: 789
14.01.2016, 19:03 2
Цитата Сообщение от roman_u_f Посмотреть сообщение
взять случайный файл *.jpg скопировать его переименовав в back.jpg
правильно я понимаю, что на государственном языке РФ это будет звучать примерно так:
случайный файл *.jpg из папки источника скопировать в папку на удалённом ПК в файл с именем back.jpg
0
3455 / 1993 / 635
Регистрация: 26.02.2014
Сообщений: 1,457
14.01.2016, 19:12 3
Лучший ответ Сообщение было отмечено roman_u_f как решение

Решение

Наш девиз:
Цитата Сообщение от roman_u_f Посмотреть сообщение
каждому ПК -- свой случайный файл
.



Код пакетного файла:

Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
@echo off
 
set "src=D:\1"
set "dest=C$\1\back.jpg"
set "ext=.jpg"
set "list=PC.txt"
 
(
dir/a-d/b "%src%\*%ext%"
)|(
cmd/v/c "for /f "delims=" %%i in ('more') do @echo !random!:%%i"
)|(
set n=-1& for /f "tokens=2 delims=:" %%i in ('sort') do @>nul set/a n+=1& <"%~dp0%list%" 2>nul (
 cmd/v/c "for /f "delims=" %%j in ('more +!n!') do @copy "%src%\%%i" "\\%%j\%dest%"& exit/b")
)
 
exit/b
.

Файл "PC.txt" должен находиться рядом с пакетным файлом.
1
0 / 0 / 0
Регистрация: 14.01.2016
Сообщений: 3
14.01.2016, 21:52  [ТС] 4
ComSpec спасибо огромное!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.01.2016, 21:52
Помогаю со студенческими работами здесь

Копирование файлов из одной папки в другую
Нужно скопировать все файлы из папки С:/zello в папку С:/zello2 Программу с самого начала до конца...

Копирование файлов из одной папки в другую
Привет форумчане нужна помощь. Нужен скрипт который будет копировать с одной папки в другую При...

Копирование содержимого одной папки в другую
Ребята помогите решить одну проблему. Я хочу сделать так, если папки не то создать и скопировать...

копирование картинки из одной папки в другую
Друзья, расскажите как копировать картиночку из одной папки в другую с изменением имени и возможно...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru