batch-file - 如何在这一行添加空格?
问题描述
我正在制作域解析器,但我不喜欢文本位于窗口边框的方式。这条线是set /p domainname=Enter Domain Name^> %ESC%[92m
我想在它说之前添加一个空格Enter Domain Name>
这就是它的样子
所以它不会正好贴在窗口边框上,这会使它看起来更好一些。我该怎么办?我一直无法找到有关如何解决此问题的任何信息。
解决方案
作为替代方案,您可以使用提示技术来显示任何文本消息(最长 511 个字符),而不必担心前导空白字符。
它的工作原理如下:
set "prompt=Your text message"
cmd /d /k <nul
set /p "myVar="
把它放到一个可重用的函数中:
@echo off
setlocal EnableExtensions
call :getInput domainname " Enter Domain Name > %ESC%[92m"
echo domainname is [%domainname%]
pause
exit /b
:getInput <inputVar> ["Message String"]
setlocal DisableDelayedExpansion
set "Msg=%~2"
if defined Msg (
REM For prompt strings, $ is an escape character so it should be escaped with another one.
set "prompt=%Msg:$=$$%"
"%COMSPEC%" /d /k <nul
)
endlocal
set /p "%~1="
exit /b
推荐阅读
- c++ - 如何使用 STL 算法找到最小值和最大值?
- algorithm - 返回最小正整数 > 0
- ios - 在 Swift UI 中,当我使用 NavigationLink 时,屏幕上没有显示任何内容
- node.js - 找不到模块'C:\node_modules\npm\bin\npm-cli.js
- if-statement - 这个公式中的矩阵大小是如何声明的?
- python - 意图不起作用,只有启动请求是
- pygame - 你如何解决:“AttributeError:'tuple'对象没有属性'player'”?
- python - 即使在按键释放时仍会打印文本
- python-3.x - 如何在 keras 序列模型中添加注意力层(以及 Bi-LSTM 层)?
- android - 启动闪屏活动,同时将主要活动隐藏在下方,完成所有布局和测量后,隐藏闪屏活动