Helcode | Хелкод | Скрипты и автоматизация
993 subscribers
52 photos
34 links
☎️ Контакты для связи: @helcodeadm
Download Telegram
Мониторим CPU и память — простые скрипты для Linux и Windows

🤔 Проблема: Сервер тормозит, но вы не знаете, в чём причина.

Решение: Скрипты для мониторинга нагрузки.

Linux (Bash + Python):
# Загрузка CPU  
top -bn1 | grep "Cpu(s)" | awk '{print "CPU: " 100 - $8 "%"}'


python  
# Загрузка памяти
import psutil
print(f"RAM: {psutil.virtual_memory().percent}%")



Windows (PowerShell):
powershell  
# CPU
Get-CimInstance Win32_Processor | Select LoadPercentage
# Память
Get-CimInstance Win32_OperatingSystem | Select FreePhysicalMemory, TotalVisibleMemorySize



👉 Добавьте алерты в Telegram — и вы всегда будете в курсе перегрузок!

🌐 @helcode | #bash #python #powershell
👍3
Твой Python-скрипт вырос и хочет отдельной команды в терминале. Как ему это организовать? ☕️

Мы все начинаем с простого скрипта super_script.py. Но потом к нему добавляются аргументы, конфиги, логирование... И вот ты уже не запускаешь скрипт, а выполняешь сложный ритуал: python /path/to/script.py --verbose --output /home/user/data.json. Пора дать ему собственное имя и сделать полноценным CLI-инструментом!

Всё, что нужно, — это argparse из коробки Python. Смотрим, как превратить хаос в элегантную команду:

# file: data_processor.py
import argparse

def process_data(input_file, output_file, verbose=False):
# Здесь твоя магия обработки данных
if verbose:
print(f"Обрабатываем {input_file} и сохраняем в {output_file}")
return True

if __name__ == "__main__":
# Создаем парсер
parser = argparse.ArgumentParser(description='Крутой инструмент для обработки данных.')

# Добавляем аргументы
parser.add_argument('input', help='Путь до входного файла')
parser.add_argument('-o', '--output', required=True, help='Путь до выходного файла')
parser.add_argument('-v', '--verbose', action='store_true', help='Вербальный режим')

# Парсим аргументы
args = parser.parse_args()

# Передаем в функцию
process_data(args.input, args.output, args.verbose)


1. ArgumentParser — это наш главный конструктор команд.
2. add_argument определяет, какие флаги и аргументы мы принимаем. required=True для обязательных, action='store_true' для булевых флагов.
3. parse_args() превращает sys.argv в удобный объект с точками (args.input).

Следующий уровень: после этого можно установить скрипт как пакет через pip install -e . (прописав в setup.py) и твоя команда data_processor будет доступна из любой директории!

А какой у вас любимый инструмент для создания CLI? 🤔

P.S. Если твой скрипт после этого начнет требовать зарплату в виде GPU — мы не виноваты.


🌐 @helcode | #python
👍2🤔1