云计算
前几天,给同事写了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