表示された列を 1 回限り変更する場合は、 select
orにパイプするのFormat-Table
が最も簡単です。これを永続的な変更にしたい場合は、powershell がファイルシステム オブジェクトを表示する方法を管理するフォーマット ファイルを処理する必要があります。
$env:SystemRoot\system32\WindowsPowershell\v1.0\FileSystem.format.ps1xml
ファイルの下部に署名ブロックがあるため、既存のフォーマット ファイル (おそらく ) を編集することはお勧めしません。ファイルの内容を変更すると、署名が無効になり、問題が発生する可能性があります。
代わりに、デフォルトのファイルを上書きする独自のフォーマット ファイルを定義できます。以下のファイルを名前を付けて保存しFileFormat.format.ps1xml
、実行します
Update-FormatData -Prepend c:\FileFormat.format.ps1xml
デフォルトでCreationTime
は、 ではなく が表示されますLastWriteTime
。
フォーマット ファイルの内容 (実際のフォーマット ファイルからコピーし、関連するビットを変更しただけです):
<Configuration>
<SelectionSets>
<SelectionSet>
<Name>FileSystemTypes</Name>
<Types>
<TypeName>System.IO.DirectoryInfo</TypeName>
<TypeName>System.IO.FileInfo</TypeName>
</Types>
</SelectionSet>
</SelectionSets>
<ViewDefinitions>
<View>
<Name>children</Name>
<ViewSelectedBy>
<SelectionSetName>FileSystemTypes</SelectionSetName>
</ViewSelectedBy>
<GroupBy>
<PropertyName>PSParentPath</PropertyName>
<CustomControlName>FileSystemTypes-GroupingFormat</CustomControlName>
</GroupBy>
<TableControl>
<TableHeaders>
<TableColumnHeader>
<Label>Mode</Label>
<Width>7</Width>
<Alignment>left</Alignment>
</TableColumnHeader>
<TableColumnHeader>
<Label>CreationTime</Label>
<Width>25</Width>
<Alignment>right</Alignment>
</TableColumnHeader>
<TableColumnHeader>
<Label>Length</Label>
<Width>10</Width>
<Alignment>right</Alignment>
</TableColumnHeader>
<TableColumnHeader/>
</TableHeaders>
<TableRowEntries>
<TableRowEntry>
<Wrap/>
<TableColumnItems>
<TableColumnItem>
<PropertyName>Mode</PropertyName>
</TableColumnItem>
<TableColumnItem>
<ScriptBlock>
[String]::Format("{0,10} {1,8}", $_.CreationTime.ToString("d"), $_.CreationTime.ToString("t"))
</ScriptBlock>
</TableColumnItem>
<TableColumnItem>
<PropertyName>Length</PropertyName>
</TableColumnItem>
<TableColumnItem>
<PropertyName>Name</PropertyName>
</TableColumnItem>
</TableColumnItems>
</TableRowEntry>
</TableRowEntries>
</TableControl>
</View>
</ViewDefinitions>
</Configuration>