Как получить текущее имя пользователя в Windows PowerShell? - PullRequest
268 голосов
/ 18 января 2010

Как получить текущее имя пользователя в Windows PowerShell?

Ответы [ 15 ]

0 голосов
/ 01 февраля 2019

мне проще всего использовать: cd $ home \ Desktop \

приведет вас к рабочему столу текущего пользователя

В моем случае мне нужно было получить имя пользователя, чтобы скрипт мог изменить путь, т.е. C: \ Users \% имя пользователя%. Мне нужно было запустить скрипт, изменив путь к рабочему столу пользователя. Я смог сделать это с помощью сверху и из других источников с помощью апплета get-location.

Возможно, у вас есть другой или даже лучший способ сделать это, но мне это помогло:

$ Path = Get-Location

Set-Location $ Path \ Desktop

0 голосов
/ 08 октября 2018
  1. get-content "cm.txt"
  2. write-host "entr file name" $file = read-host get-content $file
  3. $content = get-content "cm.txt"
  4. $content = get-content "cn.txt" for each ($line in $count) {write-host $line}
0 голосов
/ 07 июля 2017

Если вы привыкли к партии, вы можете позвонить

$user=$(cmd.exe /c echo %username%)

Это в основном крадет вывод из того, что вы получили бы, если бы у вас был командный файл с просто "echo% username%".

0 голосов
/ 30 декабря 2015

В моем случае мне нужно было получить имя пользователя, чтобы скрипт мог изменить путь, т.е. c:\users\%username%\. Мне нужно было запустить скрипт, изменив путь к рабочему столу пользователя. Я смог сделать это с помощью сверху и из других источников с помощью апплета get-location .

Возможно, у вас есть другой или даже лучший способ сделать это, но у меня это сработало:

$Path = Get-Location

Set-Location $Path\Desktop
0 голосов
/ 04 августа 2014

Я не видел примеров Add-Type . Вот пример использования GetUserName непосредственно из advapi32.dll.

$sig = @'
[DllImport("advapi32.dll", SetLastError = true)]
public static extern bool GetUserName(System.Text.StringBuilder sb, ref Int32 length);
'@

Add-Type -MemberDefinition $sig -Namespace Advapi32 -Name Util

$size = 64
$str = New-Object System.Text.StringBuilder -ArgumentList $size

[Advapi32.util]::GetUserName($str, [ref]$size) |Out-Null
$str.ToString()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...