Как будто вы пытаетесь получить доступ к объекту, который является null
. Рассмотрим ниже пример:
TypeA objA;
. В это время вы только что объявили этот объект, но не инициализировали или не инициализировали. И всякий раз, когда вы пытаетесь получить доступ к каким-либо свойствам или методам в нем, он будет генерировать NullPointerException
, что имеет смысл.
См. Также этот пример:
String a = null;
System.out.println(a.toString()); // NullPointerException will be thrown
Самый первый псевдоним, который я сделал, как только я начал настраивать свой профиль в PowerShell, был 'который'.
New-Alias which get-command
Для добавления этого к профилю введите это:
"`nNew-Alias which get-command" | add-content $profile
и в начале последней строки должен гарантировать, что она запустится как новая строка.
Проверьте этот PowerShell Который .
код, если там предлагает это:
($Env:Path).Split(";") | Get-ChildItem -filter notepad.exe
Я обычно просто ввожу:
gcm notepad
или
gcm note*
gcm является псевдонимом по умолчанию для Получать-команды.
В моей системе, gcm отмечают* выводы:
[27] » gcm note*
CommandType Name Definition
----------- ---- ----------
Application notepad.exe C:\WINDOWS\notepad.exe
Application notepad.exe C:\WINDOWS\system32\notepad.exe
Application Notepad2.exe C:\Utils\Notepad2.exe
Application Notepad2.ini C:\Utils\Notepad2.ini
Вы получаете каталог и команду, которая соответствует тому, что Вы ищете.
Это, кажется, делает то, что Вы хотите (я нашел его на http://huddledmasses.org/powershell-find-path/):
Function Find-Path($Path, [switch]$All = $false, [Microsoft.PowerShell.Commands.TestPathType]$type = "Any")
## You could comment out the function stuff and use it as a script instead, with this line:
#param($Path, [switch]$All = $false, [Microsoft.PowerShell.Commands.TestPathType]$type = "Any")
if($(Test-Path $Path -Type $type)) {
return $path
} else {
[string[]]$paths = @($pwd);
$paths += "$pwd;$env:path".split(";")
$paths = Join-Path $paths $(Split-Path $Path -leaf) | ? { Test-Path $_ -Type $type }
if($paths.Length -gt 0) {
if($All) {
return $paths;
} else {
return $paths[0]
}
}
}
throw "Couldn't find a matching path of type $type"
}
Set-Alias find Find-Path