令人难以置信的简单PowerShell脚本......
#Server side storage copy
$SourceStorageAccount = "myStorageAccount"
$SourceStorageKey = "myKey"
$SourceStorageContext = New-AzureStorageContext –StorageAccountName $SourceStorageAccount -StorageAccountKey $SourceStorageKey
失败并显示错误
在E:\ DeploymentScripts \ Storage \ Test.ps1:6 char:51 + ... geContext - StorageAccountName $ SourceStorageAccount -StorageAccount ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~字符串 缺少终结者:“。 + CategoryInfo:ParserError:(:) [],ParseException + FullyQualifiedErrorId:TerminatorExpectedAtEndOfString
最奇怪的部分是,如果我将ps1文件的内容复制并粘贴到PowerShell命令行中,它可以正常工作!发生了什么事?
显然我已经删除了我的存储容器名称和密钥,您需要分配自己的Azure存储帐户名和api密钥来复制它。
编辑:在Notepad ++中编辑的脚本的屏幕截图,其中所有字符都可见......
答案 0 :(得分:4)
与此question类似。
从Web复制cmdlet时,可能会有一些特殊字符。我建议您可以将cmdlet复制到记事本,然后复制到PowerShell。
在终端中使用cat filename.ps1是有帮助的,你可以看到哪些字符是坏的,在编辑器中不明显。
答案 1 :(得分:1)