在 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'
其中每個 ` 代表一個真正的選項卡。