Re[8]: Hello UNIX!
От: Somescout  
Дата: 23.08.15 17:41
Оценка:
Здравствуйте, MTD, Вы писали:

MTD>Здравствуйте, Somescout, Вы писали:


S>>Так давно уже.


MTD>Дано: Win 7 SP 1, MS VS 2013. Power Shell мышеой не ресайзится, копирование-вставка через стандартные шорткаты не работают. Что я делаю не так?

PowerShell ISE. В поставке есть, возможно надо включить в Features. Это среда для редактирования и отладки скриптов на PS. Кстати, а как там в баше с отладкой?
Шорткаты можно добавить установкой модуля PSReadLine (https://github.com/lzybkr/PSReadLine)

S>>Что забавно, все ваши требования к консоли суть требования к gui.

MTD>Не только gui — копирование и вставка частые операции. Впрочем юзабилити там хромает везде, например, в bash поиск по истории команд интуитивно понятен и прост — ctr+r и набирать любую часть ранее введенной команды, в PS же как обычно хрен пойми как.
PSReadLine.

MTD>>> Всегда балдею когда советуют люди в глаза предмета не видевшие

MTD>Ага, неплохо бы попробовать Unix перед тем как заливать про мегаудобство PowerShell.
MTD>Если ты будешь спорить, что знаком с предметом, то приведи пару примеров, что в PowerShell сделать проще, чем в bash.
Ок. Нужно удалить 10 гигабайт самых старых файлов:
$total = 0
ls -File | sort LastWriteTime | ? { ($total+=$_.Length) -lt 10GB } | rm

Вперёд на баше.

Это из головы, писал подобное, но этот скрипт написан прямо в браузере без проверки, возможны мелкие ошибки.
Нужно отключить пользователей из списка в AD, проблема в том, что могут имена могут быть не в том падеже.
Берём список имён из файла, заменяем последние два символа в словах на *, если записано не в том падеже, ищем, выводим список, выбранных из него отключаем.
$userList = gc user_list.txt

$userList | % {
  # Замену может и можно сделать на регулярных выражениях
  # но я не хочу сейчас искать как изсключить два последних символа из группы
  $nameParts = $_ -split '\s+' | % { "$($_.SubString(0, $_.Length-2))*"} 
  $nameMask = $nameParts -join ' '
  Get-AdUser -Filter {cn -like $nameMask}
} | Out-GridView -OutputMode Multiple | % {
  Set-AdUser $_ -Enabled:$false
}
ARI ARI ARI... Arrivederci!
Отредактировано 23.08.2015 17:54 Somescout . Предыдущая версия . Еще …
Отредактировано 23.08.2015 17:53 Somescout . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.