昨晚公司开颁奖晚会(日子选的很别扭),偶们改的状态会实时显示在状态墙上.彩排完毕超市购物间隙跟强哥想到一个恶搞的方法–刷屏.具体来说就是用偶们几个人滴号不停的改状态刷状态墙.于是立刻找到一个网吧实施罪恶的行为
.
我写脚本,强哥写用来刷屏的状态,额,用shell改状态就两句话,不过放在公司的机器上,没办法,还得现查curl,最终在入场之前还是把脚本写完了…
#!/bin/sh #所有的状态放到status.txt中,然后用这个函数循环取 get_status() { #取第一行状态 head -1 status.txt #第一行移动到最后一行 sed -i -e '1{h;d};$G' status.txt } #该状态的函数,两个参数:用户名,密码 send_status() { user=$1 pass=$2 word="`get_status`" word="`perl -MURI::Escape -e "print uri_escape('${word}');"`" curl -A "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)" -D /tmp/cookies -d "email=${user}&password=${pass}" http://login.renren.com/login.do curl -e "http://renren.com/Home.do" -A "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)" -b /tmp/cookies -d "c=${word}&raw=${word}" http://status.renren.com/doing/update.do } #main send_all() { while [ "s"="s" ];do #on_off.txt是个开关文件,如果存在时才会发状态 if [ -e "/tmp/on_off.txt" ];then #用户名和密码都存在user.txt里 #跟状态一样也是轮着来 u_p="`head -1 user.txt`" sed -i -e '1{h;d};$G' user.txt user="`echo "${u_p}" | cut -d: -f 1`" password="`echo "${u_p}" | cut -d: -f 2`" #改状态了 send_status $user $password fi #五秒钟发一次 sleep 5 done } send_all
脚本写完了,但是怎么启动呢,我的手机上有个putty,但是登server太慢了,于是又写了一个开关的php
<?php if(file_exists('/tmp/on_off.txt')) { unlink('/tmp/on_off.txt'); } else { $fp = fopen('/tmp/on_off.txt', 'w'); fwrite($fp,'ooxx'); fclose($fp); } ?>
这样就比较方便了,shell在server上运行,只要用手机浏览器访问这个开关的php就可以了~
后来使用中遇到点问题,手机浏览器的缓存实在太强了!!!!!!


。。