2012-09-26 13 views
5

, wenn Sie verwenden Get-ChildItem Sie bekommen so etwas wieGet-ChildItem mit CreationTime anstelle von LastWriteTime?

Mode    LastWriteTime  Length Name 
----    -------------  ------ ---- 
d----   3/1/2006 9:03 AM   Bluetooth Software 
d---s   5/10/2006 8:55 AM   Cookies 
d----   5/9/2006 2:09 PM   Desktop 

Das ist in Ordnung. Ich möchte jetzt nur die LastWriteTime Ausgabe zu CreationTime ändern. Alles andere sollte gleich sein. Irgendwelche Ideen?

+0

hat falsch schreiben Sie Creation oder haben Sie bedeutet, LastWriteTime durch CreatingTime zu ersetzen? – dugas

+0

yeah Ich denke, ich habe – silla

Antwort

3

Sie können wählen es mit Select-Object oder einer des Format-* Cmdlets

Get-ChildItem | Select-Object Mode,CreationTime,Length,Name 
3

Wenn Sie bedeutet, dass Sie die Eigenschaft Creation statt Lastwritetime zeigen wollte, dann könnte man die Ausgabe des Get-ChildItem an Select-Object und angeben, welche Eigenschaften wählen:

Get-ChildItem | Select Mode, CreationTime, Length, Name 
4

Für einmalige Änderungen an angezeigten Spalten, Rohrleitungen zu select oder Format-Table ist am einfachsten. Wenn Sie dies zu einer dauerhaften Änderung machen möchten, müssen Sie sich mit den Formatdateien befassen, die regeln, wie Powershell Dateisystemobjekte anzeigt.

Das Bearbeiten der vorhandenen Formatdatei (wahrscheinlich unter $env:SystemRoot\system32\WindowsPowershell\v1.0\FileSystem.format.ps1xml) wird nicht empfohlen, da diese Datei unten einen Signaturblock hat. Durch Ändern des Dateiinhalts wird die Signatur ungültig, was zu Problemen führen kann.

Stattdessen können Sie Ihre eigene Formatdatei definieren, die die Standarddatei außer Kraft setzt. Speichern Sie die Datei unter als FileFormat.format.ps1xml und

Update-FormatData -Prepend c:\FileFormat.format.ps1xml

standardmäßig ausgeführt, CreationTime wird gezeigt, nicht LastWriteTime.

Format Dateiinhalt (von Real-Format-Datei kopiert, verändert nur die entsprechenden Bits):

<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> 
+0

Schöne Informationen. – dugas

2

in V3 können Sie dynamische Typ-Daten verwenden:

PS III> # UNTESTED: if work...you can paste this in your profile 
    PS III> 
    PS III> Update-TypeData -TypeName System.IO.FileInfo,System.IO.DirectoryInfo -MemberName DFPR DefaultDisplayPropertySet Mode,CreationTime,Length,Name 
Verwandte Themen