|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - Сортировка файлов по папкам |
|
PowerShell - Сортировка файлов по папкам
|
Пользователь Сообщения: 94 |
Скриптовые языки администрирования Windows
Уважаемый пользователи портала, -Возникла потребность распределения огромного количества файлов ,например по 80 штук,в папки(будет много папок по 80 файлов в каждой ) -Был найден скрипт,по аналогичной теме форума*, и подставлен код его в powershell 2.0(ctrl+v) -Ничего не произошло,к сожалению(не знаю почему) -Хочется решить проблему без сторонних программ,автоматически -Язык-любой,который не потребует сторонних программных продуктов Скрипт-сценарий
*Вот : Любой язык - [решено
]Распределение файлов в каталогеhttp://forum.oszone.net/thread-259461.html
|
|
Отправлено: 10:33, 12-09-2016 |
Старожил Сообщения: 169
|
Профиль | Отправить PM | Цитировать Используй вот этот скрипт:
$Path = "d:\test\in" $dest = "d:\test\out" $prefix = 0 $counter = 1 $split = 5 $files = Get-ChildItem $Path -Recurse -include *.txt | ? {!$_.PSIsContainer} $fcount = $files.count $step = $split - 1 while(Test-Path "$dest\$counter") { $counter++ } while($prefix -lt $fcount) { $files[$prefix..$step] | copy-Item -Destination { $folder = "$dest\$counter" md $folder -Force | Out-Null $fpath = Join-Path $folder $_.Name $i = 1 while($true) { if (Test-Path $fpath) { $fpath = "{0}\{1}_{2}{3}" -f $folder,$_.basename,$i,$_.extension $i++ } else { $fpath break } } } $prefix = $step + 1 $step += $split $counter++ } Set-ExecutionPolicy Unrestricted и разреши выполнение скриптов на данной машине. Укажите свой тип файлов и их количество. Копирование можно заменить на перенос move-Item |
Последний раз редактировалось dark-------13, 12-09-2016 в 13:11. Отправлено: 12:16, 12-09-2016 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 94
|
Профиль | Отправить PM | Цитировать Уточнение,
1)Если я хочу запустить сортировку в одной корневой папке ,то: можно этого не писать: $Path = "d:\test\in" $dest = "d:\test\out" Можно ли так: $source = "F:\677" 2) Что это такое,где число n($n = 80)? $split = 5[/i] (разделить,расщепить по 5 штук в папке?) |
Последний раз редактировалось victor21043, 15-09-2016 в 09:59. Отправлено: 23:17, 12-09-2016 | #3 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
[решено] Сортировка входящих по папкам gmail | jorikello | Хочу все знать | 1 | 30-12-2015 16:48 | |
Любой язык - Сортировка файлов по имени. | Extazik | Скриптовые языки администрирования Windows | 12 | 24-09-2015 23:26 | |
Интерфейс - [решено] Автоматическая сортировка файлов по папкам | kako12 | Microsoft Windows 8 и 8.1 | 8 | 08-06-2013 21:07 | |
CMD/BAT - сортировка файлов по папкам по дате в названии | insearches | Скриптовые языки администрирования Windows | 1 | 03-02-2013 17:03 | |
CMD/BAT - Сортировка файлов по расширению | cyber_ua | Скриптовые языки администрирования Windows | 9 | 07-10-2012 23:16 |
|