#%D0%BE%D0%B1%D0%BE%D0%BB%D0%BE%D1%87%D0%BA%D0%B8

2025-08-07

Книга: «Изучаем скриптинг PowerShell за месяц, занимаясь один час в день. 2-е изд»

Скрипты PowerShell можно писать для автоматизации практически любых административных задач в Windows, Linux и macOS. Эта книга покажет вам как! Всего за 27 коротких уроков, каждый из которых можно выполнить менее чем за час, вы научитесь создавать, тестировать и публиковать скрипты и инструменты, которые помогут сэкономить часы рабочего времени. «Изучаем скриптинг PowerShell за месяц» — практическое руководство по автоматизации PowerShell и созданию инструментов. Этот тщательно переработанный бестселлер, обновленный до последней версии PowerShell, научит вас писать эффективные скрипты, находить и устранять ошибки и организовывать свои инструменты в библиотеки.

habr.com/ru/companies/piter/ar

#powershell #системное_администрирование #powershell_ise #оболочки

2024-10-28

Как научить голосовой помощник Алиса рассказывать отзывы выпускников Яндекс Практикума

Меня зовут Екатерина Александрова, я интернет‑маркетолог, выпускница курса «Интернет‑маркетолог» и «SMM‑продвижение в Телеграмм», и Станислав Козырев — ведущий инженер‑программист, дата‑аналитик и саентист ЦУНБ им. Некрасова, выпускник курса «Специалист по Data Science». Наша команда « Проактивные практики» , состоящая из пяти увлеченных и энергичных участников, проходит обучение в амбассадорской программе Яндекса. Заключительным этапом программы стала выпускная работа.

habr.com/ru/articles/854176/

#Алиса #Pyton #Serverless #голосовые_интерфейсы #микросервисы #облачные_сервисы #оболочки #программирование #социальные_сети_и_сообщества

2024-10-15

Забытые оболочки MS-DOS: Seal GUI

Привет, Хабр! Это Антон Комаров, автор команды спецпроектов в МТС Диджитал. Сейчас прекрасное время для изучения различных цифровых артефактов, оставшихся от эпохи MS-DOS. Один из ключевых факторов — доступность. В «Архиве Интернета» лежат тысячи приложений, которые уже давно не используются по назначению, при этом они интересны для исследователей. Мне нравится находить и тестировать те из них, о которых я до этого никогда даже не слышал. Недавно я писал об оболочках DOS, в комментариях вспомнили Seal GUI. Ее я и исследую сегодня.

habr.com/ru/companies/ru_mts/a

#оболочки #ос #софт #история_it #операционные_системы

2024-09-23

Talisman Desktop и Aston Shell для Windows: почему их сейчас не хватает

Всем привет! Я Антон Комаров из МТС Диджитал. Сегодня поговорим про альтернативные оболочки и кастомизацию внешнего вида ОС в целом. Разработчики интерфейсов стремятся к единообразию и унификации элементов, что в целом разумно и объяснимо. Этот подход позволяет пользователям без проблем переходить на новые версии операционных систем и находить привычные элементы на ожидаемых местах. А значит, людям проще адаптироваться к нововведениям. Я вовсе не против того, чтобы условная Windows 12 выглядела точно так же, как и предыдущие версии ОС от Microsoft. Но я абсолютно против того, что у меня нет простого варианта кастомизировать интерфейс под себя. Почему перестали развиваться альтернативные оболочки, которые раньше полностью решали эту проблему, и какими они были в период «расцвета»? Давайте разбираться.

habr.com/ru/companies/ru_mts/a

#user_interfaces #ui #операционные_системы #софт #оболочки #интерфейс #ос

2024-03-17

[Перевод] Как можно потерять контроль над оболочкой

Пару недель назад я разбирался с поддержкой Language Server в редакторе Zed, пытаясь заставить его, обнаруживать исполняемый файл языкового сервера gopls в $PATH . В случае его присутствия система должна использовать этот файл, а не скачивать новый. Проблема: $PATH часто динамически изменяется такими инструментами, как direnv , asdf , mise и прочими, которые позволяют устанавливать конкретный $PATH в заданном каталоге. (Зачем они это делают? Потому что это даёт вам возможность, например, добавить в начало $PATH путь ./my_custom_binaries , когда вы находитесь в my-cool-project ). В итоге мы не можем просто использовать $PATH , связанный с процессом Zed. Нам нужен $PATH в том виде, в каком он представлен, когда мы переходим с помощью cd в каталог проекта. Легко, подумал я. Нужно просто запустить $SHELL , перейти с помощью cd в проект для активации direnv или аналогичного инструмента, выполнить env , сохранить среду, извлечь $PATH и найти в нём исполняемые файлы. Легко и получилось. Вот часть кода, которая запускает $SHELL , выполняет cd и получает env : fn load_shell_environment(dir: &Path) -> Result<HashMap<String, String>> {
// Получаем $SHELL
let shell = std::env::var("SHELL")?;

// Создаём команду, которую должна выполнить $SHELL
let command = format!("cd {:?}; /usr/bin/env -0;", dir);

// Запускаем $SHELL в качестве интерактивной оболочки (чтобы использовались файлы rc пользователя)
// и выполняем `command`:
let output = std::process::Command::new(&shell)
.args(["-i", "-c", &command])
.output()?;

// [... проверка кода выхода, получение stdout, преобразование stdout в HashMap и так далее. ...]
} За исключением одного: после запуска в терминале экземпляра Zed, который выполнял эту функцию, я больше не смог закрыть Zed нажатием Ctrl-C. Что?

habr.com/ru/companies/ruvds/ar

#ruvds_перевод #shell #оболочки #zsh #linux #программирование #терминал #zed

2024-03-16

[Перевод] Как потерять управление оболочкой… Расследование

Несколько недель назад я хакал языковые сервера в Zed, пытаясь заставить Zed определять, когда заданный бинарник языкового сервера, например gopls , уже присутствует в $PATH . Если так, вместо загрузки нового бинарника Zed должен использовать его. Трудность: часто $PATH динамически изменяется такими инструментами, как direnv , asdf , mise и другими, которые позволяют в данной папке установить определённый $PATH . Почему эти инструменты так делают? Потому что это даёт возможность, скажем, в начале $PATH добавить ./my_custom_binaries , пока вы находитесь в my-cool-project . Поэтому нельзя просто использовать $PATH , связанный с процессом Zed, нужен $PATH , как он есть, когда выполняется cd в каталог проекта. Легко, подумал я. Просто запусти $SHELL , выполни cd в проект, чтобы запустить direnv и всё такое, запусти env , сохрани окружение, выбери $PATH , найди в нём бинарники. И это было легко. Вот часть кода, та часть, которая запускает $SHELL , cd и получает env : fn load_shell_environment(dir: &Path) -> Result<HashMap<String, String>> {
// Получает $SHELL
let shell = std::env::var("SHELL")?;

// Конструирует команду, которую хочется выполнить в $SHELL
let command = format!("cd {:?}; /usr/bin/env -0;", dir);

// Запускает $SHELL как интерактивную оболочку (чтобы использовались файлы пользователя rc).
// и выполняет `command`:
let output = std::process::Command::new(&shell)
.args(["-i", "-c", &command])
.output()?;

// [... проверка кода выхода, получение stdout, превращение stdout в HashMap и т. д. ...]
} За исключением одного: после запуска экземпляра Zed в терминале, который выполнял эту функцию, я больше не мог убить Zed, нажав Ctrl-C . Что?

habr.com/ru/articles/800037/

#zsh #*nix #rust #оболочки #профессиональная_литература

Client Info

Server: https://mastodon.social
Version: 2025.07
Repository: https://github.com/cyevgeniy/lmst