Существует ли собственное решение для Windows 10, позволяющее автоматически загружать файлы в папки в зависимости от типа файла? Например, все файлы, которые являются приложениями, направляются в папку, которая называется программами. Я не уверен, с чего начать, поэтому мне не о чем продолжать.
1 ответ
Я просто собрал этот скрипт PowerShell:
$places = @{txt='?\Documents\TextFiles'; exe='?\Documents\NewApps'}
$userprof = [Environment]::ExpandEnvironmentVariables('%USERPROFILE%')
cd ($userprof + '\Downloads')
Do {
dir -File | % {
If ($_.Extension.Length -gt 0) {
$ext = $_.Extension.Substring(1).ToLowerInvariant()
} Else {
$ext = 'NOEXT'
}
If (-not $places.ContainsKey($ext)) {$ext = 'DEFAULT'}
If ($places.ContainsKey($ext)) {
$dest = $places[$ext].Replace('?', $userprof)
move $_ -Dest $dest
}
}
Start-Sleep -Seconds 5
} While ($true)
Сохраните его как файл .ps1
где-нибудь.
Он предназначен для работы в фоновом режиме, проверяя наличие новых файлов в папке «Загрузки» каждые пять секунд. (Вы можете изменить интервал от второй до последней строки.) Чтобы указать, куда идут файлы, вы можете изменить карту $places
в первой строке. Вопросительный знак будет автоматически заменен путем к папке вашего профиля пользователя. В настоящее время он помещает файлы .txt
в папку с именем TextFiles
в папку «Мои документы», а файлы .exe
в папку с именем NewApps
. Вам нужно будет создать эти папки перед запуском скрипта. Чтобы указать, куда идут файлы без расширений, добавьте запись для NOEXT
. Чтобы указать, куда переходят неизвестные типы файлов, добавьте запись для DEFAULT
.
Прежде чем PowerShell позволит вам запускать сценарии, вам необходимо включить выполнение сценариев. См. Раздел "Включение сценариев" вики-тега PowerShell.
Как только это будет сделано, вы можете настроить обычный пакетный файл для запуска при входе в систему, который запускает этот скрипт. Это должно быть сделано, если вы измените путь в последнем аргументе к полному пути, в котором вы сохранили большой скрипт:
powershell -Command "Start-Process -WindowStyle Hidden -FilePath powershell -ArgumentList 'C:\path\to\your\script.ps1'"
Если вам когда-нибудь понадобится обновить список мест для различных расширений, просто обновите файл сценария. После этого вы можете либо выйти из системы и снова включиться, либо убить и перезапустить фоновый процесс PowerShell.