如何在cmd.exe或powershell中输入制表符?

如何在cmd.exe或powershell中输入制表符?

gawk -F\t可以,但当涉及到时sort,它失败了。在 Linux 或 Cygwin 下,$'\t'可以做到这一点。但是,要输入特殊键Tab,没有办法。有人能想出办法吗?

答案1

在 PowerShell 中,转义字符是`。包含制表符的字符串可以写为

"`t"

答案2

感谢Yahoo,百度和Stack Overflow的朋友们,这个难题终于解决了。

sort -t":" -k1 /var/log/accessfile

这句话给了我一个提示。

现在的答案是所有技巧的组合。

  1. cmd /f:off
    
  2. sort -t"  "  -k16 foobar.txt 
    

    (制表符位于双引号中)

foob​​ar.txt是一个以制表符分隔的文本文件。

关键是双引号 ( "")。

答案3

对于我来说,这是一个首选选项 - 而不必关闭制表符补全或更改映射键(更改为不同的键):-

创建一个“SetTabEV.cmd”脚本 - 将名为“Tab”的环境变量设置为环境变量(- 考虑使其在您的“PATH”内/通过“PATH”保持可访问) - 您始终可以尝试使用适用于 *nix(Linux / UNIX)环境的脚本进行等效操作;例如:

Set Tab=    

运行。

然后引用/传递它的值 - '%Tab%';例如:

MyScript.cmd "A%Tab%B%Tab%C"

或者对于 PowerShell:

PowerShell MyScript.ps1 """"A%Tab%B%Tab%C""""

但是对于 PowerShell,可能更喜欢使用少一组引号(-三重引号),方法是使用/传递 PowerShell 制表符转义序列:

PowerShell MyScript.ps1 """A`tB`tC"""

如果您乐意永久拥有一个包含选项卡的环境变量,则可以通过 Windows“高级系统设置”的“环境变量”进行设置,而不必每次都使用脚本。

相关内容