Способов управлять процессами в Windows предостаточно, и командная строка занимает в них далеко не первое место. Однако иногда бывают ситуации, когда все остальные инструменты кроме командной строки недоступны, например некоторые вредоносные программы могут блокировать запуск Task Manager и подобных ему программ. Да и просто для общего развития полезно знать способы управления компьютером из командной строки.
Для управления процессами в командной строке есть две утилиты — tasklist и taskkill. Первая показывает список процессов на локальном или удаленном компьютере, вторая позволяет их завершить. Попробуем …
Если просто набрать команду tasklist в командной строке, то она выдаст список процессов на локальном компьютере.
По умолчанию информация выводится в виде таблицы, однако ключ /fo позволяет задать вывод в виде списка или в формате CSV, а ключ /v показывает более подробную информацию о процессах, например команда tasklist /v /fo list выведет подробное описание всех процессов в виде списка.
Список получится довольно большой, поэтому попробуем уточнить запрос. Для этого используем ключ /fi , который позволяет использовать фильтры для вывода данных, например команда tasklist /fi ″username eq user″ /fi ″memusage le 40000″ выводит список процессов пользователя user, которые потребляют не больше 40Мб памяти.
Найдя процессы, которые необходимо завершить, воспользуемся командой taskkill. Завершать процессы можно по имени, идентификатору процесса (PID) или задав условия с помощью фильтров. Для примера запустим несколько экземпляров блокнота (notepad.exe) и попробуем завершить его разными способами.
Ключ /f завершает процесс принудительно, а /t завершает все дочерние процессы.
Полную справку по командам tasklist и taskkill можно получить, введя их с ключом /?
Теперь пустим в ход тяжелую артиллерию — PowerShell. Его можно запустить не выходя из командной строки. Для получения списка процессов используем командлет Get-Process.
Чтобы не выводить весь список процессов можем воспользоваться командлетом Where-Object, который задает фильтр для выводимой информации. Для примера выведем список процессов, которые загружают процессор и отсортируем их по возрастанию нагрузки с помощью команды:
Get-Process | where {$_.cpu -gt 0} | sort cpu
С помощью PowerShell мы можем получить любую информацию о любом процессе. В качестве примера возьмем процесс cmd и выведем список его свойств командой:
Get-Process -Name cmd | Get-Member -Membertype property
Выбираем те свойства, что нам интересны ( в примере имя и ID процесса, путь к файлу, используемые модули и время запуска) и выводим их в виде списка командой:
Get-Process -Name cmd | Format-List name, id, path, modules, starttime
Таким образом мы можем посмотреть когда и кем был запущен процесс, сколько он потребляет ресурсов, где находится исполняемый файл и еще много различной информации.
Для завершения процесса в PowerShell есть командлет Stop-Process. Он завершает указанный процесс по его имени или идентификатору. Однако мы поступим по другому и передадим результат выполнения командлета Get-Process по конвейеру:
Get-Process | where {$_.name -match ″notepad″} | Stop-Process
Get-Process не может показать процессы на удаленном компьютере, для этого воспользуемся командлетом Get-WmiObject , например посмотрим процессы на удаленном компьютере PC командой:
Get-WmiObject win32_process -computername PC | ft name, processid, description
Для боле полного ознакомления с PowerShell можно воспользоваться встроенной справкой, для вызова справки нужно набрать Get-Help ″имя командлета″
Ну и для полноты обзора рассмотрим еще одно средство для управления процессами из командной строки. Это утилиты Pslist и Pskill входящие в состав пакета PSTools от компании Sysinternals.
Эти утилиты не требуют специальной установки, достаточно просто скопировать их на диск. Для запуска нужно зайти в папку с утилитами и ввести в командной строке необходимую команду.
Pslist может выводить информацию о процессах по имени или ID, например командой pslist notepad -x выведем подробную информацию о нашем «многострадальном» блокноте.
Особенностью утилиты Pslist является режим task-manager. В этом режиме информация автоматически обновляется, причем можно задать время работы и интервал обновления. Запускается режим ключом -s , например командой tasklist -s -r 10 запускаем режим программу в режиме task-manager с обновлением раз в 10 сек.
Завершение процесса программой pskill предельно просто, вводим команду и имя (или ID) процесса и все.
Справку по утилитам Pslist и Pskill можно посмотреть, введя команду с ключом /?
И еще, все манипуляции с процессами необходимо выполнять с правами администратора, для этого командную строку требуется запускать с повышением привилегий.
Ещё совсем недавно, в эпоху первых персональных компьютеров на базе архитектуры IBM PC, громоздких ЭЛТ-мониторов и шумных дисководов, интерпретатор командной строки был ключевой составляющей едва ли не всех программных платформ того времени. С развитием графических сред востребованность этого инструмента среди рядовых пользователей практически сошла на нет, а сама консоль осталась уделом лишь администраторов вычислительных систем да IT-гиков, не понаслышке знающих обо всех её преимуществах. Мы сочли такое положение дел несправедливым и из почти трёхсот поддерживаемых CMD-интерпретатором Windows команд выбрали двадцать тех, что могут пригодиться всем пользователям ПК.
Для доступа к командной строке Windows достаточно щёлкнуть по кнопке «Пуск» правой клавишей мыши и выбрать соответствующий пункт меню либо воспользоваться комбинацией клавиш «Win+R»
⇡#Диагностика компьютера
Systeminfo. Позволяет получить подробную информацию о конфигурации компьютера и установленной на нём операционной системе, включая сведения об изготовителе ПК, процессоре, объёме оперативной памяти, сетевом адаптере, версии BIOS/UEFI, поддержке технологий виртуализации, дате инсталляции ОС и прочие данные.
Mdsched. Системный инструмент Memory Diagnostic Tool, позволяющий проверить оперативную память компьютера на наличие ошибок и сбоев в работе. Пригодится при поиске технических неисправностей ПК и причин возникновения критических ошибок Windows, сопровождающихся «синими экранами смерти» (Blue Screen of Death, BSoD).
Powercfg. Команда, благодаря которой можно из консоли просматривать и конфигурировать настройки управления питанием компьютера и не только. Например, ввод данной инструкции с ключом /energy выдаст отчёт об эффективности энергопотребления ПК и имеющихся проблемах с энергосбережением, с параметром /batteryreport — сведения об использовании батареи ноутбука и оставшейся ёмкости аккумулятора, а с опцией /requests — отобразит на экране приложения, системные процессы и драйверы, удерживающие ОС от перехода в сон или режим гибернации. Отличный инструмент для поиска и решения различных проблем с энергосбережением мобильного устройства.
Verifier. Диагностическое средство Driver Verifier, с помощью которого можно выявить конфликты в работе драйверов, а также получить сведения о неподписанных и требующих дополнительной проверки драйверах. Пригодится для поиска проблемных драйверов, которые часто служат причиной нестабильной работы Windows.
Msconfig. Системная утилита Microsoft System Configuration Utility, управляющая автозапуском приложений, загрузкой служб и исполняемых файлов Windows, а также различными настройками операционной системы. Позволяет запустить ОС в режиме диагностики с базовым набором драйверов и служб.
⇡#Восстановление системных файлов и данных
Sfc. Инструмент System File Checker для проверки целостности системных модулей, библиотек и ключевых компонентов Windows, а также их восстановления в случае обнаружения проблемных файлов.
Wbadmin. Позволяет выполнять резервное копирование и восстановление операционной системы, томов, файлов, папок и приложений из командной строки. Для создания резервных копий следует ввести в консоли wbadmin start backup, для запуска процедуры восстановления данных — wbadmin start recovery. Проще не бывает.
Recover. Восстанавливает данные с повреждённых носителей. Утилита выполняет посекторное копирование указанных файлов и извлекает сохранившиеся данные. При этом «битые» секторы игнорируются. Метод элементарный и при наличии незначительного числа сбойных секторов на диске вполне эффективный, особенно по части восстановления файлов с простой внутренней структурой (например, текстовых документов).
⇡#Работа с дисками
Fsutil. Консольный инструмент для просмотра сведений об используемых на диске ПК файловых системах, быстрой оценки занятого пространства на накопителе и выявления проблемных мест, создания жёстких ссылок на файлы, управления дисковыми квотами и решения прочих задач. К примеру, команда fsutil fsinfo volumeinfo c: отображает сведения о системном диске и задействованных томах, а fsutil volume allocationreport c: позволяет узнать, сколько места занимают служебные файлы и метаданные файловой системы NTFS, теневые копии (точки восстановления) Windows, сжатые, зашифрованные и разреженные файлы.
Chkdsk. Позволяет проводить диагностику файловой системы и устранять обнаруженные ошибки. Пригодится для восстановления работы компьютера после сбоев и внезапных перезагрузок, поиска повреждённых секторов, устранения проблем со структурой файловых систем FAT, FAT32 и NTFS.
Defrag. Утилита для дефрагментации жёстких дисков. Программа упорядочивает и объединяет фрагментированные данные, тем самым повышая эффективность работы HDD (для твердотельных накопителей SSD проблема фрагментации файлов неактуальна). Defrag позволяет оптимизировать как все данные на диске, так и только загрузочные файлы. Поддерживается работа с отдельными разделами, разным системным приоритетом и в фоновом режиме. Перед началом использования приложения рекомендуется провести оценку необходимости дефрагментации того или иного диска. Делается это с помощью ключа /a, запускающего анализ указанного тома.
Certutil. Программа командной строки, которая позволяет управлять службами сертификации Windows и не только. Рядовому пользователю certutil может пригодиться в качестве инструмента для кодирования и декодирования файлов с использованием стандарта Base64 (параметры /encode и /decode), расшифровки кодов ошибок Windows (ключ /error) и вычисления хешей (контрольных сумм) файлов (опция /hashfile). Последняя функция может быть использована для проверки целостности и подлинности файлов, например ISO-образов операционных систем или дистрибутивов программ.
Cipher. Предназначена для управления шифрованием данных на уровне файловой системы NTFS и защиты конфиденциальной информации от несанкционированного доступа. Интересная особенностью утилиты — активируемая ключом /w функция затирания следов удалённых файлов с целью исключения их последующего восстановления средствами специализированного ПО. Такая возможность может пригодиться, к примеру, для предпродажной подготовки ПК и гарантированной вычистки хранившихся на нём данных.
⇡#Управление системными процессами
Tasklist и taskkill. Команды для управления запущенными в системе процессами. Первая отображает список выполняющихся в данный момент приложений и служб, вторая — позволяет завершать их выполнение и нередко используется IT-специалистами при написании скриптов для автоматизации административных задач. Что касается домашних пользователей, то для них знание упомянутых инструкций тоже не будет лишним. Например, на случай непредвиденных сбоев графического интерфейса Windows, когда доступной остаётся только консоль. В таких ситуациях tasklist и taskkill помогут выгрузить из памяти ПК проблемные процессы.
Shutdown. Команда, позволяющая принудительно завершить все процессы для последующей перезагрузки ОС либо выключения компьютера. Поддерживает отложенное выключение/перезагрузку по таймеру, перевод ПК в режим гибернации и прочие функции, для ознакомления с полным списком которых следует использовать параметр /?.
⇡#Работа с сетью
Ping. Утилита для диагностики сетевого соединения с тем или иным сервером. Программа отправляет запросы указанному узлу сети, фиксирует поступающие ответы, временные задержки по маршруту и частоту потери пакетов. Руководствуясь данными сведениями, можно оценить загруженность канала передачи данных и качество связи с интернет-ресурсом. Также команда ping может использоваться для определения IP-адреса сайта по его доменному имени и мониторинга состояния удалённых хостов.
Tracert. Консольное приложение для трассировки маршрута до заданного сервера в интернете. Программа выполняет отправку тестового пакета указанному узлу сети и отображает информацию обо всех промежуточных маршрутизаторах, через которые прошёл пакет на пути к запрошенному ресурсу, а также время отклика каждого из них. Это позволяет оценить, насколько «длинный» путь прошёл пакет и на каком участке возникают наибольшие задержки, связанные с передачей данных. Tracert помогает определить проблемные участки сети и установить места потери или задержки пакетов.
Ipconfig. Выводит сведения о конфигурации используемых Windows сетевых адаптерах (в том числе виртуальных). Позволяет узнавать текущий IP-адрес компьютера, просматривать идентификаторы MAC сетевых устройств, а также очищать DNS-кеш. Последняя функция может быть полезна при некорректной работе службы доменных имён Windows и сбоях при доступе к веб-ресурсам.
Netstat. Служит для получения сведений обо всех активных сетевых соединениях, просмотра таблиц IP-маршрутизации и статистики по протоколам. С помощью команды netstat можно получить представление о том, какой установленный на компьютере софт проявляет излишнюю сетевую активность, какой порт использует определенный системный процесс, а также просмотреть расширенную информацию о сетевых интерфейсах.
⇡#Удаление вредоносного ПО
Mrt. Утилита Malicious Removal Tool для сканирования компьютера на предмет наличия наиболее распространённого зловредного ПО. Находит и удаляет угрозы, а также отменяет внесённые ими изменения. На выбор доступны три варианта проверки — быстрая, полная и выборочная. Поддерживается работа в фоновом режиме. Malicious Removal Tool регулярно обновляется через Windows Update и может использоваться в качестве дополнения к установленным в системе защитным решениям.
⇡#Заключение
Как ни крути, даже в современных реалиях перечисленные консольные утилиты — неплохое подспорье для повседневной работы за компьютером. И пусть многим из них уже не один десяток лет, они до сих пор не теряют своей актуальности и могут сослужить добрую службу всем пользователям Windows — даже тем, кто редко выходит за рамки графического интерфейса операционной системы. Готовы поспорить с данным утверждением или дополнить обзор ценными замечаниями? Оставляйте свои отзывы в комментариях ниже — мы вас слушаем очень внимательно.
Если Вы заметили ошибку — выделите ее мышью и нажмите CTRL+ENTER.
Мониторинг процессов в командной строке
Управление процессами Windows через CMD
Основой работы каждого системного администратора является мониторинг операционных систем и обеспечение нормальной работы всех процессов — по крайней мере такой, насколько можно ожидать. Внимательное наблюдение за журналами событий помогает выявлять и отслеживать проблемы в приложениях, безопасности и важных службах. Обнаружив или предполагая проблему, админ должен докопаться до ее причины и устранить. Точное определение причины проблемы предотвратит ее повторное появление.
Управление приложениями, процессами и производительностью
Всякий раз, когда операционная система или пользователь запускает службу, приложение или команду, Microsoft Windows запускает один или более процессов для управления соответствующей программой. Несколько утилит командной строки упростят вам мониторинг программ и управление ими. К этим утилитам относятся:
- Pmon (Process Resource Manager) — показывает статистические данные по производительности, включая использование памяти и процессора, а также список всех процессов, выполняемых в локальной системе. Позволяет получать детальные «снимки» задействованных ресурсов и выполняемых процессов. Pmon поставляется с Windows Resource Kit;
- Tasklist (Task List) — перечисляет все выполняемые процессы по имени и идентификатору процесса, сообщает информацию о сеансе пользователя и занимаемой памяти;
- Taskkill (Task Kill) — останавливает выполнение процесса, заданного по имени или идентификатору. С помощью фильтров можно останавливать процессы в зависимости от их состояния, номера сеанса, процессорного времени, занимаемой памяти, имени пользователя и других параметров.
Примеры управления процессами через командную строку
Анализ выполняемых процессов в командной строке
При помощи утилиты командной строки Tasklist можно проверить процессы, работающие в локальной или удаленной системе. Tasklist позволяет:
- получить идентификатор процесса, его состояние и другие важные сведения о процессах в системе;
- увидеть зависимости между выполняемыми процессами и службами, настроенными в системе;
- просмотреть список DLL, задействованных выполняемыми в системе процессами;
- использовать фильтры для включения или исключения процессов, показываемых Tasklist.
Пример: tasklist — команда выводит список запущенных в операционной системе процессов.
Мониторинг процессов и использования системных ресурсов
Process Resource Monitor (Pmon) показывает «моментальный снимок» используемых системных ресурсов и выполняемых процессов. После запуска (вводом pmon в командной строке) эта утилита собирает информацию об использовании ресурсов и выполняемых процессах в локальной системе и выводит результаты в консольное окно. Статистика автоматически обновляется каждые пять секунд. Pmon продолжает работу, пока вы не нажмете клавишу Q для выхода; нажатие любой другой клавиши приводит к обновлению информации.
Останов процессов в командной строке
Чтобы остановить процессы в локальной или удаленной системе, применяйте утилиту командной строки Taskkill. Процесс можно остановить по его идентификатору при помощи параметра /Pid или по имени образа
Пример: taskkill /IM notepad.exe — завершает работу программы блокнот.
Системные и пользовательские процессы
Обычно процесс, запускаемый операционной системой, называется системным, а процесс, запускаемый пользователем, — пользовательским. Большинство пользовательских процессов выполняется в интерактивном режиме. То есть пользователь запускает процесс непосредственно при помощи клавиатуры или мыши. Если программа активна, связанный с ней интерактивный процесс контролирует клавиатуру и мышь до тех нор, пока вы не переключите управление, завершив эту программу или выбрав другую. Процесс, получивший контроль над клавиатурой и мышью, называют активным.
Процессы могут работать и в фоновом режиме независимо от сеансов зарегистрированных пользователей. Фоновые процессы не имеют контроля над клавиатурой, мышью или другими устройствами ввода и обычно запускаются операционной системой. Но с помощью Task Scheduler (Планировщик заданий) пользователи тоже могут запускать процессы в фоновом режиме, и эти процессы способны работать независимо от того, зарегистрирован ли пользователь в системе.
Управление процессами Windows из командной строки
Для управления процессами Windows существует много разных утилит и приложений. Как правило, для этих целей командная строка используется очень редко. Но в некоторых случаях, это единственная возможность и другие средства недоступны. Такое может возникнуть при блокировке стандартных диспетчеров различными вирусами и другими, нехорошими программами. Поэтому, будет очень полезно знать и уметь работать с процессами через командную строку.
Чтобы управлять процессами, при помощи возможностей командной строки, в системе предусмотрено два специальных приложения: tasklist и taskkill. Из их названия можно догадаться и об их предназначении — первое может отображать список всех запущенных процессов на данном компьютере, или на удаленной машине, а вторая умеет их останавливать. Давайте глянем, как это работает на практике.
Введите, в окне терминала, tasklist и командная строка выдаст весь список рабочих процессов на данном компьютере.
Все данные будут отображаться в табличной форме, но можно поменять вид данных в другой формат. Воспользуйтесь параметром /fo и все отобразится в виде списка (или как CSV), а если использовать параметр /v, то в этот список будут включены более подробные данные о каждом процессе. Введите команду taskliist /v /fo list (без кавычек естественно) и в окне должна появиться приблизительно такая картина.
Обычно список выходит немалых размеров, и чтобы не листать его слишком долго, выполним более точный запрос. Для этих целей существует параметр /fi, способный уточнить поиск процессов используя фильтры. Для примера, введем команду, которая отобразит все процессы, запущенные от имени пользователя user и занимающие до 40 мегабайт в памяти компьютера. Команда выглядит следующим образом: tasklist /fi »username eq user» /fi »memusage le 40000». А на рисунке ниже представлен результат работы команды.
Допустим, мы нашили процессы, которые хотим завершить. Теперь настал черед утилиты «taskkill». Для прекращения работы процесса можно использовать его имя, или идентификатор PID, а можно прекращать процессы используя разные фильтры. Для эксперимента, мы запустим несколько окон программы Блокнот (notepad.exe) и на них испытаем разные способы.
При помощи параметра /f процесс будет завершен в принудительном порядке, а если добавить еще ключ /t — завершатся все другие, которые были через него запущенны. Чтобы узнать больше возможностей, для команд tasklist и taskkill, добавьте к ним ключ /?. Он отобразит полную справку для этих утилит. Не будем забывать про такое мощное средство, как PowerShell. Мы можем им воспользоваться и прям в этом же окне командной строки. Чтобы просмотреть весь список процессов, запустите команду Get-Process.
Чтобы опять не рыться во всех найденных процессах, можно задать фильтр для получения отдельных, соответствующих критериям, процессов. Для этого существует команду Where-Object. Давайте получим табличку с процессами, загружающими процессор на данном компьютере и выстроим их в порядке возрастания нагрузки. Воспользуемся командой следующего вида: Get-Process | where {$_.cpu -gt 0} | sort cpu
Результат будет иметь приблизительно такой вид:
Здесь можно получить полную информацию о любом запущенном процессе. Сейчас мы узнаем список всех свойств процесса cmd. Это можно сделать при помощи такой команды:
Get-Process -Name cmd | Get-Member -Membertype property
Выведем только нужные свойства. Например, оставим только имя, идентификатор процесса, путь к его исполнительному файлу, подключенные модуле и время, когда процесс был запущен. Все это мы выводим списком, при помощи такой команды:
Get-Process -Name cmd | Format-List name, id, path, modules, starttime
Благодаря этому мы узнаем о том, кто запустил процесс, как сильно он грузит систему, где располагается его файл и еще кучу разной, полезной и не очень информации.
Чтобы остановить процесс через PowerShell используйте специальный командой Stop-Process. Для того, чтобы указать нужный процесс для завершения, используйте его имя или идентификатор. Например, можно по конвейеру прекратить работу блокнота:
Get-Process | where {$_.name -match ″notepad″} | Stop-Process
Для работы с процессами на другом, удаленном компьютере необходимо использовать совсем другой командой — Get-WmiObject. Сейчас посмотрим, какие процессы запущенны на компьютере с именем «PC»:
Get-WmiObject win32_process -computername PC | ft name, processid, description
Чтобы узнать больше информации и различных ключей, для работы с процессами через PowerShell, используйте встроенную справку. Запустите команду Get-Help «имя команды» и появится справка по указанному параметру. Есть еще две дополнительные утилиты, способные выполнять операции с процессами. Ими являются Pslist и Pskill. Изначально их в системе нет, они входят в пакет PSTools.
Сами по себе эти приложения не нуждаются в установке. Их достаточно скопировать в любое место на своем жестком диске. Чтобы запустить, зайдите в папку, где они хранятся, и активируйте нужной командой.
Соответственно, утилита Pslist способна вывести информацию о процессах, запущенных на компьютере. Можно выборочно находить отдельные процессы и выводить их на экран. Давайте продолжим издеваться над запущенным блокнотом и просмотрим о нем информацию командой pslist notepad -x.
Интересной функцией Pslist является возможность работы в режиме диспетчера процессов. Вся информация постоянно обновляется и можно задавать подходящий интервал получения актуальных данных. За этот режим ответствен ключ -s. Допустим, необходимо установить режим диспетчера с обновлением каждые десять секунд, эта команда будет выглядеть так: tasklist -s -r 10
Завершить любой процесс можно при помощи утилиты Pskill. Введите эту команду и идентификатор процесса, или его имя. На рисунке ниже можете посмотреть, как это будет выглядеть в случае с бедным блокнотом.
Дополнительную информацию, в виде справки, можно открыть дополнительным параметром /?
Самый главный момент — командная строка, во всех случаях, должна быть запущена от имени администратора, иначе ничего не получится. Но если столкнетесь с какими-либо сложными проблемами, или возникнут вопросы, то всегда можно этим поделиться в комментариях к данной статье, и мы вместе постараемся разобраться.
Автор статьи: Сергей
Windows
1
22624
Это может пригодиться:
- Home
- OS
- Windows
- Работа с процессами из командной строки в Windows, утилиты tasklist и taskkill
Поговорим о том, как найти и завершить (убить) приложение (процесс), используя встроенные утилиты командной строки tasklist и taskkill в ОС Windows.
Процессом в windows называют экземпляр выполняемой программы.
Просмотр запущенных процессов.
Tasklist – консольная утилита для просмотра всех процессов, выводит имя образа, PID, имя сессии, номер сеанса и объем занимаемой памяти для каждого процесса. Запустить ее можно из командной строки windows.
Для запуска командной строки windows, переходим в пункт меню: Пуск —> Выполнить —> В строку вводим команду cmd.exe.
C:WindowsSystem32>tasklist
Вывод команды tasklist.
Завершение работы процесса.
Taskkill – утилита для завершения работы процесса. Существует несколько вариантов для убийства процесса.
1. По номеру PID.
C:WindowsSystem32>taskkill /PID 6056
Вывод команды taskkill /PID 6056.
2. По имени.
WindowsSystem32>taskkill /IM calc.exe
Вывод команды taskkill /IM calc.exe.
Дополнительную информацию по применению этих команд можно получить, используя справку.
C:>tasklist /? C:>taskkill /?
Вот и все. Рассмотрение утилит tasklist и taskkill завершено. Может кому и пригодиться.
Меня два раза спрашивали [члены Парламента]: «Скажите на милость, мистер Бэббидж, что случится, если вы введёте в машину неверные цифры? Cможем ли мы получить правильный ответ?» Я не могу себе даже представить, какая путаница в голове может привести к подобному вопросу. / Charles Babbage /