Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

linux ³£ÓÃcº¯Êý


opendir£¨´ò¿ªÄ¿Â¼£©
Ïà¹Øº¯Êý
open£¬readdir£¬closedir£¬rewinddir£¬seekdir£¬telldir£¬scandir
±íÍ·Îļþ
#include<sys/types.h>
#include<dirent.h>
¶¨Ò庯Êý
DIR * opendir(const char * name);
º¯Êý˵Ã÷
opendir()ÓÃÀ´´ò¿ª²ÎÊýnameÖ¸¶¨µÄĿ¼£¬²¢·µ»ØDIR*ÐÎ̬µÄĿ¼Á÷£¬ºÍopen()ÀàËÆ£¬½ÓÏÂÀ´¶ÔĿ¼µÄ¶ÁÈ¡ºÍËÑË÷¶¼ÒªÊ¹Óô˷µ»ØÖµ¡£
·µ»ØÖµ
³É¹¦Ôò·µ»ØDIR* ÐÍ̬µÄĿ¼Á÷£¬´ò¿ªÊ§°ÜÔò·µ»ØNULL¡£
´íÎó´úÂë
EACCESS ȨÏÞ²»×ã
EMFILE ÒÑ´ïµ½½ø³Ì¿Éͬʱ´ò¿ªµÄÎļþÊýÉÏÏÞ¡£
ENFILE ÒѴﵽϵͳ¿Éͬʱ´ò¿ªµÄÎļþÊýÉÏÏÞ¡£
ENOTDIR ²ÎÊýname·ÇÕæÕýµÄĿ¼
ENOENT ²ÎÊýname Ö¸¶¨µÄĿ¼²»´æÔÚ£¬»òÊDzÎÊýname Ϊһ¿Õ×Ö·û´®¡£
ENOMEM ºËÐÄÄÚ´æ²»×ã¡£
readdir£¨¶ÁȡĿ¼£©
Ïà¹Øº¯Êý
open£¬opendir£¬closedir£¬rewinddir£¬seekdir£¬telldir£¬scandir
±íÍ·Îļþ
#include<sys/types.h>
#include<dirent.h>
¶¨Ò庯Êý
struct dirent * readdir(DIR * dir);
º¯Êý˵Ã÷
readdir()·µ»Ø²ÎÊýdirĿ¼Á÷µÄϸöĿ¼½øÈëµã¡£
½á¹¹dirent¶¨ÒåÈçÏÂ
struct dirent
{
ino_t d_ino;
ff_t d_off;
signed short int d_reclen;
unsigned char d_type;
har d_name[256;
};
d_ino ´ËĿ¼½øÈëµãµÄinode
d_off Ŀ¼Îļþ¿ªÍ·ÖÁ´ËĿ¼½øÈëµãµÄÎ»ÒÆ
d_reclen _nameµÄ³¤¶È£¬²»°üº¬NULL×Ö·û
d_type d_name ËùÖ¸µÄÎļþÀàÐÍ
d_name ÎļþÃû
·µ»ØÖµ
³É¹¦Ôò·µ»ØÏ¸öĿ¼½øÈëµã¡£ÓдíÎó·¢Éú»ò¶ÁÈ¡µ½Ä¿Â¼ÎļþβÔò·µ»ØNULL¡£
¸½¼Ó˵Ã÷
EBADF²ÎÊýdirΪÎÞЧµÄĿ¼Á÷¡£
·¶Àý
#include<sys/types.h>
#include<dirent.h>
#include<unistd.h>
main()
{
DIR * dir;
struct dirent * ptr;
int i;
dir =opendir(“/etc/rc.d”);
while((ptr = readdir(dir))!=NULL)
{
printf(“d_name: %s\n”,ptr->d_name);
}
closedir(dir);
}
Ö´ÐÐ
d_name:.
d_name:..
d_name:init.d
d_name:rc0.d
d_name:rc1.d
d_name:rc2.d
d_name:rc3.d
d_name:rc4.d
d_name:rc5.d
d_name:rc6.d
d_name:rc
d_name:rc.local
d_name:rc.sysinit
access£¨ÅжÏÊÇ·ñ¾ßÓдæÈ¡ÎļþµÄȨÏÞ£©
Ïà¹Øº¯Êý
stat£¬open£¬chmod£¬chown£¬setuid£¬setgid
±íÍ·Îļþ
#include<unistd.h>
¶¨Ò庯Êý
int access(const char * pathname,int mode);
º¯Êý˵Ã÷
access()»á¼ì²éÊÇ·ñ¿É


Ïà¹ØÎĵµ£º

linuxÏÂsvn¿Í»§¶Ë°²×°¼°»·¾³ÅäÖÃ

Ò»¡¢svn¿Í»§¶Ë°²×°¼°»·¾³ÅäÖÃ.
¹ûËùÔÚµÄlinux»úÆ÷ÉÏûÓа²×°svn¿Í»§¶Ë£¬ÔòÊ×ÏȰ²×°svn¿Í»§¶Ë£º
1.       subversion-1.4.3.tar.bz2  subversion-deps-1.4.3.tar.bz2
 
2.       ʹÓÃ
   tar xvfj subversion-1.4.3.tar.bz2
t ......

linuxÄÚºËÒÆÖ²s3c2410£¬×¼±¸¹¤×÷

1.Ê×ÏÈÊÇ»ñµÃlinuxÄÚºËÔ´Â룬ºÃÏñÊÇ·Ï»°£¬ÏÂÔØµØÖ·ÈçÏ£ºftp://ftp.kernel.org/pub/linux/kernel/v2.6/ÏÂÔØ£º
linux-2.6.16.22.tar.bz2  patch-2.6.22.6.bz2
ÉÏÃæÒ»²½ÐèҪ˵Ã÷µÄÊÇÒ»°ã¶øÑÔ£¬linuxÄں˵ĸ÷¸ö²¹¶¡ÎļþÊǸù¾Ýij¸ölinuxÄں˵İ汾ºÅÀ´×÷µÄpatch¡£
½«ÉÏÃæµÄÁ½¸öѹËõÎļþ½âѹ:
tar jxvf linux-2.6.22.ta ......

linuxÏÂÅäÖÃsubversion

Èí¼þ°ü:
httpd-2.23
ÏÂÔØµØÖ·
http://apache.justdn.org/httpd/httpd-2.2.3.tar.gz
apr-1.27
apr-util-1.27
http://apache.justdn.org/apr/,°æºÅ×ÔÒÑÕÒ£¬×îºÃºÍÎÒµÄËùÌṩµÄ°æ±¾ºÅÒ»Ñù
Oracle Berkeley DB 4.0.14
ÏÂÔØµØÖ·
http://download.oracle.com/berkeley-db/db-4.0.14.tar.gz
subversion-1.4.0
ÏÂÔØµØÖ· ......

֨װwindowsϵͳºó£¬ÈçºÎÕÒ»Ølinux Æô¶¯Ïî

    ֮ǰװÍêwindowsºó¾Í·¢ÏÖlinuxµÄÆô¶¯ÏîÕÒ²»µ½ÁË£¬¿ªÊ¼Ê±£¬ÊµÔÚÊÇÎÞÄΰ¡£¡½á¹ûÖ»ºÃ֨װlinux£¡£¡ºÜ²Ë°É£¡£¡
    ÏÖÔÚÖÕÓÚÖªµÀÁË£¬ÆäʵÊÇ¿ÉÒԺܼòµ¥µØ¾Í°ÑlinuxÕÒ»ØÀ´µÄ£¡
    Õâ¸ö·½·¨Ö»ÏÞÓÚÓð²×°Å̵ÄÓû§£¡£¡£¡£¡
    ×°Èëlinux°²×°ÅÌ£¬ÒÔ¹âÇýÆô¶¯£¬½ ......

Python ʹÓÃC´úÂë——swig

Ref : http://www.swig.org/translations/chinese/tutorial.html
¼ÙÉèÄãÓÐһЩcÄãÏëÔÙ¼ÓPython.¡£¾ÙÀýÀ´ËµÓÐÕâôһ¸öÎļþexample.c
 /* File : example.c */
 #include <time.h>
 double My_variable = 3.0;
 int fact(int n) {
     if (n <= 1) return 1;
&nbs ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ