Azure的CLI目前已经是基于Python的2.0版本。其信息在下面的链接可以找到:

https://github.com/Azure/azure-cli

其安装方法可以根据网站上描述的命令实现:

curl -L https://aka.ms/InstallAzureCli | bash

但这种安装模式是交互式的,不能实现静默安装。

本文将介绍如何采用expect实现静默安装。

一、说明

根据https://docs.microsoft.com/en-us/cli/azure/install-az-cli2中描述的安装指南,在安装CLI前,有一些准备工作:

我用的是CentOS7.3版本的Linux,其Pre-Request为:

sudo yum check-update; sudo yum install -y gcc libffi-devel python-devel openssl-devel

安装命令为:

curl -L https://aka.ms/InstallAzureCli | bash

由于安装过程有交互,所以采用inspect来实现预期的交互安装。

二、安装

两个脚本:

1. installAzureCli.sh

做安装前的准备工作,并调用expect的脚本:

#!/bin/bash
yum update
yum install -y expect
yum install -y gcc libffi-devel python-devel openssl-devel
expect test.sh

2. test.sh

进行安装:

#!/usr/bin/expect -f
set timeout
spawn /bin/sh -c "curl -L https://aka.ms/InstallAzureCli | bash"
expect "*)*"
send "\r"
expect "*)*"
send "\r"
expect "*)*"
send "\r"
expect "*)*"
send "\r"
expect "*)*"
send "\r"
interact

其中timeout设置比较长,是保证在安装时不会中断,安装中都是默认回车就ok,所以全部是发送回车即可。

三、验证

输入:

[root@hwwaf01 test]# az
 
     /\
    /  \    _____   _ _ __ ___
   / /\ \  |_  / | | | \'__/ _ \
  / ____ \  / /| |_| | | |  __/
 /_/    \_\/___|\__,_|_|  \___|
 
Welcome to the cool new Azure CLI!
 
Here are the base commands:
 
account : Manage subscriptions.
acr : Manage Azure container registries.
acs : Manage Azure Container Services.
ad : Synchronize on-premises directories and manage Azure Active Directory
resources.
appservice : Manage your App Service plans.
batch : Manage Azure Batch.
……

说明已经安装成功。

[root@hwwaf01 test]# az --version
azure-cli (2.0.)
 
acr (2.0.)
acs (2.0.)
appservice (0.1.)
……..

可以检查其版本。

登录AzureChina:

az cloud set --name AzureChinaCloud
az login --username admin@xxxx.partner.onmschina.cn
Password:

输入密码后,就可以登录了。

最新文章

  1. android开发中难免遇到listview刷新数据出现异常
  2. Java/JavaWeb中读取资源文件
  3. jquery实现智能表单
  4. jQuery on(),live(),trigger()
  5. java int转integer方法
  6. Android Gradle 编译错误Java finished with non-zero exit value 2
  7. HDU 2897 邂逅明下(巴什博奕)
  8. git 使用系列(一)—— git stash 的使用
  9. 【算法系列学习】Dijkstra求最短路 [kuangbin带你飞]专题四 最短路练习 D - Silver Cow Party
  10. Linux网络编程--wireshark分析TCP包头的格式
  11. objc写一个NSMutableArray不连续索引替换对象的方法
  12. IDEA mybatis mapper类跳转到xml文件
  13. CentOS7.5脱机安装SQL Server 2017(NEW)
  14. SQLI DUMB SERIES-14
  15. Java基础知识思维导图
  16. Is there a way to avoid undeployment memory leaks in Tomcat?
  17. android 组建添加透明度
  18. 在字符编码格式选项里UTF-8(无BOM)
  19. 安装mysql-5.6版本步骤与卸载
  20. TortoiseSVN 清空已保存的用户信息

热门文章

  1. HTTP协议—常见的HTTP响应状态码解析
  2. poj 1265 Area【计算几何:叉积计算多边形面积+pick定理计算多边形内点数+计算多边形边上点数】
  3. C#遍历指定文件夹中的所有文件
  4. js实现级联菜单(没有后台)
  5. JavaScript -- 正则表达式 检验表单提交的内容
  6. ROS创建工作空间
  7. Android当下最流行的开源框架总结
  8. review10
  9. jenkins显示发送邮件成功,但未收到邮件
  10. leetcode 645. Set Mismatch——凡是要节约空间的题目 都在输入数据上下功夫 不要担心破坏原始的input