Я использую пакет PowerShell v6.1.1 на сервере CentOS 7.
Я хотел бы скрыть некоторые функции модуля, который я создал, потому что конечный пользователь не должен их использовать. Это функции, которые он должен использовать, которые я хочу скрыть.
Пользователь должен использовать function1, function1 использовать function2, но пользователь не должен использовать function2, поэтому я не хочу, чтобы он видел function2.
Export-ModuleMember скрывает его только при использовании Get-Command -Module myModule, но автозаполнение с вкладкой по-прежнему показывает все функции.
Вы можете попытаться явно определить функции для экспорта в файле psd1. Все остальные функции не экспортируются. Это зависит от того, сколько у вас публичных функций. Другим может быть использование семантики Verb-Noun для публичных функций и использование шаблона *-* для экспорта функций (в файле psd1 -> docs.microsoft.com/en-us/powershell/developer/module/…)
@Moerwald, это действительно был psd1, который нужно было изменить, и он делает именно то, что мне нужно, спасибо, приятель!

Комментарий Мёрвальда дал мне правильный способ скрыть функции модуля как от команды Get-Command, так и от автозаполнения вкладок.
Export-ModuleMember 'function1' в файле *.psm1 отображается только определенная функция при использовании Get-Command -Module myModule, но автозаполнение позволит пользователю использовать все функции из модуля.
Function-ToExport= 'function1' в файле *.psd1 сделает определенную функцию единственной, которую может использовать конечный пользователь, и эти функции смогут использовать другие функции в экспортируемом модуле.
Get-Command -Module myModule, но автодополнение с вкладкой по-прежнему показывает все функции. Можете ли вы предоставить минимальный воспроизводимый пример? Я не могу воспроизвести проблему ни в Windows PowerShell 5.1, ни в PowerShell Core 6.2.0.