Утиліти з командного рядка, які корисні навіть в Windows 8

  1. Зміст статті І знову про головне - давай поговоримо про добре знайомому тобі cmd.exe. Навіть в новомодної...
  2. 2. Команда sfc
  3. 3. Команда chkdsk
  4. 4. Команда driverquery
  5. 5. Команда cipher
  6. 6. Команда powercfg
  7. 7. Команда shutdown
  8. 8. Команда sc
  9. 9. Команда recover
  10. 10. Команда tree
  11. PowerShell

Зміст статті

І знову про головне - давай поговоримо про добре знайомому тобі cmd.exe. Навіть в новомодної «вісімці» консоль нікуди не поділася, і виконує всі звичні для тебе завдання і навіть таїть в собі кілька сюрпризів.

1. Команда ipconfig

Найбільш відома і тому найменш цікава в нашому огляді. Ця команда знайома всім «командним» адміністраторам і більшості користувачів: коли виникають проблеми з інтернетом, співробітники техпідтримки просять користувача ввести саме її.

Команда дозволяє переглядати TCP / IP-інформацію і працювати з нею. Можна використовувати її для перевірки IP-адреси комп'ютера, звільнення або поновлення оренди призначеного IP-адреси і навіть для знищення локального DNS-кешу.

Якщо просто ввести ipconfig у командному рядку, команда відобразить інформацію про IP-адреси всіх мережевих адаптерів. Для кожного адаптера виводиться його опис, наприклад «Ethernet-адаптер» або «Адаптер бездротової локальної мережі», щоб було зрозуміло, конфігурація якого саме відображено. Звичайний набір інформації містить IP-адресу, маску підмережі, шлюз і ще пару полів не надто корисних відомостей. Якщо потрібно отримати більше даних, потрібно використовувати параметр / all. При цьому команда виведе набагато більше інформації, а найкорисніше в розширеному виведення - це поле «Фізична адреса», тобто MAC-адресу адаптера.

Крім параметра / all команди ipconfig, заслуговують на пильну увагу параметри / release, / renew і / flushdns. Перший дозволяє звільнити IP-адреса, призначений за протоколом DHCP. Правда, після цього мережа відмовиться працювати, так як мережевий інтерфейс виявиться несконфігурірованним, тому знадобиться другий параметр - / renew, який дозволяє оновити всю інформацію, яка призначається по DHCP. Цей параметр дуже корисний, оскільки змушує твій комп перепідключити до маршрутизатора або до серверів провайдера. Буває так, що при завантаженні комп не бачить бездротову мережу (таку проблему я періодично спостерігаю на своєму домашньому комп'ютері під керуванням Windows 7). Замість перезавантаження компа простіше ввести ipconfig / renew, і мережа з'явиться. Третій параметр дозволяє знищити весь локальний DNS-кеш. Іноді знищення DNS-кеша дозволяє вирішити деякі проблеми установки з'єднання, наприклад, коли DNS-інформація на сервері вже оновлена, але стара ще залишилася в локальному кеші.

Мал. 1. Висновок команди ipconfig / all

2. Команда sfc

Команда sfc (system file checker) дозволяє перевірити системну файлову систему. Не варто плутати цю команду з командою chkdsk (check disk). За допомогою останньої можна виправити файлову систему на більш низькому рівні і навіть помітити bad-сектори. А ось команда sfc знадобиться, якщо раптом якийсь системний файл Windows пошкоджений. Вона може виявити це і замінити битий файл без будь-якого втручання з боку користувача. Дуже і дуже корисна команда. Вона порівнює тисячі базових Windows-файлів з оригінальними версіями, які поставлялися з Windows, і при необхідності замінює пошкоджені або відсутні файли за допомогою Windows Update. Залежно від того, як встановлена ​​Windows, може знадобитися, а може і не знадобитися інсталяційний носій. Зазвичай він не потрібен.

Можна виділити наступні корисні параметри sfc:

  • / Scannow - здійснює негайну перевірку системи і при необхідності замінює файли. Після виконання sfc потрібно перезавантажити Windows, якщо були знайдені проблеми.
  • / Scanonce - перевірка здійснюватиметься при наступному перезапуску системи.
  • / Scanboot - перевірка буде йти при кожному перезапуску системи. Скасувати дозволяє параметр Revert: після того, як поекспериментував з параметром / scanboot, потрібно виконати команду sfc Revert, інакше перевірка буде здійснюватися при кожному перезапуску.

Мал. 2. Результат виконання sfc / scannow

3. Команда chkdsk

Команда chkdsk (Check Disk) дозволяє полагодити помилки файлової системи, виявити bad-сектори, відновити читану інформацію з bad-секторів. Windows перевіряє диски автоматично, однак chkdsk можна запустити і вручну, якщо є підозри, що з диском щось не так.

Як параметри команді потрібно передати ім'я томи або ім'я файлу (якщо потрібно перевірити один файл або групу файлів, в цьому випадку потрібно передати маску файлу). Параметр / F автоматично виправляє помилки, параметр / R дозволяє виявити bad-сектори і відновити інформацію з них. Якщо chkdsk не може отримати винятковий доступ до диска, тоді перевірка диска буде проведена при наступному завантаженні системи. Це звичайне явище при спробі перевірити диск C :. Приклад: chkdsk D: / R.

Мал. 3. Відкладений запуск chkdsk

4. Команда driverquery

Команда генерує список всіх драйверів, встановлених в Windows. Хороший інструмент, що дозволяє створювати звіти. Команду можна використовувати для дослідження номерів версій встановлених драйверів. На основі її результатів можна визначити, чи потрібно оновлювати той чи інший драйвер.

Найкорисніші параметри цієї команди - / s, / si і / fo. Перший параметр дозволяє вказати ім'я або IP-адреса віддаленого вузла, драйвери якого потрібно досліджувати. Другий параметр показує цифровий підпис драйверів. Третій дозволяє вказати формат звіту: / fo TABLE - таблиця (за замовчуванням), / fo LIST - список, / fo CSV - CSV-формат, який зручно буде переглядати в Excel або подібній програмі. приклад:

/ Fo CSV> drivers.csv / Fo CSV> drivers Мал. 4. Команда driverquery | more

5. Команда cipher

Дана команда використовується для роботи з зашифрованими папками і файлами на NTFS-томах. Зазвичай з такими папками і файлами працюють через графічний інтерфейс (що значно зручніше), але у команди cipher є дуже корисний параметр / W:

cipher / W: шлях

Параметр / W (наприклад, / W: C :) видаляє дані на невикористовуваних частинах томи і ефективно стирає дані на жорсткому диску після їх видалення. Іншими словами, цю команду можна використовувати для фізичного видалення даних з диска - так, щоб їх не можна було відновити спеціальними утилітами. Потрібно відзначити, що застосовується вона тільки до звичайних жорстких дисків, але не до SSD-дисків. Вважається, що з SSD файли видаляються негайно і без можливості відновлення. Хоча зацікавленим читачам я б порекомендував прочитати ось це .

Хоча зацікавленим читачам я б порекомендував прочитати   ось це

Мал. 5. Команда cipher / W: C:

6. Команда powercfg

Команда powercfg управляє параметрами електроживлення. У неї дуже багато параметрів, і якщо дійсно потрібно управляти електроживленням з мережі, то краще скористатися параметром /? для отримання довідки про всіх. Але більшості користувачів будуть цікаві параметри / a і / batteryreport. Перша команда виводить список драйверів, які не дозволяють системі «заснути», а друга виводить звіт про використання батареї.

7. Команда shutdown

В UNIX для завершення роботи системи (виключення, перезавантаження) використовується команда shutdown. Мало хто знає, але однойменна команда є і в Windows. Тепер фанати UNIX можуть завершувати роботу системи командою shutdown -s і перезавантажувати систему командою shutdown -r. Також доступний параметр -t, що дозволяє задати таймер завершення роботи (в секундах), наприклад, в наступному прикладі система буде перезавантажена через одну хвилину: shutdown -r -t 60. Параметр -f забезпечує примусове завершення роботи з закриттям всіх запущених додатків.

8. Команда sc

Команда sc взаємодіє з контролером служб і встановленими службами. В UNIX / Linux можна управляти службами (сервісами, демонами) з командного рядка (в принципі, не знаю такої речі, яку не можна було б виконати з командного рядка в UNIX). За допомогою утиліти sc можна управляти службами з командного рядка в Windows. Можна запускати і зупиняти служби, змінювати тип запуску служби і так далі.

Так, для запуску і зупинки служби використовуються відповідно параметри start і stop:

sc start <ім'я служби> sc stop <ім'я служби>

Назріває питання: як дізнатися ім'я служби? Дуже просто - для цього потрібно використовувати параметр query, в результаті буде відображено детальний перелік всіх служб:

sc query

Так як список дуже великий, для його перегляду можна перенаправити висновок команди або в команду more (для пагінацію), або в буфер обміну (команда clip), або в файл:

sc query | more sc query | clip sc query> services.txt

Додаткову інформацію про цю команду можна знайти на врізки.

Мал. 6. Команда sc query | more

9. Команда recover

Використовується для відновлення інформації з зіпсованого або дефектного диска. Уявімо, що у нас є каталог d: \ reports \ 2014 і в ньому був файл jan.txt, але на диску з'явилися bad-сектори, і прочитати файл jan.txt не виходить. Для відновлення (часткового) інформації з цього файлу можна використовувати команду

recover c: \ reports \ 2014 \ jan.txt

Команда recover читає файл сектор за сектором і відновлює інформацію, яку ще можна прочитати. Зрозуміло, що програма не зможе взяти інформацію з пошкоджених секторів, тому відновлення інформації буде частковим. Дані з пошкоджених секторів будуть загублені. Також потрібно пам'ятати, що використання масок файлів на зразок * і? в цій команді не допускається, потрібно вказати явне ім'я файлу.

10. Команда tree

Кому-то команда tree здасться марною, однак вона стане в нагоді розробникам програмного забезпечення і технічних письменникам. Команда tree відображає структуру каталогів за вказаною шляху. Наприклад, у нас є проект c: \ my_prj \ project1. Потрібно побудувати структуру підкаталогів цього каталогу. Для цього можна використовувати такі команди:

tree c: \ my_prj \ project1 | clip tree c: \ my_prj \ project1> project1.txt

Перша команда копіює структуру каталогів в буфер обміну, а друга поміщає в файл з ім'ям project1.txt.

txt

Мал. 7. Команда tree

PowerShell

У 2012 році «Хакер» публікував статтю «Апгрейди для cmd.exe і альтернативи», в якій обговорювалися можливі заміни для cmd.exe. Нагадаю, що в статті розглядалися console, clink, cygwin, mintty, PowerCmd. Всі вони дозволяють зробити роботу в командному рядку ефективніше. У Microsoft теж розуміли, що стандартний cmd.exe вже безнадійно застарів, і замість того, щоб піддати його апгрейду, в Microsoft працювали над PowerShell. PowerShell - розширюване засіб автоматизації від Microsoft, який складається з оболонки з командною оболонкою та супутнього мови сценаріїв. Майбутнє командного рядка Windows за PowerShell, тому, якщо ти ще не знайомий з ним, саме час почати знайомство. Про PowerShell ми писали в лютневому номері.

У неї дуже багато параметрів, і якщо дійсно потрібно управляти електроживленням з мережі, то краще скористатися параметром /?
Також потрібно пам'ятати, що використання масок файлів на зразок * і?