powershell - 在 PowerShell shell 中的 AZ CLI 中转义密码中的双美元符号
问题描述
我正在尝试运行该az sql db export
命令,它需要 SQL 管理员用户名和密码。我们的密码恰好有两个美元符号,例如 ABC$$123==)。因此,当我运行以下命令时(当然,其中包含有效值):
$pwd = "ABC$$123==)"
az sql db export -s myserver -n mydatabase -g mygroup -p $pwd-u login \
--storage-key MYKEY== --storage-key-type StorageAccessKey \
--storage-uri https://myAccountName.blob.core.windows.net/myContainer/myBacpac.bacpac
我得到这个回应:
')' is not recognized as an internal or external command,
operable program or batch file.
我已经尝试了很多转义的变体,但没有找到有效的正确方法。最后,我计划从 Azure Key Vault 读取密码,并将其直接传递给 az cli 命令。我该怎么做才能让它工作?
解决方案
powershell 中有两种类型的引号 - 单引号和双引号。在双引号中,您可以传入变量。在单引号中,一切都是字面意思。对于像您的密码这样的情况,我建议只使用文字:
$pwd = 'ABC$$123==)'
推荐阅读
- python - 遗传算法群体个体作为阵列
- node.js - npm install 报告未引用的 Angular 组件版本
- python - python - 如何在没有熊猫的情况下将一个值拆分为python中的两条记录?
- java - 简单的应用程序崩溃了我只是想改变一些视图的可见性
- python - 如何将任务并行分配给多个 celery worker?
- plugins - 用于聊天前缀的插件 BungeeCord
- angular - 使用 Angular Universal 的服务器端渲染 (SSR)
- c# - 在类库中注册 IConfiguration 以进行单元测试
- python - 使用csvreader比较python中的两个文件
- java - 无法在春季应用程序中使用招摇