none
move ошибка RRS feed

  • Вопрос

  • Хочу переместить все *exe файлы,находящиеся в поддиреториях Program Files, в директорию test.

    c:/Progam Files/test/>move ..\*\*exe
    Синтаксическая ошибка в имени файла, имени папки или метке тома.


    что я делаю не так?
    9 февраля 2012 г. 19:41

Ответы

  • вот так будет точнее:

    dir ..\ -Recurse -Filter *.exe| ?{!(($_.FullName|Split-Path) -like (Resolve-Path ..\).Path)} |move -ErrorAction SilentlyContinue

    из процесса копировнаия исключены файлы, которые находятся непосредственно в директории directory_01 (копируются только файлы из поддиректорий директории directory_01, но не из самой directory_01)


    my blog: http://shserg.ru/


    • Изменено s.h.s. _ 10 февраля 2012 г. 18:51
    • Помечено в качестве ответа Vasily GusevModerator 21 марта 2012 г. 0:30
    10 февраля 2012 г. 18:51

Все ответы

  • От модератора: Хотелось бы понять вашу основную задачу. Интересующее вас действие, будучи выполненным, причинит серьезный, невосстановимый вред операционной системе, фактически приведет к ее к неработоспособному состоянию.
    9 февраля 2012 г. 20:08
    Модератор
  • ок. давайте так

    Хочу переместить все *exe файлы,находящиеся в поддиреториях directory_01, в директорию  directory_02.

    f:\directory_01\directory_02\>move ..\*\*exe

     =) перефразировал!

    9 февраля 2012 г. 20:22
  • На уровень выше?

    ROBOCOPY f:\directory_01 f:\directory_01\directory_02 *.exe /COPYALL

    10 февраля 2012 г. 10:05
  • $startpath = "C:\directory_01"
    $dest="C:\directory_02"
    $exefiles = Get-ChildItem $startpath -recurse -Filter '*.exe'
    foreach ($exefile in $exefiles) {
    $source = $exefile.directory.fullname
    $file = $exefile.name
    robocopy $source $dest $file /COPYALL /MOVE
    }

    Может так вам надо? Учтите, что все файлы из директорий и поддиректорий папки C:\directory_01 попадут в папку C:\directory_02. Смысл такой задачи совершенно не понятен, ведь многие exe файлы не работают сами по себе, а если еще это всё переносить из Program Files, то не исключено, что следующее сообщение будет "Как вернуть всё назад?".
    10 февраля 2012 г. 10:19
  • Хочу переместить все *exe файлы,находящиеся в поддиреториях directory_01, в директорию  directory_02.

    f:\directory_01\directory_02\>

    Попробуйте так:

    f:\directory_01\directory_02\> move ..\*.exe

    PS невнимательно прочитал условие задачи (не заметил, что речь идет о поддиректориях directory_01, а не о директории directory_01). Работать не будет. 

    Upd. На PoSh можно так:

    dir ..\ -Recurse -Filter *.exe| move -ErrorAction SilentlyContinue


    my blog: http://shserg.ru/






    • Изменено s.h.s. _ 10 февраля 2012 г. 18:32
    10 февраля 2012 г. 18:00
  • вот так будет точнее:

    dir ..\ -Recurse -Filter *.exe| ?{!(($_.FullName|Split-Path) -like (Resolve-Path ..\).Path)} |move -ErrorAction SilentlyContinue

    из процесса копировнаия исключены файлы, которые находятся непосредственно в директории directory_01 (копируются только файлы из поддиректорий директории directory_01, но не из самой directory_01)


    my blog: http://shserg.ru/


    • Изменено s.h.s. _ 10 февраля 2012 г. 18:51
    • Помечено в качестве ответа Vasily GusevModerator 21 марта 2012 г. 0:30
    10 февраля 2012 г. 18:51