Здравствуйте, MTD, Вы писали:
MTD>Здравствуйте, Somescout, Вы писали:
S>>PowerShell ISE. В поставке есть, возможно надо включить в Features.
По умолчанию эта оболочка отключена (зачем она пользователям), чтобы включить заходим в Programs and Features->Features->Powershell->ISE (На память не скажу точный путь)
S>>Шорткаты можно добавить установкой модуля PSReadLine (https://github.com/lzybkr/PSReadLine)
MTD>Это сколько же маны надо курить, чтобы получить то, что уже есть из коробки в Линуксе.
Вы собирались что-то делать в консоли не прочитав ничего о ней? Она мощнее bash'а (и, имхо, проще) но минимальное изучение всё-же требуется.
MTD>Напиши как сделать, я в винде не силен, хочу посмотреть как консолька преобразится.
Alternatively, download the file PSReadline.zip and extract the contents into your C:\Users\[User]\Documents\WindowsPowerShell\modules\PSReadline folder. (You may have to create these directories if they don't exist.)
а дальше
Import-Module PSReadLine
Появляются возможности выделения текста (shift-(left|right)), поиск в истории (ctrl-r), вставка (ctrl-v), раскрашиваются команды. Есть более продвинутые возможности (к примеру автозакрытие кавычек), но я ими не пользовался.
S>>Ок. Нужно удалить 10 гигабайт самых старых файлов:
S>>Вперёд на баше.
MTD>А что сложного? Вот сходу сочинил:
MTD>MTD>find . -type f | ls -tr -b | while read f; do s=`stat "$f" -c "%s"`; ss=$((ss + s)); if ((ss > 10000000000)); then break; fi; rm $f; done
Гм
.
А что "find . -type f | ls -tr -b" делает? Я убираю find, результат не меняется.
Каталоги тоже доходят до rm $f (хотя по это просто покажет ошибку)
Ну и различия с этим кодом довольно очевидны:
$total = 0
ls -File | sort LastWriteTime | ? { ($total+=$_.Length) -lt 10GB } | rm
Вот честно скажите, как вы сами оцениваете тот и другой код?
К примеру, свой вариант я писал в браузере, не заглядывая в доки и он сразу заработал после копирования в PS.
Ваш вариант мне (с моим знанием баша) даже чтобы прочитать пришлось лезть и смотреть параметры ls (остальное, за исключением find, похоже оставшегося по ошибке, понятно — т.к. я знаю что делает код, в противном случае было бы сложнее).
MTD>Но лично я такое не делаю обычно, если нужно что-то больше комбинации 2-3 команд, я беру питончик.
Так о том и речь изначально:
Только вот по сравнению с PowerShell'ом консоль линукса это даже не каменный век, а окаменевшее свидетельство юрского периода. В итоге всё кроме самых примитивных задач несравнимо проще сделать на питоне.
ARI ARI ARI... Arrivederci!