在 Windows 批处理文件中,回显的正确方法是什么TAB?
echo A<TAB>B<TAB>C
我知道我可以TAB在条目之间输入字符,但大多数编辑器会将其显示为一串空格。有些甚至会自动将它们转换为空格,我正在寻找更直观的东西。
澄清: <TAB>
这里指的是真正的制表符。我在批处理脚本中查找 C \t。
答案1
TAB只需在支持它的编辑器(例如记事本)中按下该键即可。
因此,如果我输入以下代码:
@echo 1<TAB>b
@echo 2<TAB>c
其结果如下:
答案2
一种解决方案是,您可以设置一个名为 TAB 的环境变量,并将值设置为实际的制表符。您可能需要从文本编辑器中复制并粘贴制表符才能正确输入。我在 Windows 7 中尝试过这种方法,效果很好。
在您的批处理文件中,只需使用 %TAB% 就会插入一个制表符。
答案3
诸如此类的限制是使用 Windows Script Host 或 Powershell 的原因之一。
Windows 脚本宿主已发货(附带)自 98 起的每个 Windows 版本,并且可以安装在 95 和 NT 4 上。
创建一个名为的文件demo.vbs
,并将以下行粘贴到其中并保存。
WScript.StdOut.WriteLine "a" + chr(9) + "b"
现在,从保存它的目录中输入:
demo.vbs
你应该看到:
a b
您还可以
cscript demo.vbs
这将允许您使用cscript
提供的命令行开关。
(已在 Vista 上测试。)
答案4
只要你使用的编辑器能保持标签完整,你就可以下载sed并将其放在你的路径上,然后你可以执行以下操作:
echo "A`B`C" | sed 's/\t/<TAB>/g'
其中每个 ` 代表一个真正的制表符。