编程实用命令和工具

1.在linux下经常要对比两个文件在内容上有哪里不一样,可以用vim的deffsplit解决,具体如下:

问题:有文件a.tmp和b.tmp,对比两文件内容上有哪些地方不一样.
解决:

1).在vim打开a.tmp

vim a.tmp

2).在vim中输入

:vert diffsplit b.tmp


简单方法:直接在shell下

vimdiff a.tmp b.tmp

效果图如下:

编程实用命令和工具_第1张图片

拓展:

1)打开文件折叠:(文本默认将部分内容折叠,扩大视野)
            zo 临时展开被折叠的相同内容
            zc 重新折叠

2) 定位到不同点:
    [c     跳到前一个不同点
    ]c     跳到后一个不同点

3) 合并文档:
    dp     将差异点的当前文档内容应用到另一文档(diff put)
    do     将差异点的另一文档的内容拷贝到当前文档(diff get)

4)在窗口间跳转:

    ctrl-w w    跳到下一个窗口
    ctrl-w h    跳到左侧窗口
    ctrl-w l    跳到右侧窗口
    ctrl-w j    跳到下方的窗口
    ctrl-w k    跳到上方的窗口



2.检查文件中是否有重复的行

问题:查找文件a.tmp中重复的行

解决:直接shell中输入
grep -v ^# ./a.tmp | awk '{print $1}' | sort | uniq -d

效果图如下:

编程实用命令和工具_第2张图片
附上awk,uniq,sort技巧http://blog.163.com/richma@126/blog/static/171357596201010193021619/


你可能感兴趣的:(编程实用命令和工具)