Mik*_*Dev 9 powershell node.js serverless-framework
我使用以下NPM命令安装了无服务器框架
npm install -g serverless
Run Code Online (Sandbox Code Playgroud)
当我尝试sls在Powershell中运行无服务器命令时,我得到一个奇怪的结果,提到"cmdlet Select-string".
sls --version
Run Code Online (Sandbox Code Playgroud)
有人可以帮我解决这个问题吗?
Mik*_*Dev 13
似乎PowerShell有一个名为Select-String的命令/ cmdlet,其别名为sls.PowerShell别名sls似乎优先于sl的node.js无服务器命令.
删除PowerShell sls别名的一种方法是在PowerShell中运行以下命令
Remove-Item alias:sls
Run Code Online (Sandbox Code Playgroud)
此更改仅适用于当前的PowerShell会话.
要永久保存sls PowerShell别名,您可以更改Microsoft.PowerShell_profile.ps1文件.
从PowerShell使用以下命令在记事本中打开您的配置文件页面:
notepad $profile
Run Code Online (Sandbox Code Playgroud)
将以下内容添加到文件并保存.
remove-item alias:sls
Run Code Online (Sandbox Code Playgroud)
可以通过从Powershell运行以下内容来重新加载配置文件
. $profile
Run Code Online (Sandbox Code Playgroud)
在我的文件中,您将看到我删除了curl和sls的别名.
现在,我在PowerShell中输入sls时会看到我的期望.

---更新----
更简单的选择是使用命令"serverless"而不是"sls".
对于未来的访问者 - 在当前版本中(如果serverless由 安装npm/yarn)^1.61有一个辅助快捷方式选项:
slss
Run Code Online (Sandbox Code Playgroud)
并且该快捷方式在 Powershell 中完美运行。Imo 这是避免Select-String别名冲突问题的最简单方法,并且不需要对 Powershell 会话或配置进行任何更改。
PS C:\htdocs\serverless> slss -v
Framework Core: 1.61.1
Plugin: 3.2.7
SDK: 2.2.1
Components Core: 1.1.2
Components CLI: 1.4.0
Run Code Online (Sandbox Code Playgroud)
如果serverless由chocolatey(如@Nick Cox 在评论中提到的)slss方法安装,则方法将失败,您可以使用他建议的方法 -sls.exe
| 归档时间: |
|
| 查看次数: |
1492 次 |
| 最近记录: |