存档

2013年3月 的存档

vim命令总结

2013年3月20日 没有评论 2,884 views  
创文章,转载请注明出处!

目录

1.打开文件
2.光标移动
3.模式转换
4.进入插入模式
5.复制
6.粘贴
7.删除
8.查找
9.替换
10.保存及退出
11.多文件操作
12.分屏
13.其他
进阶篇

可以从这里下载文本格式文件。

入门篇

1.打开文件
vim
vim abc.txt
vim abc.txt def.txt(多个文件的操作见11节)
vim +10 abc.txt
vim + abc.txt
vim +/eer abc.txt 或者 vim +/"eer" abc.txt
vimdiff abc.txt def.txt
2.光标移动

2.1字符移动

h 或 5h 或 [回退键 Backspace]
l 或 5l 或 [空格键 Space]

2.2单词移动

w 6w
W 6W
b 6b
B 6B
e 6e
E 6E

2.3行移动

0  		(数字0)行首
^		非空白字符行首
g_		非空白字符行尾
$		行尾
k 或 5k 或 (ctrl+p)
j 或 5j 或 (ctrl+n) 或 (Enter)
6-
6+
(
)
10G 或 :10

阅读全文…

分类: linux 标签:

linux常用命令

2013年3月3日 没有评论 3,068 views  

find

//查找所有tar文件然后移动到目录
find . -name “*.tar” -exec mv {} ./backup/ \;
//去掉行首的.字符
find . -name *.html|sed ‘s/^.//g’
//遍历查找结果
for i in `find . -name *.html|sed ‘s/\.//g’|sed ‘s/html/.html/g’` ;do echo http://192.168.0.170:8017$i ; done
//查找文件,然后备份到其他目录:
find . -name nginx.conf.tgz -exec cp {} dir/ \;

tar

du

//统计apache访问日志,访问量排在前20 ip地址
cat access.log |awk ‘{print $1}’|sort|uniq -c |sort -nr |head -20
//显示最常用的20条命令:
cat .bash_history |grep -v ^# |awk ‘{print $1}’ |sort |uniq -c |sort -nr |head -20
//在所有行前添加http://img.map.com,并在最后添加/
sed -e ‘s/^/http:\/\/img.map.com\/maplite\/map\/subway\/1.1\//’ -e ‘s/$/\//’ a.txt
//查看apache并发连接数,及相关转发状态
netstat -n |awk ‘/^tcp/’|awk ‘{print $NF}’|sort |uniq -c |sort -nr
netstat -n | awk ‘/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}’
//网络抓包:tcpdump
tcpdump -nn host 192.168.56.7 and port 80 抓取56.7通过80请求的数据包。
tcpdump -nn host 192.168.56.7 or ! host 192.168.0.22 and port 80 排除0.22 80端口!
tcp/ip 7层协议 物理层–数据链路层-网络层-传输层-会话层-表示层-应用层。

netstat

telnet

curl

linux正则表达式分类:BREs、EREs、PREs

awk
默认EREs

sed
-r=EREs
-i直接修改文件

grep
-E=EREs=egrep
-P=PREs
-v查找不包含匹配项的行

sort

# -k语法格式:[FStart[.CStart]][Modifier][,[FEnd[.CEnd]][Modifier]]
sort -t ' ' -k 1 facebook.txt
sort -n -t ' ' -k 2 facebook.txt
sort -n -t ' ' -k 2 -k 3 facebook.txt
sort -n -t ' ' -k 3r -k 2 facebook.txt
sort -t ' ' -k 3nr -k 2n facebook.txt
sort -t ' ' -k 1.2 facebook.txt
sort -t ' ' -k 1.2,1.2 -k 3,3nr facebook.txt
sort -k 1 -u facebook.txt
sort -k 1.1,1.1 -u facebook.txt
sort -n -k 2 -k 3 -u facebook.txt
/*原来“跨域的设定是个假象”,sort只会比较第二个域的第二个字符到第二个域的最后一个字符的部分,
而不会把第三个域的开头字符纳入比较范围。当发现00和00相同时,sort就会自动比较第一个域去了。
*/
sort -n -k 2.2,3.1 facebook.txt

#加号表示Start部分,减号表示End部分
sort  -t: +1 -2  -n +0 -1  -r vegetables
或 
sort  -t:  -k2,2 n -k1,1 r vegetables

在modifier部分还可以用到哪些选项?

可以用到b、d、f、i、n 或 r。

其中n和r你肯定已经很熟悉了。

b表示忽略本域的签到空白符号。

d表示对本域按照字典顺序排序(即,只考虑空白和字母)。

f表示对本域忽略大小写进行排序(会将小写字母都转换为大写字母来进行比较)。

i表示忽略“不可打印字符”,只针对可打印字符进行排序。(有些ASCII就是不可打印字符,比如\a是报警,\b是退格,\n是换行,\r是回车等等)

常用文本处理工具:http://www.cnblogs.com/me115/archive/2013/11/17/3427319.html

根据ip查询主机名

nmblookup -A 10.19.30.17 //linux
nbtstat -a 10.16.214.60  //windows



———————————-
让你提升命令行效率的 Bash 快捷键

分类: linux 标签:

如何开发一个功能

2013年3月2日 3 条评论 3,219 views  

也许光看标题就感觉,这是一篇晦涩无趣的article,但我想表达的东西很重要,所以我还是写了下来。

这篇文章,基本可以针对除腾讯、百度、阿里、搜狐、新浪、网易、人人、360以及谷歌、微软、甲骨文等等之类的公司(因为这些公司,至少在技术上,我还是比较欣赏的,虽然他们并不欣赏我,嘿嘿)之外的大约90%的it公司。

写这篇文章时,我有3年基于javaEE的管理系统开发经验(这貌似也没啥好说的),大约就职过三个公司;也做过项目管理,review过别人代码,很多时候对别人开发的功能不太满意。

如果你只经历了一个不满意的项目,你可能会认为,只是自己运气差,遇到了一个管理不好的项目,你会认定这只是你所在的公司的问题,而大多数公司其项目管理都是很好的,真的是这样吗?当你跳了一次又一次之后,你失望了,这项目管理咋都这么乱!你的大脑突然的某一刻一不小心站在了一个更高的层面,俯视了一下所有的it公司,问了一个问题,有多少公司的项目管理是跟过家家似的?答案是,很多!你开始相信,项目管理混乱根本就是绝大多数公司的通病,而管理有序的项目,可能只存在于那少数的几个公司(那些毕业就能进这些公司的童鞋,你们真的好幸运)。

听说聚美优品搞周年庆,刚开局服务器就撑不住了,聚美优品也算是名牌公司了,很多人都知道,但又怎样!反问,为何天猫双11没挂?


阅读全文…

分类: 其他 标签: