Вы не можете сделать это с псевдонимом, потому что псевдонимы PowerShell могут ссылаться только на другую команду имя или путь и, следовательно, не могут включать ни аргументы , ни пользовательскую логику.
Хотя вам нужна функция , она не обязательно должна быть значимой :
function which { if ($args.count) { Get-Command @args } else { Throw "Missing command name." } }
Обратите внимание, однако, что при передаче -?
для отображения справки Get-Command
работает, завершение табуляции аргументов не работает.
Чтобы получить завершение табуляции, вам нужно написать прокси-функцию или хотя бы реплицировать объявления параметров Get-Command
- что тогда делает , Значительная функция.
Если проблема только в размере $PROFILE
, вы можете написать прокси script вместо - which.ps1
- который вы также можете вызвать с помощью which
, предполагая, что вы разместите его в одном из каталогов, перечисленных в $env:Path
.