Шпаргалка по PowerShell / Краткий справочник
https://gist.github.com/pcgeek86/336e08d1a09e3dd1a8f0a30a9fe61c8a
https://gist.github.com/pcgeek86/336e08d1a09e3dd1a8f0a30a9fe61c8a
❤2
Сохраняем вывод команды Top в файл
Поскольку я не использовал опцию delay, приведенная ниже команда top перенаправит вывод команды top за одну итерацию в файл.
Сохранение вывода команды top с более чем одной итерацией из 5 итераций
Обычно программа работает непрерывно с задержкой в 2 секунды, и вы можете изменить это значение, добавив в верхнюю команду значение ‘-d’, как показано ниже:
Как захватить вывод команды top в файл каждые 5 минут в течение часа
Система создает отдельный файл каждые 5 минут, который поможет вам определить список процессов, которые потребляли больше CPU и памяти в системе.
Добавляем следующий cronjob, который будет выполняться с 5 до 6 утра каждые 5 минут в течение часа.
Где
-n : Задает максимальное количество итераций.
-b : Работа в пакетном режиме (Запуск команды top в пакетном режиме для перенаправления вывода в другие программы или в файл)
-d : Интервал задержки (Задает задержку между обновлениями экрана)
Собираем вывод в один файл, используйте следующий cronjob
Cronjob будет выполняться с 9 до 10 утра каждые 5 минут в течение часа и добавлять результаты в один файл.
Записываем вывод команды top в файл каждые 5 минут в течение получаса
Добавляем следующий cronjob, который будет запускаться каждые 5 минут с 13:30 до 14:00 в течение получаса.
Поскольку я не использовал опцию delay, приведенная ниже команда top перенаправит вывод команды top за одну итерацию в файл.
top -b -n 1 > /home/i_odmin/backup/output.txtСохранение вывода команды top с более чем одной итерацией из 5 итераций
Обычно программа работает непрерывно с задержкой в 2 секунды, и вы можете изменить это значение, добавив в верхнюю команду значение ‘-d’, как показано ниже:
top -n 5 -d 4 -b >/backup/output_1.txtКак захватить вывод команды top в файл каждые 5 минут в течение часа
Система создает отдельный файл каждые 5 минут, который поможет вам определить список процессов, которые потребляли больше CPU и памяти в системе.
Добавляем следующий cronjob, который будет выполняться с 5 до 6 утра каждые 5 минут в течение часа.
Где
-n : Задает максимальное количество итераций.
-b : Работа в пакетном режиме (Запуск команды top в пакетном режиме для перенаправления вывода в другие программы или в файл)
-d : Интервал задержки (Задает задержку между обновлениями экрана)
0-59/5 5 * * * top -n 10 -d 4 -b > /home/i_odmin/backup/top_out-`date +\%Y\%m\%d\%H\%M\%S`.txtСобираем вывод в один файл, используйте следующий cronjob
Cronjob будет выполняться с 9 до 10 утра каждые 5 минут в течение часа и добавлять результаты в один файл.
0-59/5 9 * * * top -b -n5 -d 5 >>/home/i_odmin/backup/output.txtЗаписываем вывод команды top в файл каждые 5 минут в течение получаса
Добавляем следующий cronjob, который будет запускаться каждые 5 минут с 13:30 до 14:00 в течение получаса.
30-59/5 13 * * * top -n 10 -d 4 -b > /home/i_odmin/backup/top_out-`date +\%Y\%m\%d\%H\%M\%S`.txt❤2👍1
❗️Большая база заметок о командах PowerShell на русском языке
Help, Object, Regex, DataType, Bit, Files, Credential, WinEvent, Firewall, Defender, WindowsUpdate, DISM, Scheduled, Network, Shutdown, LocalAccounts, SMB, ActiveDirectory, repadmin, dcdiag, ntdsutil, GPO, ServerManager, DNS, DHCP, DFS, StorageReplica, Package-Manager, PS2EXE, NSSM, Jobs, SMTP, Hyper-V, VMWare/PowerCLI, Exchange/EMShell, TrueNAS, Veeam, REST API, Telegram, Pode, Selenium, IE, COM, dotNET, Console API, Drawing, ObjectEvent, Sockets, Excel, CSV, XML, JSON, YAML, HTML, SQLite, MySQL, MSSQL, InfluxDB, Telegraf, Elasticsearch, CData, ODBC, PostgreSQL, WMI, Regedit, Performance, SNMP, Zabbix, pki, OpenSSL, OpenVPN, Route, NAT, WireGuard, VpnClient, Proxy, OpenSSH, WinRM, DSC, Git, Ansible.
https://github.com/Lifailon/PS-Commands
Help, Object, Regex, DataType, Bit, Files, Credential, WinEvent, Firewall, Defender, WindowsUpdate, DISM, Scheduled, Network, Shutdown, LocalAccounts, SMB, ActiveDirectory, repadmin, dcdiag, ntdsutil, GPO, ServerManager, DNS, DHCP, DFS, StorageReplica, Package-Manager, PS2EXE, NSSM, Jobs, SMTP, Hyper-V, VMWare/PowerCLI, Exchange/EMShell, TrueNAS, Veeam, REST API, Telegram, Pode, Selenium, IE, COM, dotNET, Console API, Drawing, ObjectEvent, Sockets, Excel, CSV, XML, JSON, YAML, HTML, SQLite, MySQL, MSSQL, InfluxDB, Telegraf, Elasticsearch, CData, ODBC, PostgreSQL, WMI, Regedit, Performance, SNMP, Zabbix, pki, OpenSSL, OpenVPN, Route, NAT, WireGuard, VpnClient, Proxy, OpenSSH, WinRM, DSC, Git, Ansible.
https://github.com/Lifailon/PS-Commands
👍2❤1🔥1
📌 Bash скрипт для поиска больших файлов и уведомление админа
1. Находит файлы больше заданного порога (в мегабайтах).
2. Генерирует отчёт и отправляет уведомление администратору (например, на почту или в лог).
• Скрипт:
• Описание работы
1. THRESHOLD — порог размера в мегабайтах, выше которого файл считается «большим».
2. DIR — директория, где ищем большие файлы (по умолчанию
3. Команда
▪️
▪️
▪️
4. Результат пишется в временный файл
5. Проверка
▪️ Если отчёт непустой (
▪️ В противном случае выводим сообщение об отсутствии «тяжёлых» файлов.
6. Логируем факт запуска в
• Дополнительные улучшения
▪️ Регулярные выражения: можно искать по шаблону, например, только логи с ротацией:
Здесь
▪️ Cron-задача: чтобы проверять раз в день, добавьте в
Это запустит скрипт каждый день в 8:00 утра и сразу уведомит вас, если что-то «не так».
1. Находит файлы больше заданного порога (в мегабайтах).
2. Генерирует отчёт и отправляет уведомление администратору (например, на почту или в лог).
• Скрипт:
check_large_files.sh
#!/usr/bin/env bash
# --------------------------------------------
# Скрипт для поиска «тяжёлых» файлов и уведомления
# Автор @i_odmin_book
# --------------------------------------------
# Порог размера в мегабайтах (можно изменить по-своему)
THRESHOLD=100
# Директория для сканирования (можно указать любую)
DIR="/var/log"
# Файл для временного отчёта
REPORT="/tmp/large_files_$(date +%Y%m%d_%H%M%S).txt"
# Адрес почты администратора (пример)
ADMIN_EMAIL="[email protected]"
# Найти файлы больше порога и сохранить в отчёт
echo -e "🔎 Поиск файлов > ${THRESHOLD}M в директории: ${DIR}\n" > "$REPORT"
find "$DIR" -type f -size +"${THRESHOLD}"M -printf "%p (%s bytes)\n" >> "$REPORT"
# Если отчёт не пустой, отправляем уведомление
if [[ -s "$REPORT" ]]; then
echo -e "📬 Отправляем отчёт администратору: ${ADMIN_EMAIL}"
mail -s "Отчёт: большие файлы на $(hostname)" "$ADMIN_EMAIL" < "$REPORT"
else
echo "✅ Файлов больше ${THRESHOLD}M не найдено."
fi
# Дополнительно: можно логировать в файл
LOGFILE="/var/log/check_large_files.log"
echo "$(date +'%Y-%m-%d %H:%M:%S') - Проверка завершена. Отчёт: $REPORT" >> "$LOGFILE"
• Описание работы
1. THRESHOLD — порог размера в мегабайтах, выше которого файл считается «большим».
2. DIR — директория, где ищем большие файлы (по умолчанию
/var/log, но можно изменить).3. Команда
find "$DIR" -type f -size +"${THRESHOLD}"M -printf "%p (%s bytes)\n":▪️
-type f — только файлы.▪️
-size +<число>M — размер больше заданного числа мегабайт.▪️
-printf "%p (%s bytes)\n" — выводим полный путь и точный размер в байтах.4. Результат пишется в временный файл
${REPORT}.5. Проверка
if [[ -s "$REPORT" ]]; then … fi:▪️ Если отчёт непустой (
-s), отправляем его на почту с помощью mail (или любую другую команду уведомления).▪️ В противном случае выводим сообщение об отсутствии «тяжёлых» файлов.
6. Логируем факт запуска в
/var/log/check_large_files.log.• Дополнительные улучшения
▪️ Регулярные выражения: можно искать по шаблону, например, только логи с ротацией:
find "$DIR" -regextype posix-extended -regex ".*/.*\.log\.[0-9]+" -size +"${THRESHOLD}"M -printf "%p (%s bytes)\n"
Здесь
-regex найдёт файлы вроде syslog.1, auth.log.2, и игнорирует обычные *.log.▪️ Cron-задача: чтобы проверять раз в день, добавьте в
crontab -e:
0 8 * * * /usr/local/bin/check_large_files.sh
Это запустит скрипт каждый день в 8:00 утра и сразу уведомит вас, если что-то «не так».
❤4👍1🔥1
Pipeline инфраструктуры (Infra Pipeline)
Этот workflow описывает сквозной CI/CD-pipeline для сборки и деплоя инфраструктуры, включая quality gates (детекторы и оценку рисков).
Ветвление (Branching)
Рекомендуется создавать короткоживущие feature-ветки (локальные копии основной ветки trunk/main). В них выполняются изолированные изменения. На локальную ветку нет жёстких ограничений, но вы как разработчик обязаны регулярно синхронизировать её с основной (через rebase или merge), чтобы избежать merge conflicts.
Основная ветка (mainline/trunk)
Mainline (или trunk) служит для сборки и публикации deployable артефактов. Любой merge в неё может автоматически попасть в staging или production. Поэтому ветка должна быть постоянно в deployable-состоянии. Для этого в CI/CD pipeline настраиваются quality gates: статический анализ кода, unit- и интеграционные тесты, security scans, оценка рисков . Trunk остаётся locked до прохождения всех проверок и подтверждения безопасности изменения.
https://medium.com/@tusharmurudkar/devops-infrastructure-pipeline-beab47e7b876
Этот workflow описывает сквозной CI/CD-pipeline для сборки и деплоя инфраструктуры, включая quality gates (детекторы и оценку рисков).
Ветвление (Branching)
Рекомендуется создавать короткоживущие feature-ветки (локальные копии основной ветки trunk/main). В них выполняются изолированные изменения. На локальную ветку нет жёстких ограничений, но вы как разработчик обязаны регулярно синхронизировать её с основной (через rebase или merge), чтобы избежать merge conflicts.
Основная ветка (mainline/trunk)
Mainline (или trunk) служит для сборки и публикации deployable артефактов. Любой merge в неё может автоматически попасть в staging или production. Поэтому ветка должна быть постоянно в deployable-состоянии. Для этого в CI/CD pipeline настраиваются quality gates: статический анализ кода, unit- и интеграционные тесты, security scans, оценка рисков . Trunk остаётся locked до прохождения всех проверок и подтверждения безопасности изменения.
https://medium.com/@tusharmurudkar/devops-infrastructure-pipeline-beab47e7b876
❤3👍2🔥1
Prometheus и его хранилище: Архитектура, проблемы и решения
Эта серия из двух статей посвящена мониторингу. В первой части рассказывается о накоплении множества различных показателей в одном месте, обработке разрешений для различных аспектов этих показателей и хранении больших объемов данных. Во второй части мы сосредоточимся на выборе систем мониторинга, основываясь на кратком примере «путешествия» вымышленной компании в борьбе с постоянным расширением системы мониторинга и ростом инфраструктуры.
https://blog.palark.com/prometheus-architecture-tsdb/
Эта серия из двух статей посвящена мониторингу. В первой части рассказывается о накоплении множества различных показателей в одном месте, обработке разрешений для различных аспектов этих показателей и хранении больших объемов данных. Во второй части мы сосредоточимся на выборе систем мониторинга, основываясь на кратком примере «путешествия» вымышленной компании в борьбе с постоянным расширением системы мониторинга и ростом инфраструктуры.
https://blog.palark.com/prometheus-architecture-tsdb/
❤3👍2
📌 10 полезных функций Far Manager
1. Режимы отображения
Меняйте ширину и количество столбцов на активной панели интерфейса, в которых отображаются файлы и папки.
2. Сортировка элементов
Сортируйте файлы и папки на активной панели интерфейса.
3. Просмотр размера файлов и папок
Просматривайте размер выделенного файла или папки с помощью клавиши F3. Значение отображается в столбце Size или в нижней части активной панели — в зависимости от выбранного вида.
Чтобы выделить один элемент, нажмите Shift и стрелку вниз или вверх на клавиатуре. Для массового выделения используйте Shift со стрелками вправо и влево.
4. Одновременная работа с элементами, которые находятся в разных папках
Добавляйте файлы и папки из разных каталогов на «Временную панель», если вам нужно работать со всеми ними одновременно. Это позволит вам выполнять с элементами групповые операции так, будто они находятся в одном каталоге. При этом их реальное местоположение не изменится.
Чтобы открыть «Временную панель», нажмите F11 и выберите Temporary Panel. Для добавления файлов и папок просто перетащите их на неё с помощью курсора мыши. Вы также можете найти нужные файлы через комбинацию
5. Фильтрация файлов по типу
Фильтруйте список файлов по расширению, чтобы временно скрывать с панели лишние элементы. Чтобы включить фильтр, воспользуйтесь комбинацией
6. Просмотр списка процессов
Просматривайте список активных процессов прямо в окне Far Manager. Чтобы просмотреть его, откройте окно выбора диска (
7. Навигация по папкам
Вы можете быстро открывать корневую папку локального диска с помощью комбинации
8. Сравнение идентичности папок
Если захотите проверить две папки на предмет их идентичности, откройте одну из них на левой панели, а вторую на правой. Затем нажмите F11 и выберите Advanced Compare. В открывшемся окне укажите параметры сравнения и нажмите ОК. Программа отобразит размеры обеих папок и подсветит их файлы, которые не совпадают.
9. Запись макросов
Используйте макросы, чтобы автоматизировать рутинные операции с программой.
Чтобы создать макрос, нажмите
К примеру, во время создания макроса можно кликнуть правой кнопкой по файлу и выбрать в контекстном меню «Свойства», а после назначить эти действия на клавишу J. После этого вы сможете быстро вызывать свойства файлов с помощью J.
1. Режимы отображения
Меняйте ширину и количество столбцов на активной панели интерфейса, в которых отображаются файлы и папки.
Ctrl + 1 — установить краткий режим просмотра (три узких столбца).Ctrl + 2 — установить стандартный режим просмотра (два средних столбца).Ctrl + 3 — установить полный режим просмотра (один широкий и три узких столбца со служебной информацией).Ctrl + 4 — установить широкий режим просмотра (один широкий и один узкий столбец со служебной информацией).Ctrl + 5 — установить детальный режим просмотра (один максимально широкий и ещё несколько дополнительных стоблцов со служебной информацией — занимают всё окно программы).2. Сортировка элементов
Сортируйте файлы и папки на активной панели интерфейса.
Ctrl + F3 — сортировать по имени элемента.Ctrl + F4 — сортировать по типу расширения.Ctrl + F5 — сортировать по дате изменения.Ctrl + F6 — сортировать по размеру.Ctrl + F8 — сортировать по дате создания.Ctrl + F12 — вывести меню элементов сортировки.3. Просмотр размера файлов и папок
Просматривайте размер выделенного файла или папки с помощью клавиши F3. Значение отображается в столбце Size или в нижней части активной панели — в зависимости от выбранного вида.
Чтобы выделить один элемент, нажмите Shift и стрелку вниз или вверх на клавиатуре. Для массового выделения используйте Shift со стрелками вправо и влево.
4. Одновременная работа с элементами, которые находятся в разных папках
Добавляйте файлы и папки из разных каталогов на «Временную панель», если вам нужно работать со всеми ними одновременно. Это позволит вам выполнять с элементами групповые операции так, будто они находятся в одном каталоге. При этом их реальное местоположение не изменится.
Чтобы открыть «Временную панель», нажмите F11 и выберите Temporary Panel. Для добавления файлов и папок просто перетащите их на неё с помощью курсора мыши. Вы также можете найти нужные файлы через комбинацию
Alt + F7 и добавить результаты поиска на «Временную панель», кликнув Panel в поисковом окне.5. Фильтрация файлов по типу
Фильтруйте список файлов по расширению, чтобы временно скрывать с панели лишние элементы. Чтобы включить фильтр, воспользуйтесь комбинацией
CTRL + I, в появившемся списке выделите нужное расширение и нажмите пробел. Возле выбранного типа файлов появится плюс. Когда нажмёте Enter, файлы с другими расширениями исчезнут с текущей панели. Чтобы отменить фильтрацию, снова нажмите CTRL + I и уберите плюс с помощью пробела.6. Просмотр списка процессов
Просматривайте список активных процессов прямо в окне Far Manager. Чтобы просмотреть его, откройте окно выбора диска (
ALT + F1/F2) и нажмите 0. В этом списке можно отсортировать процессы по размеру, нажав CTRL + F6. Чтобы удалить процесс, выделите его и нажмите F8. Чтобы просмотреть детальную информацию о процессе, используйте клавишу F3.7. Навигация по папкам
Вы можете быстро открывать корневую папку локального диска с помощью комбинации
CTRL + \. Клавиши ALT + F12 — отображают папки, которые вы открывали ранее8. Сравнение идентичности папок
Если захотите проверить две папки на предмет их идентичности, откройте одну из них на левой панели, а вторую на правой. Затем нажмите F11 и выберите Advanced Compare. В открывшемся окне укажите параметры сравнения и нажмите ОК. Программа отобразит размеры обеих папок и подсветит их файлы, которые не совпадают.
9. Запись макросов
Используйте макросы, чтобы автоматизировать рутинные операции с программой.
Чтобы создать макрос, нажмите
Shift + Ctrl + «.» (точка) и совершите несколько действий в Far. Затем снова воспользуйтесь этой комбинацией и в открывшемся окне выберите удобную клавишу. Теперь по её нажатию программа будет выполнять эти действия автоматически.К примеру, во время создания макроса можно кликнуть правой кнопкой по файлу и выбрать в контекстном меню «Свойства», а после назначить эти действия на клавишу J. После этого вы сможете быстро вызывать свойства файлов с помощью J.
❤1
Сохраняем вывод команды Top в файл
Поскольку я не использовал опцию delay, приведенная ниже команда top перенаправит вывод команды top за одну итерацию в файл.
Сохранение вывода команды top с более чем одной итерацией из 5 итераций
Обычно программа работает непрерывно с задержкой в 2 секунды, и вы можете изменить это значение, добавив в верхнюю команду значение ‘-d’, как показано ниже:
Как захватить вывод команды top в файл каждые 5 минут в течение часа
Система создает отдельный файл каждые 5 минут, который поможет вам определить список процессов, которые потребляли больше CPU и памяти в системе.
Добавляем следующий cronjob, который будет выполняться с 5 до 6 утра каждые 5 минут в течение часа.
Где
-n : Задает максимальное количество итераций.
-b : Работа в пакетном режиме (Запуск команды top в пакетном режиме для перенаправления вывода в другие программы или в файл)
-d : Интервал задержки (Задает задержку между обновлениями экрана)
Собираем вывод в один файл, используйте следующий cronjob
Cronjob будет выполняться с 9 до 10 утра каждые 5 минут в течение часа и добавлять результаты в один файл.
Записываем вывод команды top в файл каждые 5 минут в течение получаса
Добавляем следующий cronjob, который будет запускаться каждые 5 минут с 13:30 до 14:00 в течение получаса.
Поскольку я не использовал опцию delay, приведенная ниже команда top перенаправит вывод команды top за одну итерацию в файл.
top -b -n 1 > /home/i_odmin/backup/output.txtСохранение вывода команды top с более чем одной итерацией из 5 итераций
Обычно программа работает непрерывно с задержкой в 2 секунды, и вы можете изменить это значение, добавив в верхнюю команду значение ‘-d’, как показано ниже:
top -n 5 -d 4 -b >/backup/output_1.txtКак захватить вывод команды top в файл каждые 5 минут в течение часа
Система создает отдельный файл каждые 5 минут, который поможет вам определить список процессов, которые потребляли больше CPU и памяти в системе.
Добавляем следующий cronjob, который будет выполняться с 5 до 6 утра каждые 5 минут в течение часа.
Где
-n : Задает максимальное количество итераций.
-b : Работа в пакетном режиме (Запуск команды top в пакетном режиме для перенаправления вывода в другие программы или в файл)
-d : Интервал задержки (Задает задержку между обновлениями экрана)
0-59/5 5 * * * top -n 10 -d 4 -b > /home/i_odmin/backup/top_out-`date +\%Y\%m\%d\%H\%M\%S`.txtСобираем вывод в один файл, используйте следующий cronjob
Cronjob будет выполняться с 9 до 10 утра каждые 5 минут в течение часа и добавлять результаты в один файл.
0-59/5 9 * * * top -b -n5 -d 5 >>/home/i_odmin/backup/output.txtЗаписываем вывод команды top в файл каждые 5 минут в течение получаса
Добавляем следующий cronjob, который будет запускаться каждые 5 минут с 13:30 до 14:00 в течение получаса.
30-59/5 13 * * * top -n 10 -d 4 -b > /home/i_odmin/backup/top_out-`date +\%Y\%m\%d\%H\%M\%S`.txt❤1
Полезные Bash-скрипты для повседневных задач
Ниже — два скрипта, которые могут сэкономить тебе время и нервы.
Перемещение директории
Переименование файла
Ниже — два скрипта, которые могут сэкономить тебе время и нервы.
Перемещение директории
#!/bin/bash
# Проверка существования директории-источника
if [ ! -d "$1" ]; then
echo "$1 doesn't exist"
exit 1
fi
# Проверка существования директории-назначения
if [ ! -d "$2" ]; then
echo "$2 doesn't exist"
exit 1
fi
# Копирование и удаление исходной директории
if cp -r "$1" "$2" && rm -r "$1"; then
echo "Dir $1 was moved to dir $2 successfully"
exit 0
else
echo "Something went wrong"
exit 1
fi
Переименование файла
#!/bin/bash
# Проверка количества аргументов
if [ $# -ne 2 ]; then
echo "2 args needed: file to rename and new name"
exit 1
fi
# Проверка существования файла
if [ ! -f "$1" ]; then
echo "File $1 does not exist or it's not a file"
exit 1
fi
# Переименование через копирование и удаление
if cp "$1" "$2" && rm -f "$1"; then
echo "Name of file $1 was changed to $2"
exit 0
else
echo "Something went wrong!"
exit 1
fi
❤2👍1