Як я змінив кольорову схему командного рядка?


17

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

  1. Це постійно. Отже, COLORкоманда не викликає сумнівів.
  2. Це неушкоджено незалежно від того, звідки я запускаю cmd. Отже, зміна кольору з властивостями ярлика не викликає сумнівів, оскільки я отримую кольорову схему навіть при запуску cmd з Run або з оригінального місця.
  3. Це не дозволяє мені переосмислити це за властивостями ярлика. І ось у цьому проблема. Я створюю ярлик cmd і змінюю його колірну гамму з властивостей. Але це не відображається навіть після перезавантаження.

Отже, єдиний варіант, який у мене залишився: Використовуйте той самий метод, який я використовував кілька років тому. Як я змінив колір cmd?

Відповіді:


10

Кольори cmd можна змінити в реєстрі.

Перейдіть до HKEY_CURRENT_USER\Software\Microsoft\Command Processorта перевірте DefaultColorзапис. Значення за замовчуванням - 0(нуль). Щоб змінити кольори, введіть значення двох шістнадцяткових цифр, перша вказує колір фону, а друга - колір тексту. Можливі значення такі:

0 - black
1 - blue
2 - green
3 - aqua
4 - red
5 - purple
6 - yellow
7 - white
8 - grey
9 - light blue
A - light green
B - light aqua
C - light red
D - light purple
E - light yellow
F - bright white

Так, наприклад, значення " 4A" дасть вам світло-зелений текст на червоному фоні.
Зверніть увагу, що значення, у яких дві цифри однакові, є недійсними, тому ви не можете мати однаковий колір тексту та фону.

Якщо вищезгадане не працює, перевірте той самий запис у розділі HKEY_LOCAL_MACHINE, можливо, ви там змінили його.


Звичайно, вам доведеться перезапустити консоль після внесення змін, щоб вона набула чинності.
Synetech

Для доступу до цих налаштувань натисніть [клавіша Windows] + [r], потім введіть regedit.exe, а потім натисніть кнопку ОК, щоб відкрити програму Редактор реєстру.
Девід Алан Кондіт

Щось дуже цікаве відбувається. Ваше рішення спрацювало, але ненадовго колір екрану - фіолетовий. А після цього мілісекунда - це білий і чорний текст. Чому це спочатку фіолетовий фон? Хоча я змінив це regedit. @Indrek
Pie

Це змінюється на білий фон і чорний текст, тому що я змінив це значення в regedit. Але чому це фіолетовий фон на короткий момент спочатку.
Пиріг

16

Правильний спосіб постійного встановлення кольорів (та інших параметрів) консолі / командного рядка - це:

  1. Відкрийте командний рядок
  2. Клацніть правою кнопкою миші заголовок або натисніть Alt+Space
  3. У контекстному меню виберіть «За замовчуванням »
  4. Встановіть потрібні вам властивості (кольори на вкладці Кольори )
  5. Натисніть кнопку ОК

Метод, який використовував Tapped-Out, працює, оскільки Windows 7 має помилку, де параметр " Властивості " змінює значення за замовчуванням замість лише поточної консолі, і її можна буде виправити в будь-який час.

Метод, який надав Індрек, також працює, але використовувати наданий інтерфейс простіше (і безпечніше), ніж редагувати реєстр вручну, особливо при встановленні кольорів, оскільки вам не доведеться возитися з шістнадцятковими значеннями. Крім того, вам не доведеться турбуватися про налаштування дозволів за допомогою інтерфейсу.

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

Щоб уточнити, що трапляється, це те, що всі консолі (командно-підказові та консольні програми) використовують налаштування за замовчуванням (зберігаються в HKCU\Console), поки вони не будуть спеціально змінені. Після цього вони зроблять копію цих налаштувань і потім використовуватимуть ці налаштування. Наприклад, якщо ви відкриєте edit.com, він спочатку використовуватиме параметри в HKCU\Console, але якщо ви внесете зміни до них, буде зроблена копія HKCU\Console\c:windows_system32_edit.com, і зміни в налаштуваннях за замовчуванням більше не відображатимуться через те, що command.comіснують конкретні параметри (і замінять параметри за замовчуванням ). Це аналогічно тому, як налаштування користувачів переосмислюють системні налаштування (наприклад, HKCU замінює за замовчуванням HKLM).


Я не отримую вашого останнього абзацу. Я використовую командний рядок vim для редагування текстових файлів. Коли я змінюю колірну схему з властивостей ярлика cmd, така ж схема застосовується до консолі редагування файлів vim. Як?
Apple II

1
Усі консолі використовують за замовчуванням, але якщо потім встановити параметри для певної програми консолі, вона зробить копію спеціально для цього додатка, і вони будуть використовуватися з цього моменту. Коли ви змінюєте звичайні параметри командного рядка, VIM використовує ці, але якщо потім внести зміни до самого VIM, він використовуватиме їх і припинить використовувати типові. Я відредагую відповідь, щоб розширити цю проблему.
Synetech

Але властивості ярлика cmd не є глобальними за замовчуванням. Як VIM отримує це?
Apple II

Як я вже говорив, усі консолі, які не мають власних специфічних властивостей, використовують параметри за замовчуванням HKCU\Console. Командний рядок VIM - консольний додаток, тому він використовує консольну підсистему, тож коли він запускає CSRSS, він надає йому параметри за замовчуванням, як і будь-який інший додаток консолі. Якщо змінити налаштування для VIM, він замість цього використовуватиме їх. Якщо ви зробите ярлик до VIM, ви можете змінити налаштування саме для цього ярлика і змусити VIM використовувати параметри за замовчуванням при запуску іншими способами. Можна навіть зробити декілька ярликів, кожен з яких має власні налаштування.
Synetech

Ні .. Ні ... Я не говорю про ярлик VIM. Я говорю про ярлик cmd. Консоль VIM приймає кольорову схему cmd-консолі, з якої ви її ініціювали. Ви можете протестувати.
Apple II

7

Власне змінити кольори консолі Windows (змінити, що таке "синій")

Щоб фактично змінити кольори (тему) консолі (Powershell, cmd, bash тощо) для Windows 10, використовуйте інструмент Color (Колірний інструмент) , який розроблено командою консолі Microsoft.

colortool -b solarized_dark

Детальніше про colortool .

введіть тут опис зображення

Щоб змінити, який колір використовується (виберіть інший колір для синього з обмеженого набору кольорів)

Звичайно, ви можете спробувати це в командному рядку, але ви можете змінити лише колір тексту:

  1. натисніть на значок командного рядка у верхньому лівому куті вікна та виберіть Властивості.
  2. Перейдіть на вкладку Кольори, а потім
  3. виберіть потрібний колір тексту та фону на екрані. Ви також можете ввести свою комбінацію кольорів RGB, якщо хочете.

Це, безумовно, найкраща відповідь - все інше дозволяє лише вибирати обмежений набір кольорів.
mikemaccana

3

У cmd клацніть правою кнопкою миші на рядку заголовка та виберіть властивості:

контекстне меню заголовка

Клацніть на вкладці Кольори:

властивості - вкладка кольорів

Тут можна змінити параметри кольору командного рядка. З мого тестування, це глобально змінює кольорову гаму.


1
Це безпосередньо додається до властивостей швидкого доступу. Коли сеанс не запущений із ярлика, його тимчасовий ...
Apple II

Ну, ви також можете клацнути лівою кнопкою миші на значку cmd (у заголовку), щоб потрапити туди.
Apple II

Я встановив власні кольори таким чином, а потім запустив його з діалогового вікна Запуск (Win + R). Спеціальні кольори зберігалися протягом сеансів. Як це тимчасово?
nc4pk

1
Це відома помилка: superuser.com/questions/323059/…
Apple II

1

Незалежно від того, в якому каталозі ви просто використовуєте цю команду, щоб змінити колір тексту:

color 0a, колір буде змінено на Зелений;
color 0b, колір буде змінено на Синій;
color 0c, колір буде змінено на Червоний.


Це не відповідає на питання, оскільки ОП чітко сказала, що " COLORкоманда не викликає сумніву".
Каміль Маціоровський
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.