74

Я хотел бы изменить подсказку на $p$g$_$f навсегда, но она сбрасывается автоматически каждый раз, когда я снова открываю окно команд.

Как я могу заставить его остаться таким же навсегда навсегда?

6 ответов6

71

В командной строке введите:

setx Prompt $p$g$_$f

Затем снова откройте командную строку.

Для тех, кто не знает, как получить справку по командам DOS/CMD, введите:

setx /?

Получить:

SetX has three ways of working:

Syntax 1:
    SETX [/S system [/U [domain\]user [/P [password]]]] var value [/M]

Syntax 2:
    SETX [/S system [/U [domain\]user [/P [password]]]] var /K regpath [/M]

Syntax 3:
    SETX [/S system [/U [domain\]user [/P [password]]]]
         /F file {var {/A x,y | /R x,y string}[/M] | /X} [/D delimiters]

Description:
    Creates or modifies environment variables in the user or system
    environment. Can set variables based on arguments, regkeys or
    file input.

Parameter List:
    /S     system          Specifies the remote system to connect to.

    /U     [domain\]user   Specifies the user context under which
                           the command should execute.

    /P     [password]      Specifies the password for the given
                           user context. Prompts for input if omitted.

    var                    Specifies the environment variable to set.

    value                  Specifies a value to be assigned to the
                           environment variable.

    /K     regpath         Specifies that the variable is set based
                           on information from a registry key.
                           Path should be specified in the format of
                           hive\key\...\value. For example,
                           HKEY_LOCAL_MACHINE\System\CurrentControlSet\
                           Control\TimeZoneInformation\StandardName.

    /F     file            Specifies the filename of the text file
                           to use.

    /A     x,y             Specifies absolute file coordinates
                           (line X, item Y) as parameters to search
                           within the file.

    /R     x,y string      Specifies relative file coordinates with
                           respect to "string" as the search parameters.

    /M                     Specifies that the variable should be set in
                           the system wide (HKEY_LOCAL_MACHINE)
                           environment. The default is to set the
                           variable under the HKEY_CURRENT_USER
                           environment.

    /X                     Displays file contents with x,y coordinates.

    /D     delimiters      Specifies additional delimiters such as ","
                           or "\". The built-in delimiters are space,
                           tab, carriage return, and linefeed. Any
                           ASCII character can be used as an additional
                           delimiter. The maximum number of delimiters,
                           including the built-in delimiters, is 15.

    /?                     Displays this help message.

NOTE: 1) SETX writes variables to the master environment in the registry.

      2) On a local system, variables created or modified by this tool
         will be available in future command windows but not in the
         current CMD.exe command window.

      3) On a remote system, variables created or modified by this tool
         will be available at the next logon session.

      4) The valid Registry Key data types are REG_DWORD, REG_EXPAND_SZ,
         REG_SZ, REG_MULTI_SZ.

      5) Supported hives:  HKEY_LOCAL_MACHINE (HKLM),
         HKEY_CURRENT_USER (HKCU).

      6) Delimiters are case sensitive.

      7) REG_DWORD values are extracted from the registry in decimal
         format.

Examples:
    SETX MACHINE COMPAQ
    SETX MACHINE "COMPAQ COMPUTER" /M
    SETX MYPATH "%PATH%"
    SETX MYPATH ~PATH~
    SETX /S system /U user /P password  MACHINE COMPAQ
    SETX /S system /U user /P password MYPATH ^%PATH^%
    SETX TZONE /K HKEY_LOCAL_MACHINE\System\CurrentControlSet\
         Control\TimeZoneInformation\StandardName
    SETX BUILD /K "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows
         NT\CurrentVersion\CurrentBuildNumber" /M
    SETX /S system /U user /P password TZONE /K HKEY_LOCAL_MACHINE\
         System\CurrentControlSet\Control\TimeZoneInformation\
         StandardName
    SETX /S system /U user /P password  BUILD /K
         "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\
         CurrentVersion\CurrentBuildNumber" /M
    SETX /F ipconfig.out /X
    SETX IPADDR /F ipconfig.out /A 5,11
    SETX OCTET1 /F ipconfig.out /A 5,3 /D "#$*."
    SETX IPGATEWAY /F ipconfig.out /R 0,7 Gateway
    SETX /S system /U user /P password  /F c:\ipconfig.out /X
65

Создайте новую переменную среды с именем PROMPT. Установите значение переменной в желаемое приглашение.

21

Чтобы изменить внешний вид вашей подсказки DOS (или "Командная строка"), щелкните правой кнопкой мыши "Компьютер" (обычно на рабочем столе Windows или в меню "Пуск" Windows), а затем выполните следующие действия:

  1. Нажмите на ярлык "Расширенные настройки системы"
  2. Нажмите кнопку «Переменные среды ...»
  3. Нажмите кнопку «Создать ...» ("Пользовательская переменная" влияет только на вас, а "Системные переменные" влияет на всех пользователей)
  4. Создайте переменную с именем "PROMPT" и вставьте желаемый текст подсказки (как я добавил для вас на последнем рисунке ниже)
  5. Нажмите кнопку "ОК", чтобы закрыть окно "Переменные среды"
  6. Нажмите кнопку "ОК", чтобы закрыть окно "Свойства системы"

Это изменение также переживет перезагрузки.

5

Отредактируйте команду меню или ссылку, которая запускает командную строку, измените ее цель, например.

%SystemRoot%\system32\cmd.exe /K "prompt $p$g$_$f"

И если требуется дополнительный пробел перед курсором:

%SystemRoot%\system32\cmd.exe /K "prompt $p$g$_$f "
4

Windows поставляется с Windows PowerShell, которая позволяет передавать по конвейеру среди других бывших функций только для Linux.

Вы можете запустить его, нажав кнопку «Пуск» и введя PowerShell, что дает вам три варианта. Нажмите PowerShell. Щелкните правой кнопкой мыши строку заголовка окна и выберите «Свойства». В открывшемся окне вы настраиваете параметры просмотра и поведения.

В противном случае вместо того, чтобы открывать PowerShell, выберите и щелкните модули PowerShell.

См. Документацию Microsoft о том, что вы можете сделать:

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

1

Окончательный метод:

setx prompt ""

Для всех пользователей:

setx prompt "" /M

Пример настраиваемого приглашения со стилем:

setx PROMPT "$_$e[0;1;44mN$e[1;30;47mI$e[0;1;44mC$E[35;40m $d$s$t$h$h$h$h$h$h$_$E[1;33;40m$p$_$E[0;0m~$g$s"

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .