<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Champ de Mars]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/saywhen</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; saywhen]]></copyright><item><title><![CDATA[[list] myfirstlist]]></title><link>https://blog.csdn.net/saywhen/article/details/22408213</link><guid>https://blog.csdn.net/saywhen/article/details/22408213</guid><author>saywhen</author><pubDate>Fri, 28 Mar 2014 16:05:18 +0800</pubDate><description><![CDATA[#include 
#include //malloc
#include //memset
typedef struct NODE
{
    struct NODE *next;
    char vendor[256];
    char id[256];
    char name[256];
    char type[256];
} Node;
Node *root;
Node **in]]></description><category></category></item><item><title><![CDATA[[redis] Redis C语言客户端库hiredis文档翻译]]></title><link>https://blog.csdn.net/saywhen/article/details/21413895</link><guid>https://blog.csdn.net/saywhen/article/details/21413895</guid><author>saywhen</author><pubDate>Mon, 17 Mar 2014 22:52:31 +0800</pubDate><description><![CDATA[Hiredis是redis数据库一个轻量的C语言客户端库。

之所以轻量是由于它只是简单的提供了对redis操作语句支持的接口，并没有实现具体的操作语句的功能。但正是由于这种设计使我们只要熟悉了通用的redis操作语句就可以很容易的使用该库和redis数据库进行交互。

除了支持发送命令和接收应答/应答数据，它提供了对应答数据的解析操作。而且这个基于I/O层的数据流解析操作设计考虑到了复用]]></description><category></category></item><item><title><![CDATA[[linux C连接Mysql数据库]]]></title><link>https://blog.csdn.net/saywhen/article/details/20710821</link><guid>https://blog.csdn.net/saywhen/article/details/20710821</guid><author>saywhen</author><pubDate>Fri, 07 Mar 2014 15:02:51 +0800</pubDate><description><![CDATA[1.首先要找到mysql.h头文件的位置
/usr/include/mysql
(使用命令 where is mysql 可以找到mysql安装的位置)

2.源文件的编译方法
   1.先编译    gcc -o connect mysql2.c  -I/usr/include/mysql -L/usr/lib/mysql -lmysqlclient    (mysql -lmysql]]></description><category></category></item><item><title><![CDATA[[wireshark] wireshark过滤规则]]></title><link>https://blog.csdn.net/saywhen/article/details/19811549</link><guid>https://blog.csdn.net/saywhen/article/details/19811549</guid><author>saywhen</author><pubDate>Mon, 24 Feb 2014 10:40:41 +0800</pubDate><description><![CDATA[1.
过滤IP，如来源IP或者目标IP等于某个IP
例子:
ip.src eq 192.168.1.107 or ip.dst eq 192.168.1.107
或者
ip.addr eq 192.168.1.107 // 都能显示来源IP和目标IP

2.
过滤端口
例子:
tcp.port eq 80 // 不管端口是来源的还是目标的都显示
tcp.port == 80]]></description><category></category></item><item><title><![CDATA[[vim] vim多行注释、替换和其他操作]]></title><link>https://blog.csdn.net/saywhen/article/details/19339803</link><guid>https://blog.csdn.net/saywhen/article/details/19339803</guid><author>saywhen</author><pubDate>Mon, 17 Feb 2014 16:10:40 +0800</pubDate><description><![CDATA[vim多行注释、替换和其他操作







清空寄存器：qXq,X代表某一寄存器


多行注释：
:.,+3 s/^/#/g            注释从当前行起的后三行（不含当前行）

vi替换命令用法详解：


引用

:ranges/pat1/pat2/g 
其中 
: 这是Vi的命令执行界面。 
range 是命令执行范围的指定，可以使用百分号]]></description><category></category></item><item><title><![CDATA[[Source Insight] source insight 相关插件使用(代码格式化，语法静态检查)]]></title><link>https://blog.csdn.net/saywhen/article/details/19283089</link><guid>https://blog.csdn.net/saywhen/article/details/19283089</guid><author>saywhen</author><pubDate>Sun, 16 Feb 2014 11:22:10 +0800</pubDate><description><![CDATA[在Source Insight集成Astyle（代码格式化）


 


 








   Windows平台下也有好多人都喜欢用SourceInsight编辑C/C++程序，但是SourceInsight没有提供对代码格式化的功能，如果将Artistic Style集成到SourceInsight中，那就可以为它扩展出代码格式化的功能了。
假定AStyle]]></description><category></category></item><item><title><![CDATA[[Source Insight] 解决Source Insight自动缩进及TAB键扩展为4个空格问题]]></title><link>https://blog.csdn.net/saywhen/article/details/19282563</link><guid>https://blog.csdn.net/saywhen/article/details/19282563</guid><author>saywhen</author><pubDate>Sun, 16 Feb 2014 11:02:25 +0800</pubDate><description><![CDATA[1. SMART TAB的用法. 解决自动缩进.

      新开一个PROJECT后，点Options->Document Options，弹出对话框后先在左上角选好要用的Document Type，主要就是设C Source File和C++ Source File，选好后点右边中间的Auto Indent调整缩进。单选里一定要点Smart，右边有两个复选框Indent Open Bra]]></description><category></category></item><item><title><![CDATA[[program skill note]]]></title><link>https://blog.csdn.net/saywhen/article/details/19191941</link><guid>https://blog.csdn.net/saywhen/article/details/19191941</guid><author>saywhen</author><pubDate>Fri, 14 Feb 2014 10:25:55 +0800</pubDate><description><![CDATA[common used to show version information:
const char* version="configurable online dm tool v1.0.4 Copyright to Capitek,build on "__DATE__" at "__TIME__;
void show_version()
{
    fprintf(stderr,"%s\n]]></description><category></category></item><item><title><![CDATA[[c error note]]]></title><link>https://blog.csdn.net/saywhen/article/details/19191617</link><guid>https://blog.csdn.net/saywhen/article/details/19191617</guid><author>saywhen</author><pubDate>Fri, 14 Feb 2014 10:17:38 +0800</pubDate><description><![CDATA[-->1
错误现象：日志记录功能(log.c)失效
错误原因：在处理话单文件时使用了chdir()函数]]></description><category></category></item><item><title><![CDATA[[ubuntu] VMware Ubuntu虚拟机连接secureCRT及UltraEdit ftp传输文件]]></title><link>https://blog.csdn.net/saywhen/article/details/19133581</link><guid>https://blog.csdn.net/saywhen/article/details/19133581</guid><author>saywhen</author><pubDate>Wed, 12 Feb 2014 22:12:09 +0800</pubDate><description><![CDATA[一、安装vmware没有问题，网络设置以NAT方式（VMnet8是vmware专属的虚拟网卡）。安装完毕后设置虚拟机的VirtualNetworkEditor（可以再开始->所有程序VMware安装文件夹中找到）WMnet8不能和PC主机处于同一网段.




     VMware Ubuntu虚拟机连接secureCRT及ftp传输文件" title="WIN7 VMware Ubu]]></description><category></category></item><item><title><![CDATA[[shell-命令] split]]></title><link>https://blog.csdn.net/saywhen/article/details/18796203</link><guid>https://blog.csdn.net/saywhen/article/details/18796203</guid><author>saywhen</author><pubDate>Sun, 26 Jan 2014 15:26:45 +0800</pubDate><description><![CDATA[1生成大小为100kb的测试文件

dd if=/dev/zero bs=100k count=1 of=data.file # 内容全部都是0



2 将data.file分割成更多的文件

$ split -b 10k data.file #以字母命名

$ ls

data.file xaa xab xac xad xae xaf xag xah xai xaj
]]></description><category></category></item><item><title><![CDATA[[shell-命令] sort uniq]]></title><link>https://blog.csdn.net/saywhen/article/details/18795933</link><guid>https://blog.csdn.net/saywhen/article/details/18795933</guid><author>saywhen</author><pubDate>Sun, 26 Jan 2014 15:11:54 +0800</pubDate><description><![CDATA[sort命令既可以从特定文件，也可以从stdin中获取输入，并将输出写入stdout。
sort对一组文件进行排序

sort abc.txt def.txt 

abcdefg

def

fanyl

fanyl

fanyunlong
-n按数字进行排序

$ sort -n file.txt
-r按逆序进行排序

$ sort -r file.txt]]></description><category></category></item><item><title><![CDATA[[shell-命令] tr]]></title><link>https://blog.csdn.net/saywhen/article/details/18795765</link><guid>https://blog.csdn.net/saywhen/article/details/18795765</guid><author>saywhen</author><pubDate>Sun, 26 Jan 2014 14:51:05 +0800</pubDate><description><![CDATA[tr可以对来自标准输入的字符进行替换、删除、压缩，常被称为(translate命令).

tr只能通过stdin，而无法通过命令行参数来接受输入。调用格式如下：

tr [options] set1 set2


1 转换大小写

echo "HELLO WHO IS THIS" | tr 'A-Z' 'a-z'


2 数字加密解密

$ echo 12345 | t]]></description><category></category></item><item><title><![CDATA[[shell-命令] xargs]]></title><link>https://blog.csdn.net/saywhen/article/details/18795637</link><guid>https://blog.csdn.net/saywhen/article/details/18795637</guid><author>saywhen</author><pubDate>Sun, 26 Jan 2014 14:41:02 +0800</pubDate><description><![CDATA[1 将一个命令的stdout作为另一个命令的stdin

cat foo.txt | grep "test"
2 xargs将标准输入数据（stdin）转化成命令行参数

command | xargs
3 将多行输入转换成单行输出

$ cat example.txt # Example file

1 2 3 4 5 6 

7 8 9 10 

11 12

]]></description><category></category></item><item><title><![CDATA[[shell-命令] cat]]></title><link>https://blog.csdn.net/saywhen/article/details/18795577</link><guid>https://blog.csdn.net/saywhen/article/details/18795577</guid><author>saywhen</author><pubDate>Sun, 26 Jan 2014 14:35:41 +0800</pubDate><description><![CDATA[1. 压缩空白行

cat -s file
2.移除空白行

cat file | tr -s '\n'
3.显示制表符为 ^I

cat -T file

def function():

^Ivar = 5

next = 6

^Ithird = 7^I
4.显示行号

cat -n lines.txt

1 line

2 line

3 ]]></description><category></category></item><item><title><![CDATA[[shell-命令] find]]></title><link>https://blog.csdn.net/saywhen/article/details/18795111</link><guid>https://blog.csdn.net/saywhen/article/details/18795111</guid><author>saywhen</author><pubDate>Sun, 26 Jan 2014 14:08:33 +0800</pubDate><description><![CDATA[搜索大全

1.-name(按照名称搜索)

find /home/slynux -name "*.txt" –print 

find . \( -name "*.txt" -o -name "*.pdf" \) -print （多条件）

 

-iname 与 -name相同,但是匹配时忽略大小写

2.-path（将路径文件名视为匹配的整体）

find  /h]]></description><category></category></item><item><title><![CDATA[[shell-命令] 摘要]]></title><link>https://blog.csdn.net/saywhen/article/details/18454435</link><guid>https://blog.csdn.net/saywhen/article/details/18454435</guid><author>saywhen</author><pubDate>Sat, 18 Jan 2014 17:08:07 +0800</pubDate><description><![CDATA[find
搜索大全
1.-name(按照名称搜索)
find /home/slynux -name "*.txt" –print 
find . \( -name "*.txt" -o -name "*.pdf" \) -print （多条件）
 
-iname 与 -name相同,但是匹配时忽略大小写
2.-path（将路径文件名视为匹配的整体）
find  /home/user]]></description><category></category></item><item><title><![CDATA[[shell-脚本] 调用开始结束脚本]]></title><link>https://blog.csdn.net/saywhen/article/details/18219917</link><guid>https://blog.csdn.net/saywhen/article/details/18219917</guid><author>saywhen</author><pubDate>Mon, 13 Jan 2014 13:54:30 +0800</pubDate><description><![CDATA[调用开始脚本
#!/bin/sh 
# start shell_procedure

# shell_procedure path
prefix=/cg/script

RUNNING=0
PID="`pgrep -x shell_procedure`"
if [ "`echo "$PID" | awk '{print length($1)}'`" -ne 0 ]
then
  RUNNING=]]></description><category></category></item><item><title><![CDATA[[shell-基础] 比较与测试]]></title><link>https://blog.csdn.net/saywhen/article/details/17937675</link><guid>https://blog.csdn.net/saywhen/article/details/17937675</guid><author>saywhen</author><pubDate>Tue, 07 Jan 2014 01:04:35 +0800</pubDate><description><![CDATA[1 if条件
if condition;
then
commands;
fi
2 else if 和else:
if condition; 
then
commands;
elif condition; 
then
commands
else
commands
fi
if的条件判断部分可能会变得很长，但是可以用逻辑运算符将它变得简洁一些：
[ conditon ] ]]></description><category></category></item><item><title><![CDATA[[shell-基础] 字段分隔符和迭代器]]></title><link>https://blog.csdn.net/saywhen/article/details/17937621</link><guid>https://blog.csdn.net/saywhen/article/details/17937621</guid><author>saywhen</author><pubDate>Tue, 07 Jan 2014 01:03:30 +0800</pubDate><description><![CDATA[内部字段分隔符(Internal Field Separator,IFS)
在处理文本数据非常有用
IFS是存储界定符的环境变量，他是当前shell环境使用的默认的定界字符串
1考虑CSV数据的情况
data="name,sex,rollno,location"
可以使用IFS读取变量中的每一个条目
oldIFS=$IFS
IFS=, #现在界定符是”,”
for item in ]]></description><category></category></item></channel></rss>