#!/bin/bash
#--------------------------------------------
# name: change-hosts.sh
#--------------------------------------------
#--------------------------------------------
#Program:
#
# 从laod博客更新hosts文件
#
#--------------------------------------------
#--------------------------------------------
#History:
# // qi 1.0
#--------------------------------------------
#-------------------------------------------- PATH=/bin:/sbin:/usr/bin:/usr/sbin:usr/local/bin:usr/local/sbin:~/bin
export PATH DATE=`date +%Y%m%d`
DATEFULL=`date` URL="https://iiio.io/download/${DATE}/Android安卓跟Linux系列.zip" LOGPATH=/home/qi/log DOWNPATH=/home/qi/download/hosts PASSWD=("blog" "laod" "google") echo ${PASSWD[*]}
#下载hosts文件到download文件夹;如果已经存在,将不会下载
if test -e ${DOWNPATH}/Android安卓跟Linux系列.zip
then
echo "The zip is exists"
else
echo "Downloading ......"
wget ${URL} -P ${DOWNPATH} || {
echo "${DATEFULL} ${URL}:[URL error] " >> ${LOGPATH}/hosts.log
exit
}
fi #判断下载的文件是否正确,若正确,解压缩;否则计入日志。
if test -e ${DOWNPATH}/Android安卓跟Linux系列.zip
then
mkdir ${DOWNPATH}/${DATE} echo "Unzip doing ......"
for pass in ${PASSWD[*]}
do
echo $pass
unzip -P ${pass} -d ${DOWNPATH}/${DATE}/ ${DOWNPATH}/Android安卓跟Linux系列.zip # code : password not correct
if [ -f ${DOWNPATH}/${DATE}/hosts ]
then
echo -e "\n Correct ZIP passwd : ${pass}"
echo "${DATEFULL} Unzip password is correct:[Unzip right] passwd:${pass}" >> ${LOGPATH}/hosts.log
echo "Unzip done!!!" else
echo -e "\nUnzip password error"
echo "${DATEFULL} Unzip password not correct:[Unzip error] wrong pass:${pass}" >> ${LOGPATH}/host.log
fi
done echo echo "Coping ......"
sudo cp -f ${DOWNPATH}/${DATE}/hosts /etc/ || {
echo "${DATEFULL} hosts file can not be copied successfully!!!" >> ${LOGPATH}/hosts.log
exit
}
echo echo "Copy hosts to /etc success!!!"
echo rm -rf ${DOWNPATH}/*.zip
echo "Clean Over !!!" exit 0
else
echo "${DATE} hosts file not exists!!!" >> ${LOGPATH}/hosts.log
exit 3
fi

shell小脚本--从laod博客更新hosts文件的更多相关文章

  1. Webharvest网络爬虫应用总结,web-harvest 编写脚本 读取 百度 博客 实例

      Webharvest网络爬虫应用总结 Web-Harvest是一个Java开源Web数据抽取工具.它能够收集指定的Web页面并从这些页面中提取有用的数据.其实现原理是,根据预先定义的配置文件用ht ...

  2. python random模块 - 小驹的专栏 - 博客频道 - CSDN.NET

    python random模块 - 小驹的专栏 - 博客频道 - CSDN.NET python random模块 分类: python 2011-11-15 15:31 6037人阅读 评论(2) ...

  3. 如何使用 C# 爬虫获得专栏博客更新排行

    昨天,梦姐问我们,她存在一个任务,找到 关注数排行100 和 浏览量排行100 的专栏博客,在2017年还有更新的专栏. 梦姐说他要出去一趟,M大神在吃饭,于是我估算时间,只有半个钟. 整理一下:半个 ...

  4. 2018-8-10-如何使用-C#-爬虫获得专栏博客更新排行

    title author date CreateTime categories 如何使用 C# 爬虫获得专栏博客更新排行 lindexi 2018-08-10 19:16:51 +0800 2018- ...

  5. 赫然:Windows Live Writer 批量博客更新软件使用教程

    http://www.wocaoseo.com/thread-144-1-1.html 推广人员需要使用多个博客,一个一个登陆更新是很麻烦的事情,网上的桌面批量更新博客软件也不少,今天在此推荐大家使用 ...

  6. 微信小程序--简约风博客小程序(基于云开发 - 全开源)

    微信小程序--简约风博客小程序(基于云开发 - 全开源) 项目启动纯属突发奇想,想看看博客小程序,例如wehalo博客小程序,但是感觉自建平台还要浪费自己的服务器算力,还没有访问量,省省吧. 本着白嫖 ...

  7. 〖Linux〗实时更新 hosts 文件的脚本

    适用场景: 下载了一个smarthosts的hosts文件,但hosts文件过旧导致一些ip地址已失效无法访问网络. 脚本使用: ./hostsupdate # 直接从 /etc/hosts 中获得需 ...

  8. [技术博客] Django中文件的保存与访问

    [技术博客] Django中文件的保存与访问 在TextMarking项目开发中,数据库需要保存用户上传的文本文档. 原型设计:用户点击上传文本->保存文本->文本发送到后端保存为文件. ...

  9. 第一个Mac shell 小脚本

    大多数程序员都喜欢偷懒的,我也不例外.相信好多Android开发的coder 在网络http请求方面,会浪费很多时间在接口调试这里..有时候,自己写了一个小测试,行还好,不行的话,还要跟写后台的哥们一 ...

随机推荐

  1. 160323、理解Java虚拟机体系结构

    今天看到一篇文章,觉得写得不错,特拿来跟大家分享一下 1 概述 众所周知,Java支持平台无关性.安全性和网络移动性.而Java平台由Java虚拟机和Java核心类所构成,它为纯Java程序提供了统一 ...

  2. 阿里云服务器Mysql修改密码

    核心架构基于阿里云服务器CentOS7.2操作系统,全面支持Java Web运行环境   Tomcat 8.5.8 JDK 8u111 MySQL5.7.16 详细信息,请在服务器执行  more r ...

  3. JAVAWEB基础模块开发顺序与数据访问对象实现类步骤

    一.模块的开发的顺序 1. 定义数据表 2. 新建模型类 3. 新建"add.jsp" 4. 实现AddServlet中的doGet()方法 5. 定义Dao.Service接口 ...

  4. datasnap 关于lifecycle的问题

    首先DSServerClass的lifecycle属性有Invocation.Server.Session三种模式: 简单叙述一下三点区别: server:datasnap只初始化一个TDSServe ...

  5. [译]关于JavaScript 作用域你想知道的一切

    原文连接 在学习js的过程对闭包什么的,理解不好,偶然搜到这篇文章.豁然开朗,随翻译. Javacript 中有一系列作用域的概念.对于新的JS的开发人员无法理解这些概念,甚至一些经验丰富的开发者也未 ...

  6. Notepad++ 更换主题+字体

    Notepad++ 更换主题 https://blog.csdn.net/haluoluo211/article/details/51922666 延伸: 挑选主题 https://blog.csdn ...

  7. media query媒体查询

    媒体查询(CSS3 media query) 一.逻辑操作符:not.and.only not:not操作符用来对一条媒体查询的结果取反. and:and操作符用来把多个媒体属性组合起来,合并到同一条 ...

  8. c++中字符串反转的3种方法

    第一种:使用algorithm中的reverse函数 #include <iostream> #include <string> #include <algorithm& ...

  9. st试用笔记

    1.关于轮询 我的写法: var time_count = 0; var timer = setInterval(function(){ async.ajax({ url:'', data:'', s ...

  10. beego——日志处理

    这是一个用来处理日志的库,它的设计思路来自于 database/sql,目前支持的引擎有 file.console.net.smtp,可以通过如下方式进行安装: go get github.com/a ...