簡體   English   中英

回顯帶有前面空格但沒有新行的文本

[英]echo text with preceding spaces but without new line

如果我使用<nul set/p= some textset/p "= some text"<nul ,即使使用字符與0xFF代碼,也會刪除前面的空格。 如何在不帶尾隨CR / LF的行的開頭回顯指定數量的空格?

在行的開頭添加退格字符效果很好。

@echo off
:: define BS as a BackSpace character
for /f %%A in ('"prompt $H&for %%B in (1) do rem"') do set "BS=%%A"
set /p "=%bs%     some text"<nul
pause

a)如果在新行上回顯了文本,則只需在輸出文本前面添加退格字符。
<nul set/p=[BS char here directly, without brackets] some text
在ANSI和ASCII碼表中,其代碼為0x08
b)如果需要將文本放置為已經存在的行的延續,則在BS char之前另外添加一個非空格char,例如“ Middle Dot”( 0xFA )。
<nul set/p=[MD char (0xFA), then BS char (0x08)] some text
在WinXP和Win7中可以正常工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM