我想知道是否可能将 CMD 的窗口标题更改为 /?
我尝试过使用 ^/?
、^/^?
和 "/?"
,但它们都似乎无效。
有人有任何建议吗?
谢谢
我想知道是否可能将 CMD 的窗口标题更改为 /?
我尝试过使用 ^/?
、^/^?
和 "/?"
,但它们都似乎无效。
有人有任何建议吗?
谢谢
通过添加一些不可见字符是可能的。
这个想法来自@npocmaka SO:如何设置以逗号、分号或等号开头的标题?
一个标题以逗号开头的问题也可以用LF字符解决,但在你的情况下,LF在字符串中任何地方都没有帮助。
@echo off
(set LF=^
%=empty=%
)
::Create a FS variable
call :hexprint "0x1C" FS
title /%FS%?
exit /b
:hexPrint string [rtnVar]
for /f eol^=^%LF%%LF%^ delims^= %%A in (
'forfiles /p "%~dp0." /m "%~nx0" /c "cmd /c echo(%~1"'
) do if "%~2" neq "" (set %~2=%%A) else echo(%%A
exit /b
@ECHO OFF
if "%~1"=="_SO42546112_" (
shift
) else (
start "/?" cmd /D /K ""%~f0" "_SO42546112_""
exit
)
/?
的 .bat
脚本,请使用上述概念,例如:@ECHO OFF
SETLOCAL EnableExtensions
rem self wrapper - start
if "%~1"=="_SO42546112_" (
shift
) else (
start "/?" cmd /D /C ""%~f0" "_SO42546112_" %*"
exit /B
rem ↑↑ omit the `/B` switch to close calling `cmd` window
)
rem self wrapper - end
rem check whether the self wrapper works - start
echo 1st "%~1"
echo 2nd "%~2"
echo 3rd "%~3"
echo all %*
pause
rem check whether the self wrapper works - end
rem original script continues here:
start
而不是 title
来更改标题的想法很好。 - jeb
title "/?"
对我有效。编辑:哎呀,刚意识到它会显示带引号的"/?"
。 - phuclv[System.Console]::Title = "/?"
可以直接使用,但如果我们从cmd调用PowerShell,则会启动一个子shell,因此无法保留旧环境。 - phuclvstart "/?"
,它会打开另一个带有正确标题为/?
的 CMD 窗口。不幸的是,这需要打开另一个窗口,并且不能随时更改。 - ditheredtransparencytitle = ^/?
,title = "/?"
... 任何一个。 - phuclv