|
accept(2)是可以接受一个sockaddr指针来返回一个远端主机的地址,但是,实际情况是,如果这个连接是这个程序第一次发生的时候,是没有获得任何数据的,从第二次开始就没有这个问题,也就是紧跟这accept函数使用一个getpeername(2),即可以得到连接的主机的IP地址,从这以后开始的连接都没有这个问题。可是,如果accept中如果用accept(sock_fd,NULL,NULL)这样的形式,来使accept(2)不返回远端主机地址的情况下,第一次getperrname函数也是什么都得不到的。 (09月24日) [查看全文] Linux vi中移动光标命令 移动光标 (09月24日) [查看全文] 最近需要使用红黑树,在网上查找资料的时候无意中发现linux内核中有个红黑树的实现,并且其代码非常的独立,现把它摘录出来。我摘录自2.6.24的内核,分为两个文件rbtree.h和rbtree.c,rbtree.h位于内核源码的include/linux目录中,rbtree.c位于内核源码的lib目录中。 rbtree.h中删除#include 和#include 两行,添加#include (09月23日) [查看全文] Linux 无法执行SHELL命令的 处理方法: export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/i686-pc-linux-gnu/gcc-bin/4.1.2:/usr/kde/3.5/sbin:/usr/kde/3.5/bin:/usr/qt/3/bin" (09月23日) [查看全文] 我目前使用的是Ubuntu的8.04,因为最近一直在升级Linux,导致目前我的GCC也变高了,目前是4.2.3。当我编译以前手头上的CROSSTOOL时出现这样的提示: checking for a BSD-compatible install... /usr/bin/install -c (09月22日) [查看全文] 在Linux AS4上安裝VNC 4.0 1. 由www.realvnc.com 下載VNC 4.0 for Linux 2. cd root --> tar -zxvf vnc-4.0-x86_linux.tar.gz 3. cd vnc-4.0-x86_linux 4. ./vncinstall /usr/local/bin /usr/local/man (09月21日) [查看全文] 环境: 准备: (09月21日) [查看全文] 本过程中涉及到的Linux的命令有:split, iconv, cat
问题:有一个3G的文本a.txt,编码格式为gbk,现在需要对其进行转换成为utf-8。 难点:iconv的转换是在内存中进行的,因此3G大小的文本,无法进行直接转换。 思路:先利用split进行文件切分,然后对每一个字文件进行ivonv转换,最后进行cat合并。 具体操作如下: 1) ll -h a.txt 查看文件的大小,2.9G 2) wc -l a.txt 查看文件的行数,9千200万行 3) split -l 20000000 a.txt chunk 按照每个文件2千万行进行切割,共分成5个文件 (09月21日) [查看全文] POSIX的Linux操作系统没有提供线程挂起和恢复的例程,在网上找了找,看到一个老外写的程序,感觉想法不错,放在这里大家分享一下。理论上应该可以实现,不过我没有试,给大家提供一个参考。 void CPrcThread<Worker>::suspend() (09月21日) [查看全文] 一、当前系统概况: 二、准备工作: (09月20日) [查看全文] 在用ifstream的seekg()函数时遇到了问题,想查看一下C++标准库的头文件,找了半天终于找到我机器上的标准库头文件所在目录。在我机器上是:/usr/include/c++/4.0.0 其中以.h为后缀的头文件在这个目录下的backward文件夹里 查找文件的相应命令:比如要找iostream,可以使用locate命令,如locate (09月20日) [查看全文] 如果我们有很多个子进程,那么,当任何一个子进程结束的时候wait都会返回。如果我们像等待其中某一个特定的进程结束(假定我们知道那个进程的进程ID),在老版本的Unix系统上,我们能够调用wait函数,并且比较它返回的进程ID和我们想得到的进程ID。如果这个结束的进程不是我们期望的进程,那么我们不得不保存这个进程ID和结束状态,然后再一次调用wait函数。 (09月19日) [查看全文] |
内容分类
本周热门内容
赞助商连接
|