---恢复内容开始---
1 编程: 给出两个文件的绝对路径: A: /home/a/b/c B: /home/a/x/y/z/d
求B相对于A的相对路径: ../../a/x/y/z/d
def getRelativePath(p1,p2): p1list=p1.split('/')[1:] p2list=p2.split('/')[1:] print p1list,p2list n1=len(p1list) n2=len(p2list) comindex=0 minn=min(n1,n2) while(comindex<minn and p1list[comindex]==p2list[comindex]): comindex+=1 if comindex==n1: return '/'.join(p2list[comindex:]) else: return '../'*(n1-comindex)+'/'.join(p2list[comindex-1:]) p1='/a/b.php' p2='/a/b/d/x/c.php' #p2='/home/a/b/c' print getRelativePath(p1,p2)
2 linux命令:
查看进程:
ps -ef | grep java
查看进程中所有java的进程信息
ps -aux | grep java 显示所有状态
kill -9 PID 强迫进程立即停止
查看端口占用:
一: lsof -i:80
二: netstat -tunlp|grep:80
查看日志命令
tail -n 50 -f error.log
显示 日志最后50条,有新的时更新。
head -50 eorrorl.txt 显示日志前50条
查找关键字日志
grep 'INFO' demo.log
在demo中查找所有包含INFO的行。
3 get 和post的区别
1 get提交的数据 用?分隔url和数据,用&分隔不同参数,如果是数字或字母原样发送,空格用+替换,是中文用base64编译,中16进制 ascII表示,
post提交数据 在http包内
2 get提交数据大小有限制 ,限制 为url的长度,post 没有限制
3由于get提交数据在url中,所以不安全,post相对安全
4get能被缓存 ,post不能被缓存,
5 get只允许 ascII字符,posts没有限制 ,允许二进制数据
6 get 产生一个TCP数据 包,POST产生两个TCP数据 包
http://www.oschina.net/news/77354/http-get-post-different
---恢复内容结束---