效果图:


代码(直接显示出来了……):
然后添加这个,写上代码就行了
| 1 | 震惊!北京这次大爆发的甲流感内幕 | |
| ||
| | ||
| 作者:58.154.195.* 2009-10-30 09:50 回复此发言 | ||
| 2 | 回复:震惊!北京这次大爆发的甲流感内幕 | |
| ||
| | ||
| 作者:gravity2009 2009-10-30 09:52 回复此发言 | ||
| 3 | 回复:震惊!北京这次大爆发的甲流感内幕 | |
| ||
| | ||
| 作者:219.222.69.* 2009-10-30 09:53 回复此发言 | ||
| 4 | 回复:震惊!北京这次大爆发的甲流感内幕 | |
| ||
| | ||
| 作者:211.139.163.* 2009-10-30 09:55 回复此发言 | ||
| 这条留言是通过手机发表的,我也要用手机发表留言! | ||
| 5 | 回复:震惊!北京这次大爆发的甲流感内幕 | |
| ||
| | ||
| 作者:124.207.46.* 2009-10-30 10:18 回复此发言 | ||
| 6 | 回复:震惊!北京这次大爆发的甲流感内幕 | |
| ||
| | ||
| 作者:Libra_秤 2009-10-30 10:22 回复此发言 | ||
| 7 | 回复:震惊!北京这次大爆发的甲流感内幕 | |
| ||
| | ||
| 作者:人文人 2009-10-30 10:23 回复此发言 | ||
| 8 | 回复:震惊!北京这次大爆发的甲流感内幕 | |
| ||
| | ||
| 作者:222.246.206.* 2009-10-30 10:39 回复此发言 | ||
| 9 | 回复:震惊!北京这次大爆发的甲流感内幕 | |
| ||
| | ||
| 作者:123.118.107.* 2009-10-30 10:42 回复此发言 | ||
| 10 | 回复:震惊!北京这次大爆发的甲流感内幕 | |
| ||
| | ||
| 作者:紫薇是条母狗 2009-10-30 10:54 回复此发言 | ||
| 这条留言是通过手机发表的,我也要用手机发表留言! | ||
| 11 | 回复:震惊!北京这次大爆发的甲流感内幕 | |
| ||
| | ||
| 作者:紫薇是条母狗 2009-10-30 10:55 回复此发言 | ||
| 这条留言是通过手机发表的,我也要用手机发表留言! | ||
| 12 | 回复:震惊!北京这次大爆发的甲流感内幕 | |
| ||
| | ||
| 作者:219.237.11.* 2009-10-30 10:57 回复此发言 | ||
| 13 | 回复:震惊!北京这次大爆发的甲流感内幕 | |
| ||
| | ||
| 作者:157.205.229.* 2009-10-30 10:57 回复此发言 | ||
| 14 | 回复:震惊!北京这次大爆发的甲流感内幕 | |
| ||
| | ||
| 作者:gansk_1 2009-10-30 11:54 回复此发言 | ||
| 15 | 回复:震惊!北京这次大爆发的甲流感内幕 | |
| ||
| | ||
| 作者:ly50247 2009-10-30 12:07 回复此发言 | ||
| 16 | 回复:震惊!北京这次大爆发的甲流感内幕 | |
| ||
| | ||
| 作者:123.180.72.* 2009-10-30 12:08 回复此发言 | ||
将某一文件夹的所有同一类型文件重命名成 1.x 2.x …… 的形式
#!/usr/bin/env python原来我认为自己了解许多,现在也发现那不过是冰山一角,在各个方面都是。然而当更多的东西摆在眼前时,我有点不安了,我有点控制不住自己的情绪。
我知道许多东西是不能在这写的,但有些问题却是不能不考虑的。
一个很重要的是,要用一致的标准和原则来分析问题,摆脱先入为主、绝对权威、三人成虎等的影响。
许多时候和别人说些什么时,他总会不动声色地说,是么,有证据吗?这是一个很头疼的问题,我自己也困扰其中,没证据怎么能让人信服呢。这个好像一个怪圈,而你正陷入其中。
那么我问你你现在学到的或了解并认为是正确的东西中,有多少是你能找到明确证据的?科教书不是证据,电视广播不是证据,某人说的什么也不是什么能让人信服 的证据,如果有些找不到,那你凭什么认为是正确的呢?那么同样是没证据的两个截然相反的内容,你又凭什么深信其一而以否定的态度看另外一个呢?这不就是先 入为主吗?以这种原则看问题永远不会得知事物的真相。这种先入为主也是有前提的,就是相信权威,相信广为流传的观点,就像所有课本上都写着同一理论,我们 就认为这理论是千真万确的,谁又去证明了这理论呢?在自然科学上也许有实验可以,但历史呢,政治呢,哲学呢,……?你左一段右一章地看着甚至背着别人写的 东西,就没想过这些真的是可信的吗?你就没想过这些可不可能是一个个阴谋或者少数人谋取利益的手段吗?
当时学那些东西是你想都没想就当成真理深信不疑,而之后一切与之矛盾甚至对立的东西就一律以批判否定的态度看,自己想想不感觉很有意思吗?
那应该怎样?首先我承认有些东西我们是找不出所谓的证据的,也就是单看某些东西时很难确定其真实性,然而事物是有普遍联系的。你想如果东编一点西造一点, 合在一起分析一下能严丝合缝吗?肯定有各种漏洞。所以一个比较好的方法就是不管信息来自何方,都认为是真的,把它们联系起来看,肯定有各种矛盾,就从这些 矛盾入手来看怎么才能更好地把这些矛盾去掉,也就是把不真实的信息去掉。当然这并不简单,得出的结论也不可能完全正确,但当信息足够多了时,就已经能分析 出太概是怎么回事了,就是有偏差也不会偏得太远。更重要的是,这样就有了属于自己的一套体系,再来了什么信息就可以直接放在自己的体系里分析并进行调整, 而不必单一地去找信息来源或证据。
还有一个问题就是许多人认为我们只管学习,将来找个好工作,有个好家庭就行了,想那么多干什么。另外有许多东西就算你知道了也改变不了什么,何苦呢?
对这个问题,我也很无奈。首先我承认这种看法有其合理性,本来嘛,自己生活好就行了,何必考虑那么多和自己没什么关系的东西呢。
在这里我写一下自己的看法,当然也不一定对。
首先这种想法的前提是那些和自己无关,然而这前提真的成立吗?显然不是。有些东西我们现在感觉和自己没关系,但用不了多久就会发现那就在身边,有可能自己 就是受害都却浑然不知,可能忽然在一次打击中猛然觉醒,从而大为失望,甚至从此一觉不振。也有可能由来已久的天真幻想在某一刻突然破裂,而建立在这一幻想 上的所有高楼大厦轰然倒塌,该作何感受。是的,你可能想象不到,因为你的现有的知识结构就有可能建立在错误的前提之上。如果还很抽象的话,可以回首看看历 史。你认为自己比某些人幸福吗,那很有可能错了,也许后人正是从我们身上找到了安慰。
还有就是,我们真的什么也改变不了吗?
首先我们应该知道社会不是空中楼阁,是因为有人才有了社会,一个人也许改变不了整个社会,但所有人都改变不了这个社会吗?也许你认为不存在所有人的可能 性,只有极少数人。那你想没想过这个社会也掌握在极少数人的手中,而且是更少人的手中?而自己不过是和一大群人服务其中。其实社会并不想想象的那么坚固, 那么稳定,许多地方里已暗含危机,只不过许多人掩耳盗铃,视而不见罢了。同样看看历史,就应该知道将来会怎样。这将来并不遥远,可能就在眼前。
当然,就像看不到就认为离自己很远一样。以前我不管看到多么让我吃惊的东西,走出房门,看一看四周还是很宁静,仿佛那些如同在梦中或者从来没发生过,至少 离自己很远。但现在,出去看看,很容易有种或强或弱的危机感,有的是无以言表的,就像有天真的发生什么也不会感觉很奇怪,因为想想这并不意外。
你还在认为那些是整天无所事事闲得无聊的人想的吗,你还会认为整天学习为了找个好工作是多少明智的吗?
当然我不是说那就不用学习和工作了,生活还是要继续的。但不要轻易抱什么幻想了,要知道有些想法很幼稚。这让我很容易想到温水中的青蛙。不要对任何信息视而不见,说句难听的,有可能临死那一刻都还不知道发生了什么……
哈哈,别见笑。1 汇编调用c函数:
add.c:
extern int add(int x, int y);
int add(int x, int y)
{
return(x + y);
}
asm.asm:
[section .data]
mstr db "%d", 0xA, 0
[section .text]
extern add
extern printf
global main
main:
push 1
push 2
call add
add esp,8
push eax
push dword mstr
call printf
add esp, 8
ret
gcc -c add.c add.o
nasm -f elf asm.asm
gcc -o final add.o asm.o
./final
3
2 c 调用汇编函数
asm.asm
[section .text]
extern add
extern printf
global show50247
show50247:
mov eax, 50247
ret
c.c
#include
#include
extern int show50247();
int main(int argc, char *argv[])
{
int a = show50247();
printf("%d\n", a);
return 0;
}
nasm -f elf asm.asm
gcc -c c.c
gcc -o c asm.o c.o
./c
50247
好吧,看图片,宇宙的那些事,人类又能了解多少呢?即使未来的某一天发生某一种灾难,我想也是在正常不过了,人类太渺小了!
在宇宙中,连一粒沙子的分子都不如。那么就从地球开始吧。
这就是我们的太阳系行星的比例!接下来就是超越太阳系的:
先下载 masm32 开发包,这个网上很好找,最新版本是 v10,早一点的也行,这个是Windows下汇编开发必备的。
假设安装到 D:\masm32。
先把 IrvineExamples 目录里的 .lib 文件拷到 D:\masm32\lib 里,把 .inc 文件拷到 D:\masm32\include 里。
建一个 init.cmd:
@echo off
set include=D:\masm32\include
set lib=D:\masm32\lib
set path=D:\masm32\bin;%path%
主要是写一些环境变量,也可以在“我的电脑”->高级 里设置
然后建4个文件:
ml20.cmd :编译32位
@echo off
ml /nologo /c /coff %1
link20.cmd :连接32位 (重点,因为这个费好大劲)
@echo off
link /nologo /subsystem:console irvine32.lib kernel32.lib user32.lib %1
ml10.cmd :编译16位
@echo off
ml /nologo -c -Fl -Zi %1
link10.cmd :连接16位
@echo off
link16 /nologo %1,,NUL,Irvine16 /CODEVIEW
这些脚本都只能处理一个文件
如 test.asm
ml20 test.asm
link20 test.obj
我测试了几个简单的例子可能通过,参数根据情况可能需要调整。
本前配置这是想在linux下用wine的,结果发现编译连接都正常,运行时却出了问题,怎么也显示不出来,唉……也不知道那些函数是怎么实现的。
本来想委屈点用 wine + masm32, 费了不少劲算是配出来了,正常的 win32 和 console32 的程序能正常编译了,但试验例子时发现一个麻烦事,例子要用 Irvine32.lib 里的函数,把头文件、库文件拷过去后,能编译过去了,连接时却发现报错,说找不到符号。想了半天也没明白,那些头文件看得晕晕的,上网也什么也没找着。我 是不想安装恐怖的VS来找编译命令了,以后有时间再说吧。
真是郁闷,学的什么课都要用微软的东西,离开微软就没法活了吗?放着开源好用小巧的软件不用,非要安装动辄几G的破解的缓慢的“易用”的大家伙。vc6.0 + mfc 、 vs + masm vb.net ……,估计以后还会有不少。
我想学汇编用 nasm 就足够了,masm中那么多宏对理解汇编语言本身并没多大用,而且有些细节masm处理的并不好,masm32过于依赖 w32api,调用C函数则要考虑更多细节,而且用它时不易接触到底层的东西,它并不是学汇编语言的首选。
在我看来,gas汇编有许多好用的辅助工具,对初学者是非常不错的,但权衡一下,还是用 nasm吧。
用 nasm可以考虑两种函数调用方式(linux下),用 int 80 软中断和用 libc 库,如果是比较简单的函数,我感觉用系统中断更好,因为那样可以用 ld 直接连接,用成的代码很小,调试时反汇编一目了然,但如果频繁用C函数,还是省点事连到 libc 库吧,那样连接时可以直接用 gcc 处理,生成的代码大了许多倍,直接反汇编已经看不出头绪。二者还是一些细节上的差距,用入口函数名。
举个例子:
//file n.c
#include
int main()
{
int num = 50247;
printf("%d ly%d\n", 54, num);
return 0;
}
nasm 中断调用:(由于sys_write无法直接格式化输出,这里简化一下)
; n1.asm
section .data
mstr db "54 ly50247", 0Ah, 0
len equ $ - mstr
section .text
global _start ;入口函数,nasm中默认是 _start
_start:
mov edx, len ;参数三:字符串长度
mov ecx, mstr ;参数二:字符串地址
mov ebx, 1 ;参数一:stdout(文件描述符)
mov eax, 4 ;sys_write(系统调用号)
int 80h ;调用中断
mov ebx, 0 ;参数:退出状态
mov eax, 1 ;sys_exit
int 80h
编译:nasm -f elf n1.asm
连接:ld -s -o n1 n1.o
用 中断前要先查用法,eax是调用号,ebx,ecx,edx,esi,edi 是参数,如果超过5个参数, 全部参数要依次放在一块连续的内存区域里,在寄存器 ebx 中保存指向该内存区域的指针。系统调用完成之后,返回值保存在eax里,这种调用方式和Windows下的各种调用协议都不一样。入口函数最好用 _start,因为这是nasm默认的,如果不一样编译有警告,但一般还会正确,如果代码复杂则可能会出错。
nasm 调用 libc库:
;file n2.asm
section .data
mstr db "%d ly%d", 0Ah, 0
section .text
extern printf
extern exit
global main
main:
add esp, 4d ; int num;
mov [esp], dword 50247d ; num = 50247;
push dword [esp] ; 3rd
push 54 ; 2ed
push mstr ; 1st
call printf ; printf(mstr, 54, num);
sub esp, 0Ch ; 恢复栈
push 0d
call exit
sub esp, 04h
编译:nasm -f elf n2.asm
连接:gcc -o n2 n2.o
栈好像让我弄不平衡了,不管怎样,能正常运行。入口函数要用main。
n2 和 n 的大小差不多(9k),都是连接时加上去了,n1则很小(440b)。
能看出来,真接调用C函数真是方便,比有限的n个系统调用好用多了。
呵呵,这个有点意思……
gnome 下 Alt + F2 输入 free the fish,出现一条小鱼在桌面上来回游。
gnome 下 Alt + F2 输入 gegls from outer space。
近来对文本处理脚本有点兴趣,想写点相关的小脚本,没想到也不好写
#!/usr/bin/env python
# coding=utf8
import os;
import sys;
str1="http://www.id5.cn/desktop/parse.do?type=3&icpcode=bhc04&checknum="
str2="&imageField.x=63"
str3=sys.argv[1]
os.system("w3m -dump '" + str1 + str3 + str2 + "' 2>/dev/null > /tmp/ipp")
n1=os.popen("cat /tmp/ipp | sed -n '/发证地/='").readline()
n2=os.popen("cat /tmp/ipp | sed -n '/什么身份信息核查比对/='").readline()
n1 = int(n1)
n2 = int(n2) - 1
os.system("cat /tmp/ipp | sed -n " + str(n1) + "," + str(n2) + "p" )
用shell出现莫名错误,只好用python,其实十分简单,就是从一段文本中获取匹配两行并输出中间的部分。开始认识到awk,sed,grep,cut...这些命令的强大……
显示ip或域名的归属地
#!/usr/bin/env python
# coding=utf8
import os;
import sys;
str1="http://www.ip138.com/ips.asp?ip="
str2=sys.argv[1]
os.system("w3m -dump '" + str1 + str2 + "' 2>/dev/null > /tmp/ipp")
n1=os.popen("cat /tmp/ipp | sed -n '/" + str2 + "/='").readline()
n2=os.popen("cat /tmp/ipp | sed -n '/参考数据二/='").readline()
n1 = int(n1)
n2 = int(n2)
os.system("cat /tmp/ipp | sed -n " + str(n1) + "," + str(n2) + "p" )
显示七天天气预报(接口没弄出来,只是沈阳的):
#!/usr/bin/env python
# coding=utf8
import os;
import sys;
str1="http://qq.ip138.com/weather/liaoning/ShenYang.htm"
os.system("w3m -dump " + str1 + " > /tmp/ipp")
n1=os.popen("cat /tmp/ipp | sed -n '/日期/='").readline()
n2=os.popen("cat /tmp/ipp | sed -n '/风向/='").readline()
n1 = int(n1)
n2 = int(n2)
os.system("cat /tmp/ipp | sed -n " + str(n1) + "," + str(n2) + "p" + " > /tmp/ipp2")
os.system("cat /tmp/ipp2 | sed 3d |sed 5d|sed 6d | more")
恍惚间大一就快过去了,回想一年前就像是昨天的昨天。寝室的吵闹让我很少想更多的东西,时间流水一样不知流走了多少。偶尔一个人回忆一下一年的生活,发生 了许多事情,但和想象的相差很远。像所有人一样,感觉生活越来越平庸,和水一样,留不下半点回忆,只有时不时感慨时光又一次抛弃了我。下午躺在图书馆前那 长凳上,看着绿绿的树叶,想到公园里的那些秋千。那是高中时唯一能让我很有感觉的地方,而今天竟有点那样的感觉了。似曾相识,时过境迁。
第一次上这么长时间的自习,感觉高数也不是那么让人费解,然而这学期的高数课就这样在听天书的境界中过去了。对不起自己,对不起那些用去的时间和疲劳的身 心。考试了,都开始忙碌了,和平时的景象大相径庭,一定是这样吗。偶然听路过的人说一句话很有感慨,人生是轮回的,而许多人用自己的一生作为代价去证明什 么,或是反驳,最终留下些许感慨,而后人仍旧。
Do not spend all your time on training or studying - this way you will probably become very exhausted and unwilling to compete more. Whatever you do - have fun. Once you find programming is no fun anymore – drop it. Play soccer, find a girlfriend, study something not related to programming, just live a life - programming contests are only programming contests, and nothing more. Don't let them become your life - for your life is much more interesting and colorful.
这是一个acm世界冠军的感言,几个月前看到的,感觉有些道理吧。想到郑强(虽然对这个人不少人有争议,但我认为他说的很多东西是有一定道理的)说的几句 话,关于高中竞赛的,印象最深的好像就是 ”掠夺式的开发和摧残式的教育……“,但我想玩各种竞赛的多半还是出于兴趣吧,用它形容高中的”素质教育“应该更恰当。但不管怎么说,如果一个人对什么失 去了兴趣,那也许再多努力都是徒劳的。而中国的高中不惜”一切代价“将同学的兴趣从强到弱,从有到无。想起高一对数理化还是很感兴趣的,到高考那些天就无 语了,提到物理头就疼。寒假时上网找到一本《聊聊狭义相对论》,看看很有感觉,想想对物理的兴趣还是没有完全消失。但这一生注定是与物理无缘了,想想也有 一点悲哀。好像写远了……
一直坚信这样的观点,想做到一件事,最重要的第一个就是兴趣,第二个是毅力,再之后才是天赋、条件等等。想起刚入学时问高中同学都上的什么专业,好多都说 自己专业怎么不好之类的,也就是并不感兴趣的,感觉很可悲。有些老师说兴趣是靠培养的,有些你不感兴趣的东西接触了一段时间也许就感兴趣了,也许这有些道 理吧。但在国内,这好像很难啊。这种教学方式,从小学到大学,都很难培养出兴趣,就像以前自学什么东西感觉挺好玩的,一听老师那课我就无语了。好多东西都 是这样,所以对什么感兴趣一定要提前学,等到老师讲后悔就来不及了,我很庆幸自己之前学了点东西,以保证对一些课不至于很反感,但这种感觉也不是很好的。 我一直不明白对什么是这样的。感觉中国式的教育从来没把兴趣二字放在眼里,甚至有句很经典的话”如果你做……都做想吐了,那就达到境界了“,我真很愤慨 啊。这算什么境界啊,就为了追求这种境界,那达到了又能怎样?抛弃,只有一种可能。就像某些在高中竞赛获奖的同学可能下半辈子都不想再碰那些东西了,那么 那些付出有什么意义啊?
前几天找了份辽宁高考的理综题,看了看。我确信如果现在让我做一百分都达不到,看那些题目还是有一种无法抗拒的反感,而曾经就是一天天做这些东西浪费了宝 贵的时间和精力,而不是学更有用的东西,就是为了高考,为了上一个好点的大学学自己基本不感兴趣的专业。上学期一个同学告诉我她要准备考研,因为对那个大 学不理想,而她对那个专业也几乎不了解,这个我无话可说了。高中时我就认为大学里专业的知识学不了多少,更多是靠自己,一年多快过去了,也基本验证了这一 点。从专业课就可以看出来,只能学点皮毛,上一学期的课学到的东西还没有上网随便下本电子书看上几天学的多。仅凭开设的众多专业课里又能学到多少真正有用 的东西呢。好多东西都被形式化了,成为一条条潜规则……真正有用的东西很少有人重视,有些同学的生活又开始像高中时的了,驰骋于众科之间,却不知道对自己 真正有用的是什么。
生活充满了矛盾,有时真的没办法,有时看似理所当然的事并不是那么回事,有时为了一个毫无意义的的事实付出了不小的代价。但仔细想想,也是合理的。恍惚中,就失去了什么……
通过分析 http://ipgw.neu.edu.cn/ 中的表单,我们可以获得以下提交网址:
连接:
http://ipgw.neu.edu.cn/ipgw/ipgw.ipgw?uid=*&password=*&operation=connect&range=2&timeout=1
断开:
http://ipgw.neu.edu.cn/ipgw/ipgw.ipgw?uid=*&password=*&operation=disconnect&range=4&timeout=1
断开全部:
http://ipgw.neu.edu.cn/ipgw/ipgw.ipgw?uid=*&password=*&operation=disconnectall&range=3&timeout=1
把uid和password补全就可以用了,很容易写出自动登录脚本,这样就不用每次都进网站点了。
ex:
#!/usr/bin/env python
# coding=utf8
import os;
import sys;
op = raw_input("1:connect\t2:disconnect\t3:disconnectall:\t4:3 and 1\n");
if op == "1":
os.system("curl 'http://ipgw.neu.edu.cn/ipgw/ipgw.ipgw?uid=stu_20083261&password=********&operation=connect&range=2&timeout=1' >/dev/null 2>/dev/null")
elif op == "2":
os.system("curl 'http://ipgw.neu.edu.cn/ipgw/ipgw.ipgw?uid=stu_20083261&password=*********&operation=disconnect&range=4&timeout=1' >/dev/null 2>/dev/null")
elif op == "3":
os.system("curl 'http://ipgw.neu.edu.cn/ipgw/ipgw.ipgw?uid=stu_20083261&password=**********&operation=disconnectall&range=3&timeout=1' >/dev/null 2>/dev/null")
elif op == "4":
os.system("curl 'http://ipgw.neu.edu.cn/ipgw/ipgw.ipgw?uid=stu_20083261&password=***********&operation=disconnectall&range=3&timeout=1' >/dev/null 2>/dev/null")
os.system("curl 'http://ipgw.neu.edu.cn/ipgw/ipgw.ipgw?uid=stu_20083261&password=**********&operation=connect&range=2&timeout=1' >/dev/null 2>/dev/null")
我把返回的网页过滤掉了,按理说能看到结果,可我这是乱码,或者简单分析一下就能知道结果。
http://sms.api.bz/fetion.php?username=号码&password=口令&sendto=接收方&message=内容
https://fetionAPI.appspot.com/api/?from=号码&pw=口令&to=接收方&msg=短信内容
在linux下可以用curl来执行,这样很容易写出脚本,好像短时间发送太多可能封ip。
这是一个用python写的cli版本,注意一下引号的事,改了好几回~
#!/usr/bin/env python3
# coding=utf8
import os;
print('Input your number, passward, the other number and message:')
umame = input()
pw = input()
sendto = input()
msg = input()
str = 'curl ' + '"http://sms.api.bz/fetion.php?username=' + umame + \
'&password=' + pw + '&sendto=' + sendto + '&message=' + msg + '"'
os.system(str)
input()
还有一个事,message中不能有空格,加引号也不行,只能用%20代替