当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 在 PowerShell ISE 中跳跃

作者:精品下载站 日期:2024-12-14 07:49:13 浏览:13 分类:玩电脑

在 PowerShell ISE 中跳跃


白天,我可能会在 PowerShell ISE 中处理多个文件。通常这些文件是不同模块的一部分,因为我使用 git,所以我通常需要与我正在处理的文件位于同一目录中。这需要在 PowerShell ISE 提示符中手动更改大量位置。或者我可能会打开 PowerShell ISE,然后从 MRU 列表中选择一些文件。但同样,如果我需要跳转到相应的目录,那可能是一个繁琐的过程。

这是一个例子。

[玩转系统] 在 PowerShell ISE 中跳跃

我正在开发我的记忆工具模块,你可以看到路径。如果我的 ISE 提示符当前为 C:\,我必须找到文件的路径,可以通过将鼠标悬停在选项卡上来完成此操作,然后使用 Set-Location 或 cd 别名来更改目录。需要有更好的方法。这是我的。

Set-ISELocation.ps1:

#requires -version 4.0
#requires -module ISE




Function Set-ISELocation {
[cmdletbinding()]
Param()

#save current location so that you can pop back
Push-Location

#get the path from the currently select file in the ISE
$current = $psise.CurrentFile.FullPath

#split the path to get the parent path
$target = Split-Path -Path $current

#change location
Set-Location -path $target

}

#define an alias for the function
Set-Alias -Name jmp -Value Set-ISELocation

该功能非常简单。它获取 PowerShell ISE 中当前活动文件的文件名,并将目录位置更改为脚本的父文件夹。我还使用 Push-Location 将当前位置保存到位置堆栈中。这样做的好处是,如果您需要跳转到之前的位置,可以使用 Pop-Location。您很快就会看到它的实际效果。

现在,您可以将此功能加载到 PowerShell ISE 配置文件中,并添加附加组件菜单的快捷方式。但我想,因为我很可能已经在控制台提示符处准备好简单地创建一个别名了。

以下示例展示了在 ISE 中选择不同文件时可能出现的情况。

[玩转系统] 在 PowerShell ISE 中跳跃

请注意,您可以使用 popd 别名(用于 Pop-Location)跳回之前的位置。

我在 PowerShell ISE 配置文件中使用这样的函数。

. C:\scripts\Set-ScriptLocation.ps1

但我们非常欢迎您根据需要调整功能。我希望您能让我知道这对您来说效果如何。使用 GitHub 报告任何问题或请求。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯