如何将选项卡添加到文本文件

时间:2013-07-27 19:36:34

标签: powershell text format

我正在运行for循环来查询某些服务,然后将服务及其选定的属性输出到每个单独行上的文本文件中,其中每个属性由制表符分隔,但我没有想出了如何将标签添加到文本文件中。

例如,这是我代码中的当前字符串集:

write-output $server, $servicename, $status, $startname | out-file -append output.txt

我想将上面的字符串附加到 output.txt ,所以它会显示如下:

server1 <tab> servername <tab> status <tab> startname
server2 <tab> servername <tab> status <tab> startname

4 个答案:

答案 0 :(得分:5)

“`t”会输出制表符。

答案 1 :(得分:5)

尝试这样的事情:

"{0}`t{1}`t{2}`t{3}" -f $server, $servicename, $status, $startname |
    Out-File "C:\path\to\output.txt" -Append

如果您的输入数据是对象列表,您也可以使用Export-CsvConvertTo-Csv

... | ConvertTo-Csv -Delimiter "`t" -NoTypeInformation |
    Out-File "C:\path\to\output.txt" -Append

答案 2 :(得分:0)

显然你可以在PowerShell中使用``t`作为标签。请参阅Stack Overflow问题 Writing tabs to a file using PowerShell

大多数语言都支持\t

答案 3 :(得分:-1)

使用数组可以获得更大的灵活性。

假设您已将信息放入数组中。

$servers[] = array($server, $servicename, $status, $startname);

然后你可以用一个标签来破坏这些值,如下所示:

foreach($servers as $server)
  echo implode("\t", $server) . "\n";