Форум OlegON > Компьютеры и Программное обеспечение > Операционные системы и программное обеспечение > Windows

Перемещение директории с диска на диск из консоли : Windows

29.03.2024 1:28


24.11.2012 11:47
OlegON
 
Поскольку в недоОС нельзя сделать move с диска на диск, пришлось мучиться. По старой памяти слил и выполнил команду
Код:
kc C:\DIR G:\DIR mwer
а какие еще варианты? суть в том, чтобы переместить директорию мускула в регулярно запускаемом батнике, учитывая, что мою сессию периодически прибивали. copy/del не подходило, даже просто copy (поскольку базу бы кто-то мог запустить и она бы перетиралась бы старой копией).
24.11.2012 13:09
twix
 
A ren не работает между разделами?

В никсах-то без проблем рекурсивно перетащить директорию с одной точки маунта на другую... А вот в форточках приходится помаятся. Хотя, я уверен, в PowerShell есть необходимые инструменты.
24.11.2012 17:16
student
 
vbs - каталог с подкаталогами

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder("откуда")
Set colSubfolders = objFolder.Subfolders
For Each objSubfolder in colSubfolders
objFSO.MoveFolder "откуда"+objSubfolder.Name , "куда"
Next

сюда еще при необходимости можно кучу еще каких действий/проверок вставить (например переименование источника чтобы точно никто не сунулся и возврат имени взад по окончании)
24.11.2012 18:10
OlegON
 
student, а что будет, если файл уже есть в директории? а если ребутнуть по ходу дела? извини, попробовать негде.
24.11.2012 19:16
student
 
Цитата:
OlegON student, а что будет, если файл уже есть в директории? а если ребутнуть по ходу дела? извини, попробовать негде.
а ничего не будет - сначала поставь очистку каталога приемника перед перемещением чтобы наверняка было :) сие в принципе можно и без вбс - просто в батнике - сначала очистка приемника, потом переименование источника, чтобы его никто не тронул, затем копирование и удаление источника. . .

после ребута повторить с учетом того что файл\каталог м.б. переименован - или просто тупо копировать переименованное, переименовывать и удалять все - аналогично и в приемнике - в принципе проблем быть не должно - пара лишних команд в батнике. . .

ps
можно допонительно заюзать пустой файлик как флаг операции - пока он есть - ничего не кончено
24.11.2012 19:56
OlegON
 
Эээ, что-то я не понял.
Файлы а, б, в
move а, б - ребут, потом что? они перенеслись в приемник и в исходном их нет?
Вариант с тем, чтобы каждый раз копировать их не пойдет. Там 80Гб, а сервер - полное го очень медленный, копирование все еще идет с учетом того, что некоторые странные люди несколько раз его ребутили. Алгоритм необходим именно с поддержкой доливки, что kc делает. Ну на крайний случай - перетирать только имеющийся файл и удалять сразу после переноса. Никак не все имеющееся чистить.
24.11.2012 20:24
student
 
Цитата:
OlegON Алгоритм необходим именно с поддержкой доливки, что kc делает. Ну на крайний случай - перетирать только имеющийся файл и удалять сразу после переноса. Никак не все имеющееся чистить.
а про доливку в первом посте ничего и не было сказано, либо я настолько . . . что не увидел очевидного :)
насчет чистить - просто

как вариант для стабильной работы переместителя минимальными (не сторонними) средствами - никто тебе 100% полностью удовлетворяющего тебя решения кроме тебя самого самого не предложит. . .

ps
а 80гб и при плохом канале я бы сначала заархивировал по кусочкам и циклом перемещал. . .
24.11.2012 20:43
OlegON
 
там не канал, там с винта на винт копируется и, кажется, задача разрешилась, просто винт сдох.
на самом деле move /y и есть решение, кабы оно работало...
Часовой пояс GMT +3, время: 01:28.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.