2015-12-22 5 views
0

У меня есть один вкладыш, который запекается в более крупный скрипт для какой-либо криминалистики на высоком уровне. Это просто простая команда copy-item и записывает папку dest и ее содержимое обратно на мой сервер. Код работает отлично, НО даже с переключателями:Powershell: Copy-Item -Recurse -Force не копирует все вспомогательные файлы

-Recurse -Force  

Это не возвращает файл с расширением .dat. Как вы можете догадаться, чего я пытаюсь достичь, мне нужен файл .dat для анализа. Я запускаю это из привилегированного аккаунта. Моя единственная мысль заключалась в том, что это конфликт чтения/записи, и файл хоста в настоящее время использует его (или другой файл sys). Какой переключатель мне не хватает? «Режим» для файла, который не будет копироваться, равен -a ---. Не скрыта, просто не копируется. Предложения в другом месте говорят использовать xCopy/robocopy - если возможно, я не хочу вызывать другую зависимость, я уже использую powershell для большей части скрипта, id предпочитает придерживаться его ... Любые мысли? Спасибо заранее, это щекочут мой мозг немного ...

+0

Есть ли «Копия-элемент C: \ SOURCE \ * C: \ DESTINATION -Recurse -Force -Verbose' не делать то, что вам нужно? – Nate

+0

Ahh okay ... новый интеллект, с вербальным переключателем, он заявляет, что его нельзя скопировать, потому что он используется - вроде того, что я думал ... кто-нибудь знает об этом? как писать копию только для чтения? Я не хочу путешествовать по процессу изучения, если он не нужен - это домен широкий, так что это безумное изменение окружающей среды .... – Charles

+0

Возможно, вы можете Shadow Copy для устаревшей версии. Может быть. Какая ОС? – Nate

ответ

1

Единственный способ скопировать используемый файл - найти запирающий дескриптор, закрыть его, а затем повторить операцию копирования (handle.exe).

С вашего вопроса, похоже, вы пытаетесь удаленно копировать профили пользователей, которые включают в себя ntuser.dat и другие файлы, которые необходимы для правильной работы профиля. Даже если вам удалось найти способ выгрузить файл (ы) dat, вам нужно будет рассмотреть влияние, которое будет иметь на удаленную систему.

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

+0

Я предполагаю, что это касается файлов, зависящих от системы/приложения? Для независимых файлов вы обычно можете читать только чтение, даже если они заблокированы. Думаю, я надеялся на подобное решение. Спасибо за обратную связь - кажется, нет более простого способа - искать, чтобы справиться с охотой. – Charles

+0

, если экземпляр-экземпляр сообщает о сбое в использовании файла, то это может быть какой-то фоновый процесс или служба, которые после его использования не удалили файл ... Я подозреваю, что результат будет таким же, даже с xcopy или robocopy. .. в любом случае это может заставить вас начать с использования 'handle.exe' ... но обратите внимание, что автор разработал сценарий для запуска локально, а не из удаленной системы.' http://jdhitsolutions.com/blog/powershell/3744/friday-fun-find-file-locking-process-with-powershell/' – Kiran

+0

Да, конкретный файл при просмотре - это IE> 8 webcachev **. Dat. Поэтому IE блокирует это, когда пользователь активен, и через 3 минуты после выхода из системы. Я могу использовать copy/invokeWMI (no psexec) для удаленного доступа .ps1. Спасибо за лидерство! – Charles

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

  • Нет связанных вопросов^_^