下载Google官方/CM Android源代码自动重新开始的Shell脚本

国内由于某种原因,下载CM或Google官方的Android源代码总容易中断。总看着机器,一中断就重新执行repo sync还太麻烦,所以我特意编写了一段shell脚本(download.sh)。通过获取shell最后返回的状态码来决定是否再次执行repo sync命令。

#!/bin/bash  

echo "======start repo sync======"
repo sync  # 第一次下载android源代码
while [ $? != 0 ]; do
echo "======sync failed, re-sync again======"
sleep 2
repo sync  #  如果出错,隔2秒后回继续调用repo sync下载android源代码
done

其中“$?”可以获取Shell最近一次执行的状态,如果成功执行,返回0,否则返回非0的数。将该脚本(download.sh)复制到Android源代码的根目录,执行该脚本即可。即使中断也无所谓了。

时间: 2024-12-28 02:53:58

下载Google官方/CM Android源代码自动重新开始的Shell脚本的相关文章

Android Studio重构之路,我们重新来了解一下Google官方的Android开发工具

Android Studio重构之路,我们重新来了解一下Google官方的Android开发工具 记得我的第一篇博客就是写Android Studio,但是现在看来还是有些粗糙了,所有重构了一下思路,覆写了一篇 Google主推-Android开发利器--Android Studio,这可能是最全的AS教程! Android Studio,自Google2013年发布以来,就倍受Android开发者的喜爱,我们本书,就是基于Android Studio来进行案例演示的,大家都知道,Android

RHEL自动安装zookeeper的shell脚本

RHEL自动安装zookeeper的shell脚本 A:本脚本运行的机器,Linux RHEL6 B,C,D,...:待安装zookeeper cluster的机器, Linux RHEL6 首先在脚本运行的机器A上确定可以ssh无密码登录到待安装zk的机器B,C,D,...上,然后就可以在A上运行本脚本: $ ./install_zookeeper 前提: B, C, D机器必须配置好repo,本脚本使用的是cdh5的repo, 下面的内容保存到:/etc/yum.repos.d/cloude

Linux自动安装JDK的shell脚本

Linux自动安装JDK的shell脚本 A:本脚本运行的机器,Linux B:待安装JDK的机器, Linux 首先在脚本运行的机器A上确定可以ssh无密码登录到待安装jdk的机器B上,然后就可以在A上运行本脚本: $ ./install-jdk.sh B的IP or: $ ./install-jdk.sh "B的IP" "JDK的URI" 就可以在机器B上安装JDK.jdk使用的tar包需要用户自己设定DEFAULT_JDK_SRC=?,保证可以wget得到即可

一个简单的监控网站是否正常并自动重启服务的shell脚本

#!/bin/sh if [ -z "`curl --connect-timeout 15 --max-time 20 --head --silent http://localhost/index.php|head -n 1|grep '200'`" ];then echo -e "$(date +%Y-%m-%d)\n" killall nginx killall php-fpm /usr/local/nginx/sbin/nginx -c conf/nginx.

Android以root起一个process[shell脚本的方法]

有时候我们写的app要用uid=0的方式启动一个process,framework层和app层是做不到的,只有通过写脚本,利用am来实现.下面是具体步骤: 1.创建一个包含Main()方法Java project 1.1.创建一个Java project 1.2.添加Main()方法 1.3.导出为jar包 1.4.将java 版本的jar变成android 版本的jar 首先,找到dx工具所在文件夹,如android-sdk/build-tools/20.0.0,并将该文件夹加入到环境变量PA

自动安装zabbix客户端shell脚本

一般工作中要部署新服务器,部署完成还要添加zabbix监控,所以安装zabbix客户端是很频繁的,我这里写了一个简单的自动安装脚本,不是很完善,但也可以平时拿来用. 脚本运行的时候可能会出来一些错误,可以看终止时的错误信息,很可能是缺少相关的包,根据信息安装包再重新运行即可. 注意修改配置的内容,要根据实际情况做相应的修改,比如server和hostname,server是服务端的ip,根据实际情况配置,hostname我这里设置的是客户端自己的ip,也可以根据自身情况修改.在获取本地ip时,这

MySQL自动备份可通用shell脚本

最近在整理服务器的脚本,发现以前写的MySQL每天自动备份脚本写的不太好,就重新写了一个: #!/bin/bash####目录环境的配置####export datetime=`date +"%Y%m%d"`export mysqlbin_dir="/usr/local/mysql/bin"export datadir="`$mysqlbin_dir/mysql -h localhost -uroot -A -Bse "show variable

自动清除日期目录shell脚本

很多时候备份通常会使用到基于日期来创建文件夹,对于这些日期文件夹下面又有很多子文件夹,对于这些日期文件整个移除,通过find结合rm或者delete显得有些力不从心.本文提供一个简单的小脚本,可以嵌入到其他脚本,也可直接调用,如下文供大家参考. 1.脚本内容 [[email protected] ~]# more purge_datedir.sh #!/bin/bash # Author: Leshami # Blog : http://blog.csdn.net/leshami RemoveD

CentOS7自动安装Bind服务器shell脚本

#!/bin/bash #################################################################### # Auto install bind # Create Date :  2018-05-31 # Written by :风花 # Organization:  hbgslz.com #################################################################### DOMAIN_