我试图找到一种方法来获取定义PowerShell 函数的文件路径(例如Test1或Test2),而不是调用者的路径,这可以通过$PSScriptRoot
自动变量轻松获得.
考虑以下文件夹结构:
c:\Scripts\Test.ps1
c:\Scripts\Test1\Test1.ps1
c:\Scripts\Test2\Test2.ps1
Run Code Online (Sandbox Code Playgroud)
Test.ps1
Set-Location $PSScriptRoot;
. .\Test1\Test1.ps1;
. .\Test2\Test2.ps1;
Test1;
Test2;
Run Code Online (Sandbox Code Playgroud)
Test1.ps1
function Test1 {
[CmdletBinding()]
param (
)
Write-Host -Object "Entering Test1";
Write-Host -Object "Exiting Test1";
}
Run Code Online (Sandbox Code Playgroud)
Test2.ps1
function Test2 {
[CmdletBinding()]
param (
)
Write-Host -Object "Test2";
Write-Host -Object "Exiting Test2";
}
Run Code Online (Sandbox Code Playgroud)
我已经使用了各种关于性的尝试$PSCmdlet
和$MyInvocation
自动变量,但似乎无法找到一个方法来获取到的路径定义函数,而不是通常是主叫所在的文件.
换句话说,当C:\Scripts\Test1\Test1.ps1
从Test1
函数中调用时,我如何从函数内部获取路径Test.ps1
?这同样适用于该Test2.ps1
脚本,和Test2
功能.我如何C:\Scripts\Test2\Test2.ps1
从Test2
函数内部获取路径?
这是不可能的,因为我正在使用.
呼叫运算符,将函数导入当前会话?
全部,我试图Role
从Azure Cloud Service Definition
xml文件或Azure Cloud Service Configure
xml文件中读取信息.
但发现XPath
对他们没有用.两个xml文件都包含名称空间.默认情况下,命名空间没有别名.如果我为它添加别名.Visual studio会提醒我不允许.
说你的定义如下.和XmlPath是/ServiceDefinition/WebRole/@vmsize
.我在XPath在线工具中测试了它.它也无法为我找到合适的价值.
<?xml version="1.0" encoding="utf-8"?>
<ServiceDefinition name="test" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition" schemaVersion="2012-10.1.8">
<WebRole name="test" vmsize="Small">
<Sites>
<Site name="Web">
<Bindings>
<Binding name="Endpoint1" endpointName="HttpsEndpoint" />
<Binding name="Endpoint2" endpointName="HttpEndpoint" />
</Bindings>
</Site>
</Sites>
<Endpoints>
<InputEndpoint name="HttpsEndpoint" protocol="https" port="443" certificate="Certificate1" />
<InputEndpoint name="HttpEndpoint" protocol="http" port="80" />
</Endpoints>
<Imports>
<Import moduleName="Diagnostics" />
<Import moduleName="RemoteAccess" />
<Import moduleName="RemoteForwarder" />
</Imports>
<Certificates>
<Certificate name="Certificate1" storeLocation="LocalMachine" storeName="My" />
</Certificates>
<ConfigurationSettings>
<Setting …
Run Code Online (Sandbox Code Playgroud) 我正在尝试编写一个 Python 3.5 Flask 应用程序,将用户重定向到 OAuth URL,以进行身份验证/授权。作为该重定向的一部分,我必须包括Authorization
标题。redirect()
Flask 中的内置方法似乎不支持添加 HTTP 标头。
在这样的应用程序中处理这个问题的正确方法是什么?
用户是AD安全组"Domain\Sql Admins"的成员,安全组"Domain\Sql Admins"是Windows Server上本地Administrators组的成员.
我尝试了以下PowerShell脚本:
$u = "Username"; net localgroup administrators | Where {$_ -match $u}
Run Code Online (Sandbox Code Playgroud)
如果用户直接添加到管理员组,则此脚本将仅返回该用户.在找到我的用户之前,是否必须遍历管理组中的所有组?或者还有另一种方式吗?
我有一个简单的PowerShell DSC配置块,可确保用户帐户不存在,当我尝试将其应用到本地系统时Start-DscConfiguration
,我收到类似于以下内容的错误消息:
WS-Management服务无法处理请求.WMI服务返回"拒绝访问"错误.
如何成功应用DSC配置?
这是我正在使用的配置块:
configuration MyConfig {
User Trevor2 {
UserName = 'Trevor2';
Ensure = 'Absent';
}
}
$Path = 'c:\dsc\MyConfig';
MyConfig -OutputPath $Path;
Start-DscConfiguration -Wait -Verbose -Path $Path;
# Clean up MOF files
Remove-Item -Path $Path -Recurse;
Run Code Online (Sandbox Code Playgroud) 在Windows 10 Build 10240上运行PowerShell版本5.0。我需要获取一个PSCredential
包含LocalSystem上下文的实例。我该如何实现?
https://msdn.microsoft.com/zh-CN/library/windows/desktop/ms684190(v=vs.85).aspx
我有一个云服务,里面有两个虚拟机.我正在尝试按照本文中列出的步骤来保留我的云服务的IP地址.
Login-AzureRmAccount -TenantId <my tenant id>
Set-AzureRmContext -SubscriptionId <my subscription id>
New-AzureReservedIP -ReservedIPName myname -Location "Central US" -ServiceName mycloudservicename
Run Code Online (Sandbox Code Playgroud)
我总是得到这个错误:
New-AzureReservedIP:ResourceNotFound:未找到任何部署.
VM是在新门户中创建的,但是是经典模式.我不确定这是不是我的问题.我尝试过其他cmdlet组合来添加帐户或设置订阅但没有任何帮助.
有任何想法吗?
如何使用Amazon Web Services(AWS)PowerShell模块向EC2实例添加标签(键值对)?
我刚刚遇到了doctest
Python中的模块,它可以帮助您针对嵌入在Python文档字符串中的示例代码执行自动测试。最终,这有助于确保Python模块的文档与模块的实际行为之间的一致性。
PowerShell中具有等效功能,因此我可以在.EXAMPLE
PowerShell内置帮助的各部分中测试示例?
这是我要尝试做的一个例子:
function MyFunction ($x, $y) {
<#
.EXAMPLE
> MyFunction -x 2 -y 2
4
#>
return $x + $y
}
MyFunction -x 2 -y 2
Run Code Online (Sandbox Code Playgroud) 我运行了一系列 PowerShell 命令,我想通过CTRL + R
使用正则表达式的后退搜索功能搜索历史记录。要么它现在没有实施,要么我做错了什么。
想象一下,您的历史记录中有一条命令: ssh username@host.name
我想按下CTRL+R
并键入ssh.*host
以将此命令返回到我的 PowerShell 提示符。现在,这似乎不起作用。
问题:我可以使用正则表达式通过 CTRL+R 反向搜索来搜索 PowerShell 命令历史记录吗?
反向搜索返回基于正则表达式的结果。
back-i-search: <expression>
Run Code Online (Sandbox Code Playgroud)
向后搜索失败。
failed-bck-i-search: <expression>
Run Code Online (Sandbox Code Playgroud) powershell ×8
azure ×2
dsc ×1
flask ×1
oauth ×1
python ×1
python-3.x ×1
windows ×1
xml ×1
xpath ×1