您的位置:首页 > 运维架构 > Shell

获取wiki某网页信息shell即获取wiki子目录信息-shell

2017-08-15 21:57 459 查看
#!/bin/bash

##################################################
##################################################

set -e

##需要参数
if [ $# -eq 0 ];then
echo "需要参数,例如下面命令"
echo "sh $0 -h"
exit 1
fi

##shell需要jq命令
#apt-get install -y jq 1>/dev/null 2>&1
##获取 wiki tower记录,下载到本地 towerCount.js ##############################################
wget -O towerCount.js "http://xxurl/wiki/page.json?pageid=xx" 2>/dev/null

##获取id、title、url,并显示在页面
cat towerCount.js |jq . |grep -E "id|title|url"
##获取tower内容,并写入到文件
cat towerCount.js |jq .data.content |sed 's#<p>\|<br />#\n#g'|sed 's# \|</p>\|"\|style=\color##g'|sed '/^$/d' > towerContent.txt

##对tower内容,进行条件输出

while getopts "n:d:ah" arg
do
case $arg in
n)
head -n $OPTARG towerContent.txt
;;
d)
head -n1 towerContent.txt;cat towerContent.txt|grep $OPTARG
;;
a)
cat towerContent.txt
;;
h)
echo "sh $0 -n num(行数), 显示最近n天的记录 sh $0 -n 2"
echo "sh $0 -d date 显示这天的记录 example: sh $0 -d 2017-8-01"
echo "sh $0 -a 显示所有的记录 example: sh $0 -a"
echo "sh $0 -h 显示帮助 example: sh $0 -h"
;;
?)
echo "unkonw argument; sh $0 -n num(行数) or -d 2017-08-12 or -a"
;;
esac

done
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  wiki getopts