陈奇网络工作室

真正的跨平台!在Linux上运行AzurePowerShell脚本

云计算

前几天,给同事写了PowerShell脚本,取而代之的是同事的白眼。 也就是说,我这都是linux。 你给我写PowerShell的脚本。 我要去哪里? 我真的想回白眼。 快到0202年了。 PowerShell以为只能在windows上跑。 PowerShell PowerShell Core问世已经很久了,但也有人天真地认为PowerShell只适用于Windows平台。 事实上,从PowerShell Core开始,PowerShell脚本现在可以直接跑向所有Linux平台。 而且体验基本上是真正无缝的移植! 很多脚本一个字也不需要改变!

用Azure的脚本来说,我们来看看如何在Linux上玩PowerShell

首先,我们需要安装PowerShell,首先准备repo信息

curl https://packages.Microsoft.com/config/rhel/7/prod.repo|su dotee/etc/yum.repos.d/Microsoft.repo

然后直接安装yum install。 在linux上安装确实方便、快速

sudo yum install -y powershell

? 直接输入Pwsh进入PowerShell

接下来安装Azure的模块。 注意,在linux上安装最新的az module。 也可以试试其他命令。 语法与windows的powershell几乎没有区别

接下来,我们来看看如何登录Azure。 和windows一样,可以用login-azaccount登录,但区别在于没有图形界面,需要用code登录,和CLI的感觉一样

输入与浏览器对应的代码

可以看到可以get到账户上的信息!

另外,如果想运行几个计时器脚本,认证这个PowerShell core不支持直接用用户名密码登录,所以这里可以用刚才看到的code方式交互登录,或者用service

service principal的介绍前面已经说过了,在此不再赘述。 创建服务打印的方法也相对简单,可以在PowerShell中创建。 如果想给service principal加密码,可以在门户网站上找到service principal

secret可以设定有效期限

? 保存value,否则以后找不到,请务必注意保存

现在可以用这个secret登录了!

$ application id=a67 aa2 ff-f009-4ec9- 93fa-c 773 aa 1442 EC

$Password=******

$ tenant id=b 7283 BFF-0d3d-4728-9189-8513 ee 70744 a

$ password=convertto-securestring? $Password? -AsPlainText? -Force

$Credential=New-Object? system.management.automation.PS credential $ application id,$Password )

添加帐户? -Credential? $Credential? 服务计划? -TenantId? $TenantID? -环境名称? azurechinacloud

登录成功! 我能快乐地跑脚本了

不得不说真的很方便。 微软这个操作必须称赞一件事

详情请访问云服务器、域名注册、虚拟主机的问题,请访问西部数码代理商官方网站: www.chenqinet.cn

相关推荐

后台-系统设置-扩展变量-手机广告位-内容页底部广告位3