-
ubuntu,小小小脚本 - [电脑生活]
版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://pchu.blogbus.com/logs/36873645.html
show show 最近一段时间写的小小小脚本,类似内容可见上一次的日志
howbig
#!/bin/bash
echo -e 'HEAD '$1' HTTP/1.0\n\n' | nc 10.0.254.254 3128 | grep Content-Length作用:用netcat向局域网网关发送文件头信息,并grep出文件大小信息(字节),参数-e是为了它能辩认转义符\n(回车)
升级版的vremind
#!/bin/bash
d=`date +%m%d%H%M`
cd $HOME/tmp/
rec -r 44100 $d.ogg
sox $d.ogg -n trim 0 1.5 noiseprof | sox $d.ogg tmp.ogg vol 10 dB noisered - 0.2
mv tmp.ogg $d.ogg
for t in $@ ; do
if [ `expr index "$t" ':'` -eq 0 ]
then echo "play $HOME/tmp/$d.ogg" | at NOW+$t min
else echo "play $HOME/tmp/$d.ogg" | at $t
fi
done作用:先用44100Hz采样率录音,然后生成噪音采样(noiseprof),去噪(noisered)放大音量后存为tmp.ogg再覆盖原录音文件。否则,若一边音频处理一边写入录音文件,会导致文件损坏,丢了25秒左右以后的内容。调用vremind时可以有多个参数,数字参数表示若干分钟后重放,时间(中间有冒号)参数规定重放时刻,可以多次重放。
jandan
#!/bin/bash
cd $HOME/tmp
wget -nv http://jandan.net/new -O - | grep -o http://jandan\.net/2.*html > old.lst
while [ true ] ; do
wget -nv http://jandan.net/new -O - | grep -o http://jandan\.net/2.*html > new.lst
sf=`diff old.lst new.lst | grep \> | sed -e 's/> //g'`
echo $sf
for url in $sf ; do
id=`wget -nv $url -O - | sed -n 's/<div class=\"post" id=\"post-\(.*\)\">/\1/p'`
curl http://jandan.net/wp-comments-post.php --cookie $HOME/jandan_cookies.txt -F "author=pchu" -F "email=username@gmail.com" -F "url=" -F "comment=沙发~" -F "comment_post_ID=$id"
done
mv new.lst old.lst
sleep 2
done作用:煎蛋(jandan.net)的抢沙发机器人,请手动准备好cookies。首先获取文章更新列表放着(只需找2打头的html文件),然后每两秒循环,下一个新的列表,diff一下,用grep \>定位多出来的文章。然后下载该页面,找到该文章的post-id,最后用curl模拟发评论动作,送上cookies、用户名、email,当然还有宝贵的“沙发~”
fanfou
#!/bin/bash
curl -u username@gmail.com -d status="$@" http://api.fanfou.com/statuses/update.xml &>/dev/null作用:更新饭否,命令打完回车后,还要输入密码并回车(终端不会显示出来)。当然也可以用cookies解决。
jiwai
#!/bin/bash
curl -u username@gmail.com -d status="$@" http://api.jiwai.de/statuses/update.xml &>/dev/null作用:同上
fren
#!/bin/bash
if [ "$1" == "?" ]
then
shift
sdcv -u "Larousse Chambers français-anglais" $@
else
sdcv -u "Larousse Chambers français-anglais" $@ | dictwrap
fi作用:用sdcv (StarDict Commandline Version)查法英词典,如果第一个参数是问号,则直接调用sdcv(单词拼错时会有纠错提示);否则把查到的解释传给另一个脚本dictwrap。(因为Larousse Chanbers词典的解释有大量的html标签)
enfr
#!/bin/bash
if [ "$1" == "?" ]
then
shift
sdcv -u "Larousse Chambers English-French" $@
else
sdcv -u "Larousse Chambers English-French" $@ | dictwrap
fi作用:同上
dictwrap
#!/bin/bash
grep $@ -v ^"Found 1 items, similar to" |grep -v ^"-->" | grep -v ^$ | sed -e "s/<BR>/\n/g;s/&/\&/g;s/<FONT color=\"#A50021\"><B>/`echo -e '\e[1;31m'`/g;s/<\/B><\/FONT>/`echo -e \\\e[0m`/g;s/<FONT color=\"blue\">/`echo -e '\e[34;40m'`/g;s/<FONT color=\"#A50021\">/`echo -e '\e[32;40m'`/g;s/<FONT color=\"#74726D\">\(.\{,40\}\)<\/FONT>/`echo -e '\e[2m'`\1`echo -e '\e[22m'`/g;s/<\/FONT>/`echo -e \\\e[0m`/g;s/<B>/`echo -e \\\e[1m`/g;s/<\/B>/`echo -e \\\e[21m`/g;s/<I>/`echo -e '\e[4m'`/g;s/<\/I>/`echo -e '\e[24m'`/g;s/<CHARSET c=\"T\">2014;<\/CHARSET>//g"作用:先把空行和无聊的字眼去掉,然后把<BR>换成回车转义符,把&换成&号,再用ANSI颜色控制码解释各个html标签,比如把<FONT color="#A50021"><B>换成\e[1;31m,其中1表示粗体,31表示红色,同时由于用到转义符\e,echo要加-e参数。
收藏到:Del.icio.us
评论
fanfou 要说的话 (回车)
(光标在闪)打密码(回车)
即可
那请问你有他的联系方式吗?
或者,你可以帮忙通知一下,让他有空上qq时,加入83341863这个Q群吗?
再次感谢。