2017-08-28 42 views
-2

所以我有一个PowerShell脚本读取某些系统信息并将其传递给网络服务器。现在我创建一个带有几个不同文件的USB棒,但它们都具有相同的PowerShell脚本。 但现在我想知道10个文件中的哪个被点击了。脚本读取被点击打开PowerShell的文件名?

这些是链接到powershell.exe与某些参数的lnk文件。

+2

maye这个人可以帮助你:https://stackoverflow.com/questions/5466329/whats-the-best-way-to-determine-the-location-of-the-current-powershell-script –

+0

哪种文件? –

回答

0

如果我正确理解你,你想知道你的脚本已经运行了哪些参数/值?然后你可以使用一些自动变量来包含这些信息,比如$ MyInvocation或$ PsBoundParameters。

作为示例

function Test { 
    param(
     $a, 
     $b 
    ) 

    $MyInvocation.Line 
} 

Test -a 3 -b 1 

将返回 “测试-a 3 -b 1”。

+0

不完全。我有例如10个文件:nr1.png.lnk至nr10.png.lnk。 所有这些文件启动相同的PowerShell脚本。我想要的是知道这10个文件中的哪个被点击了。 直到现在powershell脚本收集一些电脑数据(主机名,用户名等),并将其发送到网络服务器。现在我想添加使用的文件名,但我甚至不知道这是否可能 –

+0

我希望你能从你在其中使用的参数中识别你的lnk文件。如果情况并非如此,那么我现在可以考虑的唯一方法就是向脚本添加一个额外的参数,如CalledBy或任何其他参数,并将其添加到lnk文件的脚本调用中。 –