• Как удалить лишние символы из файла сsv в определенной колонке через PowerShell?

    @MaxKozlov Куратор тега PowerShell
    Вот это звучит очень дико и непонятно
    Если там к примеру $Title пустой а $Department нет, то так и записать пустой Title и проверить $Departme не превышает ли он 50 символов если нет также записать на свое место, если превышает обрезать до 50 символов и записать в файл

    Схема работы у вас переусложнена
    Должно быть типа того
    Import-csv ...... |
      Foreach-Object {
        # Тут обработки, которых я не очень понял
        #   Я просто обрезаю title до 50
        if ($_.Title.Length -gt 50) {
           # Вам явно не хватает присвоения результата remove(),
           #   я сделал по-другому, но суть та же
           $_.Title = $_.Title.Substring(0, 50)
        }
        # вывод объекта дальше по конвейеру
        $_
      } |
      # Тут специально предназначенная для вывода csv команда, а не out-file
      Export-csv .....
    Ответ написан
    7 комментариев
  • Как Удалить папки используя список учеток из csv файла?

    @BeatHazard
    Для решения подобных задач рекомендую использовать Powershell
    Можете воспользоваться скриптом приведенным ниже заменив пути в переменных $csv и $FolderPath на свои
    Перед применением скрипта рекомендую сначала потренироваться на каких-нибудь тестовых папках, чтобы убедиться, что все работает именно так как вам требуется.

    $csv = "C:\temp\logins.csv"
    $FolderPath = "\\домен\public\личные-папки"
    $logins = Import-Csv -Path $csv | Select-Object -ExpandProperty name
    Foreach ($login in $logins)
    {Remove-Item -path "$FolderPath\$login" -Force}
    Ответ написан
    6 комментариев
  • Как Удалить папки используя список учеток из csv файла?

    Evgenym
    @Evgenym
    Решал такую же задачу. Как делал. Брал Powershell, обходил папки, получая инфу о полном пути и владельце, т.к. пользователь мог поменять имя, имя написано не так, как в AD. Сохранял данные в CSV в виде "Полный путь; Учетка владельца". Потом считывал этот CSV и проходил по нему циклом, проверяя каждую учетку на условие блокировки, существования и т.п. Далее, если учетки не было, она была залочена дольше, чем определенный период, переносил папку на отдельный диск и делал запись в лог-файл. После брал перенесенные папки, переносил на обычный винт и клал в шкафчик.
    Ответ написан
    Комментировать