LINUXÍøÂç±à³Ì,¼òµ¥µÄÁÄÌì³ÌÐò
·þÎñÆ÷¶Ë£º
½¨Á¢socket£¬±¾µØµØÖ·°ó¶¨bind£¬È»ºó½¨Á¢¼àÌý£¬Èç¹ûÓпͻ§¶ËÇëÇóÔòÏìÓ¦Ö®£¬È»ºó½øÐÐÊý¾ÝµÄ·¢ËͺͽÓÊÕ
Ô´´úÂë:
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <sys/time.h>
#include <string.h>
#include <fcntl.h>
#define MAXDATASIZE 100
#define SERVPORT 3333
#define BACKLOG 10//×î´óÁ¬½ÓÊý
#define STDIN 0 //±ê×¼ÊäÈë
int main(void)
{
FILE *fp;
int sockfd,client_fd;//socket.sock_fd¼àÌý,socket.new_fdÊý¾Ý´«Êä
int sin_size;
struct sockaddr_in my_addr,remote_addr;//±¾»úµØÖ·ÐÅÏ¢£¬¿Í»§µØÖ·ÐÅÏ¢
char buf[256]; //ÓÃÓÚÁÄÌìµÄ»º³åÇø
char buff[256];//ÓÃÓÚÊäÈëÓû§ÃûµÄ»º³åÇø
char send_str[256];
int recvbytes;
fd_set rfd_set,wfd_set,efd_set;//±»select¼àÊӵĶÁ£¬Ð´£¬Òì³£´¦ÀíµÄÎļþÃèÊö·û¼¯ºÏ
struct timeval timeout;
int ret;
if((sockfd=socket(AF_INET,SOCK_STREAM,0))==-1)
{
perror("socket");
exit(1);
}
/*¶ËÌî³äsockaddr½á¹¹*/
bzero(&my_addr,sizeof(struct sockaddr_in));
my_addr.sin_family=AF_INET;//µØÖ·×å
my_addr.sin_port=htons(SERVPORT);
inet_aton("127.0.0.1",&my_addr.sin_addr);
if(bind(sockfd,(struct sockaddr *)&my_addr,sizeof(struct sockaddr))==-1)
{
perror("bind");
exit(1);
}
if(listen(sockfd,BACKLOG)==-1)
{
perror("listen");
exit(1);
}
sin_size=sizeof(struct sockaddr_in);
if((client_fd=accept(sockfd,(struct sockaddr *)&remote_addr,&sin_size))==-1)
{
perror("accept");
exit(1);
}
fcntl(client_fd,F_SETFD,O_NONBLOCK);//·þÎñÆ÷Ϊ·Ç×èÈû
recvbytes=recv(client_fd,buff,MAXDATASIZE,0);
buff[recvbytes]='\0';
fflush(stdout);
/*Ç¿ÖÆÁ¢¼´ÄÚÈÝ*/
if((fp=fopen("name.txt","a+"))==NULL)
{
printf("can not open filie,exit...\n");
return -1;
}
fprintf(fp,"%s\n",buff);
/*½«Óû§ÃûдÈëname.txtÖÐ*/
while(1)
{
FD_ZERO(&rfd_set);//¶ÁÎļþÃèÊö·ûÇå
Ïà¹ØÎĵµ£º
Íæ×ªLinux shellÃüÁîÌáʾ·û
×ªÔØ×Ô http://www.cnblogs.com/starspace/archive/2009/02/21/1395600.html
Èç¹ûÄúºÜÈÝÒ×ʹ shell ÌáʾÐбäµÃÉ«²ÊѤÀÃìµÇÒ´øÓиü¶àÐÅÏ¢£¬ÎªÊ²Ã´»¹Òª¼á³ÖÓõ¥µ÷µÄ±ê×¼ shell ÌáʾÐÐÄØ£¿ÔÚÕâÆª¼¼ÇÉÖУ¬Daniel Robbins ½«ËµÃ÷ÈçºÎ»ñµÃ·ûºÏÄúµÄÒâÔ¸µÄ shell ÌáʾÐУ¬²¢»á˵Ã÷ÈçºÎ¶¯Ì ......
Linux½ø³Ì²é¿´
×ªÔØ×Ô http://www.cnblogs.com/starspace/archive/2008/10/17/1313246.html
¡¡¡¡linuxÊǸö¶àÓû§ÏµÍ³£¬ÓÐʱºòÒ²ÒªÁ˽âÆäËûÓû§ÏÖÔÚÔÚ¸Éʲô£¬ËùÒÔÔÚ±¾½ÚÖл¹½«½Ó´¥¶àÓû§·½ÃæµÄÈÝ¡£Í¬Ê±LinuxÊÇÒ»¸ö¶à½ø³Ìϵͳ£¬¾³£ÐèÒª¶ÔÕâЩ½ø³Ì½øÐÐһЩµ÷ÅäºÍ¹ÜÀí£»¶øÒª½øÐйÜÀí£¬Ê×ÏȾÍÒªÖªÏÖÔڵĽø³ÌÇé¿ ......
linuxϵÄlddÃüÁî(ת)
1¡¢Ê×ÏÈldd²»ÊÇÒ»¸ö¿ÉÖ´ÐгÌÐò£¬¶øÖ»ÊÇÒ»¸öshell½Å±¾
2¡¢lddÄܹ»ÏÔʾ¿ÉÖ´ÐÐÄ£¿éµÄdependency£¬ÆäÔÀíÊÇͨ¹ýÉèÖÃһϵÁеĻ·¾³±äÁ¿£¬ÈçÏ£º LD_TRACE_LOADED_OBJECTS¡¢LD_WARN¡¢LD_BIND_NOW¡¢LD_LIBRARY_VERSION¡¢ LD_VERBOSEµÈ¡£µ±LD_TRACE_LOADED_OBJECTS»·¾³±äÁ¿²»Îª¿Õʱ£¬ÈκοÉÖ´ÐгÌÐòÔÚÔËÐÐʱ ......
LinuxÎļþ²éÕÒÃüÁîfind,xargsÏêÊö
×ªÔØ×Ô http://www.cnblogs.com/starspace/archive/2008/10/20/1315384.html
×ܽ᣺zhy2111314
À´×Ô£ºLinuxSir.Org
ÕûÀí£º±±ÄÏÄϱ±
ÕªÒª£º ±¾ÎÄÊÇfind ÃüÁîµÄÏêϸ˵Ã÷£¬¿É¹óµÄÊÇÕë¶Ô²ÎÊý¾ÙÁ˺ܶàµÄʵÀý£¬´óÁ¿µÄÀýÖ¤£¬ÈóõѧÕ߸üΪÈÝÒ×Àí½â£»±¾ÎÄÊÇzhyflyÐÖÌùÔÚÂÛ̳ÖУ»Î ......
TIMER_INITIALIZER£¨£©£º
1):TIMER_INITIALIZER£¨£©ÓÃÀ´ÉùÃ÷Ò»¸ö¶¨Ê±Æ÷£¬ËüµÄ¶¨ÒåÈçÏ£º
#define TIMER_INITIALIZER(_function, _expires, _data) { \
.function = (_fun ......