用于读取单击以打开PowerShell的文件名的脚本?

用于读取单击以打开PowerShell的文件名的脚本?,powershell,Powershell,所以我有一个PowerShell脚本,它读取某些系统信息并将其传递给Web服务器。现在我用几个不同的文件创建了一个U盘,但它们都有相同的PowerShell脚本。 但是现在我想知道10个文件中的哪一个被点击了 这些是链接到powershell.exe并带有某些参数的lnk文件。如果我理解正确,您想知道脚本运行时使用了哪些参数/值吗?然后,您可以使用一些包含此信息的自动变量,如$MyInvocation或$PsBoundParameters 例如 function Test { param

所以我有一个PowerShell脚本,它读取某些系统信息并将其传递给Web服务器。现在我用几个不同的文件创建了一个U盘,但它们都有相同的PowerShell脚本。 但是现在我想知道10个文件中的哪一个被点击了


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

如果我理解正确,您想知道脚本运行时使用了哪些参数/值吗?然后,您可以使用一些包含此信息的自动变量,如$MyInvocation或$PsBoundParameters

例如

function Test {
    param(
        $a,
        $b
    )

    $MyInvocation.Line
}

Test -a 3 -b 1

将返回“Test-a3-b1”。

maybee此选项可以帮助您:哪些类型的文件?不完全正确。例如,我有10个文件:nr1.png.lnk到nr10.png.lnk。所有这些文件都会启动相同的powershell脚本。我想知道这10个文件中哪一个被点击了。到目前为止,powershell脚本收集一些pc数据(主机名、用户名等)并将其发送到Web服务器。现在我想添加使用过的文件名,但我甚至不知道这是否可能。我希望您能从中使用的参数识别lnk文件。如果不是这样的话,我现在唯一能想到的方法就是在脚本中添加一个额外的参数,比如CalledBy或其他什么,然后将其添加到lnk文件中的脚本调用中。