编辑: unix 实现似乎存在问题,这并不奇怪,因为它仍然是一个 alpha 版本。有关更多信息,请参阅此问题。
在我的 Mac 上尝试 Powershell 一直很有趣,并且知道我决定尝试制作一个简单的模块并导入它。我正在运行最新版本(6,alpha,release 12)。我一直未能导入它:
cat ./Foo/Foo.psm1
function Foo {
param()
}
{
Write-Output "foo says hi"
}
}
cat ./foo-test.ps1
# add the current directory as a module dir
$env:PSModulePath = "/Users/john.doe/scripts/test"
Import-Module Foo
Import-Module : The specified module 'Foo' was not loaded because no valid module file was found in any module directory.
At /Users/john.doe/scripts/test/foo.ps1:3 char:1
+ Import-Module Foo
+ ~~~~~~~~~~~~~~~~~
+ CategoryInfo : ResourceUnavailable: (Foo:String) [Import-Module], FileNotFoundException
+ FullyQualifiedErrorId : Modules_ModuleNotFound,Microsoft.PowerShell.Commands.ImportModuleCommand
然后我尝试在 Windows 上导入模块。它立即起作用:
PS C:\GitHub> $env:PSModulePath="C:\Github\"
PS C:\GitHub> Import-Module Foo
PS C:\GitHub> start
(是的,我也尝试在 Mac 上的 shell 中执行此操作,但仍然不行)。
所以我想知道Mac上是否还不支持模块,或者我在这里做错了什么?