相关疑难解决方法(0)

从特定目录将所有函数加载到PowerShell中

假设您是一名系统管理员,他使用PowerShell管理他/她的系统上的很多东西.

你可能已经编写了很多函数来执行你经常需要检查的东西.但是,如果你需要移动很多,使用不同的机器等等,你必须一次又一次地重新输入所有功能才能使用它们.每次我因为某些原因退出并重新启动PowerShell时,我甚至必须这样做,因为它不会记住功能......

我写了一个功能,为我做这个.我在这里发帖是因为我想确定它是万无一失的.函数本身存储在allFunctions.ps1,这就是我在代码中排除它的原因.

基本思想是你有一个文件夹,你可以在其中存储所有ps1文件,每个文件都包含一个函数.在PowerShell中,您转到该目录,然后输入:

. .\allFunctions.ps1
Run Code Online (Sandbox Code Playgroud)

该脚本的内容是这样的:

[string]$items = Get-ChildItem -Path . -Exclude allFunctions.ps1
$itemlist = $items.split(" ")
foreach($item in $itemlist)
{
    . $item
}
Run Code Online (Sandbox Code Playgroud)

此脚本将首先收集目录中的每个文件,这意味着您可能还拥有所有非ps1文件.将排除allFunctions.ps1.

然后我根据空格拆分长字符串,这是常用的分隔符.然后我用Foreach循环遍历它,每次将函数初始化为PowerShell.

假设你有超过100个功能,你永远不知道你需要哪些功能,哪些不会?为什么不输入所有而不是挑剔?

所以我想知道,这里会出现什么问题?我希望这是非常安全的,因为我可能会使用它很多.

powershell

15
推荐指数
3
解决办法
3万
查看次数

标签 统计

powershell ×1