1. Vim基本命令

    很久不用vim了,发现什么命令都忘光了,敲起代码来连复制粘贴都不会了,还得用gedit去搞,真的相当蛋疼。这里把常用的命令汇总一下,趁机好好系统的记一下。不看不知道,看了才晓得原来vim还有很多非常炫的特性。 帮助文档 首先,我们得晓得vim的帮助文档。当然man vim 是一个不错的选择,不过他主要是基于在bash中使用,而不是在vim界面中的使用。非常感人的是,vim有一个自带的中文教程(中文!),讲的非常清楚(不过我没耐心看完)。 myths@myths-X450LD:~$ vimt…

    Vim阅读全文

  2. JSON文件格式概述

    我们知道现如今,json格式很多网页在前端和后端交互的过程中都会用到的一种文件格式,尤其是在使用ajax进行交互的场合。他的语法简单,而且条理十分清晰,适合处理大量的有着逻辑关系的数据。 定义 什么是 JSON ? 1. JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation) 2. JSON 是轻量级的文本数据交换格式 3. JSON 独立于语言 4. JSON 具有自我描述性,更易理解 5. JSON 使用 JavaScri…

    JavaScript阅读全文

  3. Ubuntu下卸载多余的Ubuntu系统

    之前由于种种原因,折腾了很多个Ubuntu系统,也换了好多个,重新安装了很多次系统,终于找到了当前这个能用的了。本以为万事大吉了,然而最近突然发现之前安装的没用的Ubuntu系统竟然还在我的磁盘中!不说了,接下来我们的任务肯定得把这个删干净了。 然而百度了一下发现并没有这样的教程,有的很多都是在win+ubuntu双系统下删除ubuntu以及grub。显然我们不需要删除grub,而且万一我们没有windows系统呢?学Linux肯定得在Linux下解决问题了。 本打算用fdisk命令之类的进…

    Linux阅读全文

  4. 远程挂载服务器命令sshfs

    一直以为免密码登陆远程服务器已经是非常方便了,但是最近发现了一个更加方便的方法-------远程服务器居然可以挂载到本地!利用sshfs工具,使用基于ssh协议的ssh文件系统,我们可以像操作本地文件一样的执行、传输服务器的文件了。 当然,GNU的标准并没有包含sshfs,所以我们需要下载一下: myths@myths-X450LD:~$ sudo apt-get install sshfs 下载好以后,我们只需要像ssh登陆一样的挂载远程服务器: (当然我们需要管理员权限) $ s…

    Linux, Tools, SSH阅读全文

  5. PNG文件格式详解

    最近在看隐写术的时候经常需要研究图片文件的二进制文档格式,那么这就很有必要了解我们的图片文件究竟是如何保存的了,今天找了个时间看了下png文件的文档格式。总体还是挺麻烦的,不过毕竟不需要有什么要求,能了解即可。 概述 PNG是20世纪90年代中期开始开发的图像文件存储格式,其目的是替代GIF和TIFF文件格式,同时增加一些GIF文件格式所不具备的特性。流式网络图形格式(Portable Network Graphic Format,PNG)名称来源于非官方的“PNG's Not G…

    Linux, PNG阅读全文

  6. 网页的防采集方式-Token和Referer

    今天在写模拟登陆的时候遇到了一点问题,一个是在post数据中有许多随机串,让人摸不着头脑;另一个问题是明明已经post了正确的数据,然而还是莫名其妙的无法登陆。倒腾了半天终于发现了这原来是很多网站为了防止一些攻击所进行的安全保护措施,分别是token 和 referer防护。 Token Token实际上就是一个随机串,在含有input表单的页面内以一个‘hidden’表单实现。通常是以以下的形式: <input type='hidden' name="s…

    HTML, Spider, Python阅读全文

  7. 利用文件头标志判断文件类型

    简介 我们都知道,文件的扩展名是用来识别文件类型的。通过给他指定扩展名,我们可以告诉自己,也告诉操作系统我们想用什么方式打开这个文件。比如我么会把.jpg的文件默认用图片显示软件打开,.zip 文件会默认用解压软件打开等等。 然而,扩展名完全是可以随便改改的。我们可以给文件设置一个任意的扩展名,当然也可以不设置扩展名。这样一来我们就不能了解到这个文件究竟是做什么的,究竟是个什么样的文件。我们或许也会疑惑,为什么一个软件,比如视频播放器,就能用正确的方式打开.mp4 .rmvb .wmv 等等…

    Anecdote, Linux阅读全文

  8. MD5算法应用

    MD5(Message-Digest Algorithm 5)算法是一种非常常见的信息摘要hash算法,一般可以用来进行数字签名,或者理解成为一种压缩算法。他的本质是一种分组加密算法。百度上对MD5算法简要的叙述为:MD5以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值。用十六进制表示的话,每四位变成一个十六进制数,这样也就是生成了总共为32位的十六进制数,即MD5码。…

    Python, Cryptography阅读全文

  9. 短信轰炸机原理分析及简要实现

    很多情况下,我们会遇到一些讨厌的人,特别是那种电信诈骗的骗子,行骗方法歹毒低劣,十分令人恶心。然而我们又不能拿他们怎么办。这时候我们就会想起用电话轰炸机这个东西来打击报复。网络上也有过类似的比如“短信轰炸机”这种东西,我也用他来黑过一些人。据他们后来说他们收到的都是些注册会员啊,登陆啊之类的短信提示,十分的烦人。当时听上去就觉得这个东西真的很厉害。最近一个偶然的机会,我发现其实短信轰炸机这种东西原理也是十分的简单的,只要拥有一些基础的网页登陆的知识,理论上就可以实现写出自己的“短信轰炸机”。…

    Anecdote, Python阅读全文

  10. Qt实现FTP的上传和下载

    本来想简单抄抄书,随便手写个Ftp客户端的,结果发现教材上的是基于Qt4的QFtp类库,而在Qt5中取消了这一个类库(同时也取消了QHttp等的类),取而代之的是QNetworkAccessManager 这个类,把这些杂货全都揽下来了,据说是因为之前的两个类有重复而且效率有问题balabala。于是就百度了一下,发现百度上要么讲的不全,要么就是要去下一个由热心网民重新封装的QFtp类。显然我并不喜欢无脑复制粘贴,想好好看下Qt官方提供的东西的用法,深入的理解下Qt网络编程,于是就果断自行goo…

    Qt, C/C++阅读全文