session - $env :Username work in PowerShell? 如何

标签 session powershell scripting scripting-language

所以有人在上一个问题中告诉我以下内容:

“$env:Username 始终指创建 powershell session 的用户,而不是当前登录的用户。”

但是当前登录的用户不总是创建 powershell session 的用户吗?

我想我的问题是,您能否向我描述用户 X 为当前登录的用户 Y 创建 powershell session 的一两个场景?

另外我想我不理解 session 的概念。如果右键单击 ps1 文件并选择使用 powershell 运行,谁在创建该 session ?当前登录的用户,还是脚本的创建者?

如果我有一个在登录时运行并调用 ps1 文件的 .bat 文件,那么谁是该 powershell session 的创建者?

非常感谢您提供的任何帮助。

最佳答案

它以 powershell 当前运行的用户身份运行,即使它与登录的用户不同。

PS C:\Windows\system32> $env:username
jasonw

PS C:\Windows\system32> Start-Process powershell.exe -Credential "domain\admin.jasonw" -NoNewWindow -ArgumentList "Start-Process powershell.exe -Verb runAs"
[This opens new window running PS as the user]

PS C:\Windows\system32> $env:username
admin.jasonw

关于session - $env :Username work in PowerShell? 如何,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26533187/

相关文章:

android - session 超时并在 android 中几个小时后自动从应用程序注销

Powershell : How to create IIS 6 Virtual Directory/Web application under a Subfolder

node.js - 安排 Heroku 每 10 分钟左右重新启动 dynos

powershell - 如何将 azure 中的捕获图像从一个订阅复制到另一个订阅

regex - Powershell中的RegEx用下划线替换XML元素名称中的空格

c++ - 使用嵌入式 Python 3 部署应用程序

linux - 循环的 shell 脚本断行?

php - session 期间IP可以改变吗?

session - 单击注销后如何从所有事件 session 中注销?

macos - 保存整个桌面状态?