8 长江之友

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 3w+

将文件内容逐行读取处理并写入对应文件中

场景:现有一个文件里面有大量的数据,约3.6G,4000多万行,每行的数据格式是一样的,共有9个域,如下: 3880961244329353 9 26 3862561814 2015-08-28 23:45:28 qinglei 2015-08-28 23:50:13现在的需求是:将每一行数据按照倒数第二个域的日期来分类,相同日期的行写入相应日期的文件中,并且对文件名的日期进行处理(

2015-11-06 19:32:10

PHP配置文件详解php.ini

[PHP] ; PHP还是一个不断发展的工具,其功能还在不断地删减 ; 而php.ini的设置更改可以反映出相当的变化, ; 在使用新的PHP版本前,研究一下php.ini会有好处的;;;;;;;;;;;;;;;;;;; ; 关于这个文件 ; ;;;;;;;;;;;;;;;;;;;; 这个文件控制了PHP许多方面的观点。为了让PHP读取这个文件,它必须被命名为 ; ‘php.

2015-08-03 16:53:03

sql特殊查询

查询数据表中的重复数据场景:有一个数据表member,结构如下: 表中数据如下: 要求查询member表中name重复的数据,sql语句为: select a.id,b.name from member as a,member as b where a.name=b.name and a.id<>b.id; 结果如下图:

2015-08-01 11:12:55

PHP Socket通信编程

Socket用于进程间通信。进程间通信通常基于客户端—服务端模型。此时,客户端—服务端是可以彼此交互的应用程序。客户端和服务端之间的交互需要连接。Socket编程负责的就是为应用程序之间建立可进行交互的连接。用PHP创建一个简单的客户端—服务端,开发一个客户端用于发送string消息到服务端,服务端将相同的信息反转后返回给客户端。服务器端列表内容设置主机和端口 端口号可以是1024 -65535

2015-07-31 14:01:23

php的curl抓包

在PHP中实现抓包有两种方式,一个是使用file_get_contents()函数采集页面内容,另一种就是curlCURL请求过程 curl完成请求主要是分为以下四步: 1、初始化,创建一个新的curl资源(即:curl_init()) 2、设置URL和相应的选项(即:curl_setopt() ) 3、抓取URL并把它传递给浏览器(即

2015-07-28 22:44:05

约瑟夫环问题的链表解法和数学解法(PHP)

约瑟夫环问题一群猴子排成一圈,按1,2,…,n依次编号。然后从第1只开始数,数到第m只,把它踢出圈,从它后面再开始数,再数到第m只,在把它踢出去…,如此不停的进行下去,直到最后只剩下一只猴子为止,那只猴子就叫做大王。要求编程模拟此过程,输入m、n,输出最后那个大王的编号。链表解法function king($n,$m){ $monky = range(1,$n); $i = 0;

2015-07-17 10:52:40

PHP的魔术方法

1、__get/__set:对对象属性的接管 2、__call/__callStatic:控制php对象方法的使用 3、__toString:将php对象转换成字符串 4、__invoke:将一个php对象当成函数来执行时来回调这个方法class Object { protected $array = array();function __set($key,$value){

2015-06-30 16:47:28

Apache配置虚拟主机

1 在Ubuntu系统的/etc/hosts文件中添加域名指向IP 2 在Apache中配置虚拟主机 在Apache的虚拟主机配置文件夹sites-available中将默认的配置default赋值一份需要添加的模块vedio,然后对vedio进行修改: (1) 添加:ServerName vedio.xiongchao.net.cn

2015-06-30 12:56:38

授权远程连接MySQL(Linux)

MySQL远程访问的命令 格式: mysql -h主机地址 -u用户名 -p用户密码首先在目标服务器上(115.159.66.51)修改mysql的my.cnf文件: 修改退出后,重启mysql服务 命令:sudo service mysql restart此时尝试用115.159.66.51主机来连接mysql ubuntu@VM-194-212-ubuntu:/etc/mysql$ my

2015-06-29 12:07:31

Linux网络命令

ifconfig命令:查看和配置网络状态命令ifdown 网卡设备名 :禁用该网卡设备 ifup 网卡设备名 :启用该网卡设备netstat 选项 :查询网络状态 选项: -t : 列出TCP协议端口 -u : 列出UDP协议端口 -n : 不使用域名和服务名,而使用IP地址和端口号 -l : 仅列出在监听状态网

2015-06-29 11:10:35

Git操作-标签

创建标签使用命令:git tag name就可以打一个新标签,用git tag查看所有标签: 注:默认标签是打在最新提交的commit上的情景一:有时候,修改提交之后如果忘了打标签,想回过去把标签打上方法:使用命令:git log --pretty=oneline --abbrev-commit n找到历史提交的commit id,然后打上就可以了: 注意,标签不是按时间顺序列出,而是按

2015-05-03 21:15:12

Git操作-分支管理(三)

bug分支情境:当你在开发的过程中突然要修复一个被提出的bug,但是现在你当前分支上的工作还没有提交,但是工作还没完成,没法提交,而又急于修改这个bug方法:Git提供了一个stash功能,命令:git stash,可以把当前工作现场(当前分支的工作)“储藏”起来,等以后恢复现场后继续工作。。 这样工作区就是干净的了 接着,首先确定要在哪个分支上修复bug,假定需要在master分支上修复,就从

2015-05-03 18:42:56

Git操作-分支管理(二)

解决冲突场景:创建一个新的分支feature1,然后在README.txt文件里添加4 create a branch named feature1,然后在feature1分支上提交。提交后切换到master分支,再在master分支上将最后一行修改为create a new branch named feature1,再提交,现在,master分支和feature1分支各自都分别有新的提交:

2015-05-03 11:56:42

Git操作-分支管理(一)

分支介绍多个分支就是在版本库中有多条提交的记录线条,如下图所示,蓝色的master是一个分支,红色的dev也是一个分支,HEAD所指的是当前的分支: 分支在实际中有什么用呢?假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交,由于代码还没写完,不完整的代码库会导致别人不能干活了。如果等代码全部写完再一次提交,又存在丢失每天进度的巨大风险。现在有了分支,就不用怕了

2015-05-03 10:54:19

Git操作-远程仓库

我们这里的远程仓库使用github(提供git仓库托管的一个网站),首先需要有github账号。连接本地git与github由于本地git仓库与github仓库之间的传输是通过SSH加密的,所以需要设置: 1、创建SSH Key。在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开She

2015-05-02 22:29:21

Git操作-修改与删除

管理修改第一次修改 ->git add -> 第二次修改 ->git commit如果第一次修改git add ,第二次修改还没来的及’git add’,此时如果git commit 第二次的修改是没有在版本库的,Git管理的是修改,当你用git add命令后,在工作区的第一次修改被放入暂存区,准备提交,但是,在工作区的第二次修改并没有放入暂存区,所以,git commit只负责把暂存区的修改提交了

2015-05-02 21:31:13

Git操作-版本回退

接着上一节的例子 我们在README.txt文件中再添加一段内容(add modify1):1 add a file called README2 add modify1然后提交到版本库查看日志使用$ git log 显示文件的每次提交修改的记录,git log命令显示从最近到最远的提交日志 如果嫌输出信息太多,看得眼花缭乱的,可以试试加上–pretty=oneline参数: 注意

2015-05-02 20:36:41

Git工作结构

创建版本库首先选择一个目录(尽量确保目录名不包含中文),然后对这个目录git bash,然后在这个目录下 $ git init 把这个目录变成git可以管理的仓库(repository) 这样git就把仓库(gitTest)建立好了,在gitTest目录下会显示有一个.git的目录,这个目录是Git来跟踪管理版本库的,没事千万不要手动修改这个目录里面的文件,不然改乱了,就把Git仓库给

2015-05-02 17:54:04

Git环境安装配置

我们这里只要讲的Git安装环境主要针对Windows(因为条件限制),等以后有机会了再把Linux和Mac上的补充上。安装在Windows上安装Git,需要首先下载msysgit,msysgit是Windows版的Git,可以从http://msysgit.github.io/,然后直接安装即可。 安装完成后,在开始菜单里找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明

2015-05-02 16:52:43

版本控制系统-集中式与分布式的区别

SVN和CVS都是集中式版本控制系统,而Git是分布式版本控制系统集中式版本控制系统版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器。 集中式版本控制系统最大的毛病就是必须联网才能工作,如果在局域网内还好,带宽够大,速度够快,可如果在互联网上,遇到网速慢的话,可能提交一个10M的文件就需要5分

2015-05-01 21:38:30

查看更多

勋章 我的勋章
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!