使用 PowerShell 获取文件扩展名
在处理 PowerShell 脚本时,通常需要从完整路径中提取文件名。例如,你的脚本收到了完整的文件路径,而你只想获取文件扩展名。
本文将讨论几种使用 PowerShell 脚本的文件扩展方法。
在 PowerShell 中使用 Split-Path
获取文件扩展名
要从文件名中分离扩展名,我们可以使用 -Leaf
参数来指示我们将在哪里提取扩展名。叶是路径的最后一个元素或一部分。
$filePath = "C:\temp\subfolder\File1.txt";
$extension = (Split-Path -Path $filePath -Leaf).Split(".")[1];
Write-Output $extension
输出:
txt
你可能会注意到,在我们的代码片段中,我们调用了 Split()
函数来拆分提供的路径。
我们使用点 .
作为分隔符,因为文件名和扩展名由点分隔符分隔。然后我们将存储的扩展值称为数组 [1]
。
尝试调用数组 [0]
,你将获得路径的文件名。
示例代码:
(Split-Path -Path $filePath -Leaf).Split(".")[0];
输出:
File1
由于我们使用点字符作为分隔符,因此此方法仅在你的文件名不包含任何其他点时才有效。请记住,点字符可以在文件名中。
在 PowerShell 中使用 Get-ChildItem
Cmdlet 获取文件扩展名
Get-ChildItem
命令在一个或多个指定位置获取项目。例如,如果对象是一个容器,它会获取该容器内的东西,称为子项。
位置可以是文件系统,例如目录,也可以是由不同的 Windows PowerShell 提供程序公开的站点。Get-ChildItem
命令获取文件系统驱动器中的目录、子目录和文件。
由于 Get-ChildItem
cmdlet 处理文件,它有一个 PowerShell 属性属性,我们可以导出该属性以获取查询文件的扩展名。
与 Split-Path
cmdlet 不同,即使文件名中有点字符,此方法也可以正确发送扩展名。
示例代码:
Get-ChildItem 'C:\temp\file.1.txt' | Select Extension
输出:
Extension
---------
.txt
在 PowerShell 中使用 .NET
框架获取文件扩展名
以下方法基于 .NET
框架类。尽管通常不鼓励在 PowerShell 脚本上使用 .NET
框架类,尤其是在本机 PowerShell 命令可用的情况下,但它可能适合此特定用例。
在下面的示例中,如果给定文件名,我们将使用 System.IO.Path
类中的 GetExtension
静态方法:
示例代码:
[System.IO.Path]::GetExtension("File1.txt")
输出:
.txt
如果我们想获取文件名,我们也可以使用 GetFileNameWithoutExtension
静态方法。
示例代码:
[System.IO.Path]::GetFileNameWithoutExtension("File1.txt")
输出:
File1
相关文章
通过 PowerShell 命令在任务计划程序中运行计划任务
发布时间:2024/02/06 浏览次数:133 分类:编程语言
-
本教程将教你使用 PowerShell 命令在任务计划程序中启动计划任务。
使用 PowerShell 下载和安装适用于 Windows 的 Git 客户端
发布时间:2024/02/06 浏览次数:125 分类:编程语言
-
本教程将教你使用 PowerShell 下载和安装适用于 Windows 的 Git 客户端。
在 PowerShell 中运行 SQL 查询
发布时间:2024/02/06 浏览次数:160 分类:编程语言
-
本文介绍如何调用 SQL 服务器的命令、执行 CRUD 操作以及查询 SQL 的其他替代方法。
使用 PowerShell 检查 SQL Server 版本
发布时间:2024/02/06 浏览次数:147 分类:编程语言
-
本教程将教你使用 PowerShell 检查 SQL Server 版本。检查程序的版本是你可以在 PowerShell 中执行的常见操作之一。
使用 PowerShell 获取磁盘空间信息
发布时间:2024/02/06 浏览次数:189 分类:编程语言
-
本文讨论了几个命令,这些命令将导出我们所有系统驱动器的信息,并了解如何使用 PowerShell 确定我们机器中剩余的驱动器空间。
在 PowerShell 中将项目添加到数组
发布时间:2024/02/06 浏览次数:153 分类:编程语言
-
本教程将教你在 PowerShell 中将项目添加到数组中。本教程将介绍在 PowerShell 中向数组添加项目。使用 += 将项目添加到 PowerShell 中的数组
在 PowerShell 中访问 $args 数组
发布时间:2024/02/06 浏览次数:155 分类:编程语言
-
本文将介绍 PowerShell 中的 $args 数组和 $args[] 函数。$args 是一个数组,因此你可以传递多个值并在 PowerShell 脚本或函数中访问它们。
在 PowerShell 中选择数组的所有对象上的一个属性的值
发布时间:2024/02/06 浏览次数:121 分类:编程语言
-
本教程将教你在 PowerShell 中为数组的所有对象选择一个属性的值。数组是值或对象的集合。大多数编程语言都将数组作为基本特征。