首页 > 解决方案 > 如何在不显示当前目录的情况下显示文件和文件夹名称以及终端图标?

问题描述

我想删除显示时占用的空间/区域

Directory: C:\Users\varun\Desktop\Projects\advanced-react-patterns-v2

当我运行命令时:

Get-ChildItem | Format-Wide

截屏]

额外细节:

注意:命令

Get-ChildItem -Name

未能显示终端图标是我的主要目标。

在此处输入图像描述

标签: windowspowershellpowershell-2.0powershell-3.0windows-terminal

解决方案


当您使用Format-*命令时,您使用的是 File 和 Directory 对象的默认格式输出,它按目录对文件进行分组 - 因此目录名称位于顶部。

如果你想绕过这个,你必须编写你自己的format.ps1xml文件,然后将格式添加到你的输出中。

$files = Get-ChildItem
foreach ($file in $files) {
    $file.PSObject.TypeNames.Insert(0,'Custom.Output.Type')
    $file
}

指定 Typename 的 XML 小样本,可根据需要自定义。

<View>
    <Name>CustomFileFormatting</Name>
    <ViewSelectedBy>
        <TypeName>Custom.Output.Type</TypeName>
    </ViewSelectedBy>
    <TableControl>
        <AutoSize />
        <TableHeaders>
            <TableColumnHeader>
                <Label>FullName</Label>
                <Alignment>Left</Alignment>
            </TableColumnHeader>
        </TableHeaders>
        <TableRowEntries>
            <TableRowEntry>
                <TableColumnItems>
                    <TableColumnItem>
                        <PropertyName>FSObject</PropertyName>
                    </TableColumnItem>
                </TableColumnItems>
            </TableRowEntry>
        </TableRowEntries>
    </TableControl>
</View>

推荐阅读