linuxÏÂopen()Óëfopen()
fopen£¨´ò¿ªÎļþ£©
Ïà¹Øº¯Êý
open£¬fclose
±íÍ·Îļþ
#include<stdio.h>
¶¨Ò庯Êý
FILE * fopen(const char * path,const char * mode);
º¯Êý˵Ã÷
²ÎÊýpath×Ö·û´®°üº¬Óû´ò¿ªµÄÎļþ·¾¶¼°ÎļþÃû£¬²ÎÊýmode×Ö·û´®Ôò´ú±í×ÅÁ÷ÐÎ̬¡£
modeÓÐÏÂÁм¸ÖÖÐÎ̬×Ö·û´®:
r ´ò¿ªÖ»¶ÁÎļþ£¬¸ÃÎļþ±ØÐë´æÔÚ¡£
r+ ´ò¿ª¿É¶ÁдµÄÎļþ£¬¸ÃÎļþ±ØÐë´æÔÚ¡£
w ´ò¿ªÖ»Ð´Îļþ£¬ÈôÎļþ´æÔÚÔòÎļþ³¤¶ÈÇåΪ0£¬¼´¸ÃÎļþÄÚÈÝ»áÏûʧ¡£ÈôÎļþ²»´æÔÚÔò½¨Á¢¸ÃÎļþ¡£
w+ ´ò¿ª¿É¶ÁдÎļþ£¬ÈôÎļþ´æÔÚÔòÎļþ³¤¶ÈÇåΪÁ㣬¼´¸ÃÎļþÄÚÈÝ»áÏûʧ¡£ÈôÎļþ²»´æÔÚÔò½¨Á¢¸ÃÎļþ¡£
a ÒÔ¸½¼ÓµÄ·½Ê½´ò¿ªÖ»Ð´Îļþ¡£ÈôÎļþ²»´æÔÚ£¬Ôò»á½¨Á¢¸ÃÎļþ£¬Èç¹ûÎļþ´æÔÚ£¬Ð´ÈëµÄÊý¾Ý»á±»¼Óµ½Îļþ⣬¼´ÎļþÔÏȵÄÄÚÈݻᱻ±£Áô¡£
a+ ÒÔ¸½¼Ó·½Ê½´ò¿ª¿É¶ÁдµÄÎļþ¡£ÈôÎļþ²»´æÔÚ£¬Ôò»á½¨Á¢¸ÃÎļþ£¬Èç¹ûÎļþ´æÔÚ£¬Ð´ÈëµÄÊý¾Ý»á±»¼Óµ½Îļþβºó£¬¼´ÎļþÔÏȵÄÄÚÈݻᱻ±£Áô¡£
ÉÏ
ÊöµÄÐÎ̬×Ö·û´®¶¼¿ÉÒÔÔÙ¼ÓÒ»¸öb×Ö·û£¬Èçrb¡¢w+b»òab£«µÈ×éºÏ£¬¼ÓÈëb
×Ö·ûÓÃÀ´¸æËߺ¯Êý¿â´ò¿ªµÄÎļþΪ¶þ½øÖÆÎļþ£¬¶ø·Ç´¿ÎÄ×ÖÎļþ¡£²»¹ýÔÚPOSIXϵͳ£¬°üº¬Linux¶¼»áºöÂÔ¸Ã×Ö·û¡£ÓÉfopen()Ëù½¨Á¢µÄÐÂÎļþ»á¾ß
ÓÐS_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH(0666)ȨÏÞ£¬´ËÎļþȨÏÞÒ²»á²Î¿¼umask
Öµ¡£
·µ»ØÖµ
Îļþ˳Àû´ò¿ªºó£¬Ö¸Ïò¸ÃÁ÷µÄÎļþÖ¸Õë¾Í»á±»·µ»Ø¡£Èô¹ûÎļþ´ò¿ªÊ§°ÜÔò·µ»ØNULL£¬²¢°Ñ´íÎó´úÂë´æÔÚerrno ÖС£
¸½¼Ó˵Ã÷
Ò»°ã¶øÑÔ£¬¿ªÎļþºó»á×÷һЩÎļþ¶ÁÈ¡»òдÈëµÄ¶¯×÷£¬Èô¿ªÎļþʧ°Ü£¬½ÓÏÂÀ´µÄ¶Áд¶¯×÷Ò²ÎÞ·¨Ë³Àû½øÐУ¬ËùÒÔÔÚfopen()ºóÇë×÷´íÎóÅжϼ°´¦Àí¡£
·¶Àý
#include<stdio.h>
main()
{
FILE * fp;
fp=fopen(“noexist”,”a+”);
if(fp= =NULL) return;
fclose(fp);
}
open£¨´ò¿ªÎļþ£©
Ïà¹Øº¯Êý
read£¬write£¬fcntl£¬close£¬link£¬stat£¬umask£¬unlink£¬fopen
±íÍ·Îļþ
#include<sys/types.h>
#include<sys/stat.h>
#include<fcntl.h>
¶¨Ò庯Êý
int open( const char * pathname, int flags);
int open( const char * pathname,int flags, mode_t mode);
º¯Êý˵Ã÷
²ÎÊýpathname Ö¸ÏòÓû´ò¿ªµÄÎļþ·¾¶×Ö·û´®¡£ÏÂÁÐÊDzÎÊý
Ïà¹ØÎĵµ£º
RHEL5´î½¨DNS·þÎñÆ÷ʵÏÖÃû³Æ½âÎö ËÄ
(1)ÉèÖÃÕýÏò½âÎöÇøÓò
ÕýÏò½âÎöÇøÓòÓÃÓÚʵÏÖÓòÃûµ½IPµØÖ·Ö®¼äµÄת»»¡£ÏÂÃæÊÇÒ»¸öÕýÏò½âÎöÇøÓòµÄÅäÖÃÄÚÈݾÙÀý£º
zone “my.internal.com” {
type master;
&nbs ......
SBC2440Ñз¢°åϵÄLINUXµÄ°²×°
±¾ÎļþÊǶԓSBC2440ϵͳ°²×°ºÍ¸üÐÂÖ¸ÄÏ.pdf£¨ÔÚÑз¢°å¸½Ë͵ĹâÅÌϾÍÄÜÕÒµ½£©”µÄ²¹³ä˵Ã÷£¨ºìÉ«×ÖÌ岿·Ö£©¡£
Ê×ÏȽøÈëVIVIģʽ£º·½·¨ÊÇÏÈ´ò¿ªWINDOWSϵÄÖÕ¼«ÖÕ¶Ë£¬ÉèÖúø÷ÖÖ²ÎÊý£¨¾ßÌåÉèÖüû“SBC2440Ö®³õÌåÑé.pdf£¨ÔÚÑз¢°å¸½Ë͵ĹâÅÌϾÍÄÜÕÒµ½£©”£¬Ê¹COM1´¦ÔÚ× ......
˵Ã÷
±Ê¼ÇÊÊÓÃÓÚLinuxµÄ2.6.10ÒÔºóµÄÄںˡ£
±Ê¼ÇÒÔLinux
Device
Driver3ÌṩµÄscull³ÌÐò(scullĿ¼ÖеÄmain.cºÍscull.h)Ϊ¼Ç¼Ö÷Ïߣ¬²¢ÒÔ¸ÃÇý¶¯³ÌÐòÖеĸ÷ÖÖϵͳµ÷Óúͺ¯Êýµ÷ÓÃÁ÷³ÌΪ¼Ç
¼˳Ðò¡£±ÈÈ磬module_init( )ºÍmodule_exit(
)ΪÏà¶ÔÓ¦µÄÒ»¶Ôϵͳµ÷Óã¬Ò»°ãÊé¼®Öж¼»á·ÅÔÚÒ»ÆðÌÖÂÛ£¬µ«ÊDZ¾±Ê¼ÇÈ´²»»áÕâÑù£¬¶øÊ ......
1.ʱ¼ä±íʾ
ÔÚ³ÌÐòµ±ÖÐ,ÎÒÃǾ³£ÒªÊä³öϵͳµ±Ç°µÄʱ¼ä,±ÈÈçÎÒÃÇʹÓÃdateÃüÁîµÄÊä³ö½á¹û¡£Õâ¸öʱºòÎÒÃÇ¿ÉÒÔʹÓÃÏÂÃæÁ½¸öº¯Êý
time_t time(time_t *tloc); //ʱ¼ä¾«¶ÈΪÃë
char *ctime(const time_ ......
Èç¹ûÄãÊÇÒ»¸öÈí¼þ¿ª·¢ÈËÔ±£¬Èç¹ûÄãÊÇÒ»¸ö¾³£×ö²úÆ·ÉÏÏß²Ù×÷µÄ³ÌÐòÔ±£¬ÄãÒ»¶¨»á¶ÔtarÃüÁîºÜÊìϤ£¬ËüÊÇÒ»¸ö´ò°üÃüÁµ«¾ßÌåµÄ´ò°üÄÚÈÝ¿ÉÄÜÊÇÒ»¸öºÜ³¤µÄÎļþÁÐ±í£¬Èç¹û²¿·ÖÎļþÉÏÏߵϰÈ˹¤ÖÆ×÷Ò»¸öÎļþÁбíÊÇÒ»¼þºÜÀ˷Ѿ«Á¦µÄÊÂÇé¡£
ÓÚÊÇÎÒдÁËÒ»¸öshell½Å±¾,ÓÃÀ´²éÕÒ ......