3

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

4 に答える 4

5

「`t」はタブ文字を出力します。

于 2013-07-27T19:41:15.633 に答える
5

次のようなことを試してください:

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

Export-Csv入力データがオブジェクトのリストである場合は、またはも使用できる場合がありますConvertTo-Csv

... | ConvertTo-Csv -Delimiter "`t" -NoTypeInformation |
    Out-File "C:\path\to\output.txt" -Append
于 2013-07-27T19:42:48.973 に答える
0

どうやら、PowerShell のタブには ``t` を使用できます。スタック オーバーフローの質問PowerShell を使用してタブをファイルに書き込むを参照してください。

ただし、ほとんどの言語はサポートし\tています。

于 2013-07-27T19:39:55.110 に答える
-1

配列を操作することで、さらに柔軟性が高まります。

情報を配列に入れたとしましょう。

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

次に、次のように、タブを使用して値を内破できます。

foreach($servers as $server)
  echo implode("\t", $server) . "\n";
于 2013-07-27T19:43:55.880 に答える