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

Linuxϵͳµ÷Óà accessº¯ÊýÏê½â

Linuxϵͳµ÷ÓÃ--accessº¯ÊýÏê½â
2007-07-30 23:10
 ¡¾accessϵͳµ÷Óá¿
 
¹¦ÄÜÃèÊö£º
¼ì²éµ÷Óýø³ÌÊÇ·ñ¿ÉÒÔ¶ÔÖ¸¶¨µÄÎļþÖ´ÐÐijÖÖ²Ù×÷¡£
 
Ó÷¨£º
#include <unistd.h>
#include <fcntl.h>
int access(const char *pathname, int mode);  
 
²ÎÊý£º
pathname: ÐèÒª²âÊÔµÄÎļþ·¾¶Ãû¡£  
mode: ÐèÒª²âÊԵIJÙ×÷ģʽ£¬¿ÉÄÜÖµÊÇÒ»¸ö»ò¶à¸öR_OK(¿É¶Á?), W_OK(¿Éд?), X_OK(¿ÉÖ´ÐÐ?) »ò F_OK(Îļþ´æÔÚ?)×éºÏÌå¡£
 
·µ»ØËµÃ÷£º
³É¹¦Ö´ÐÐʱ£¬·µ»Ø0¡£Ê§°Ü·µ»Ø-1£¬errno±»ÉèΪÒÔϵÄij¸öÖµ
EINVAL£º ģʽֵÎÞЧ  
EACCES£º Îļþ»ò·¾¶ÃûÖаüº¬µÄĿ¼²»¿É·ÃÎÊ
ELOOP £º ½âÊÍ·¾¶Ãû¹ý³ÌÖдæÔÚÌ«¶àµÄ·ûºÅÁ¬½Ó
ENAMETOOLONG£ºÂ·¾¶ÃûÌ«³¤
ENOENT£º  ·¾¶ÃûÖеÄĿ¼²»´æÔÚ»òÊÇÎÞЧµÄ·ûºÅÁ¬½Ó
ENOTDIR£º ·¾¶ÃûÖе±×÷Ŀ¼µÄ×é¼þ²¢·ÇĿ¼
EROFS£º Îļþϵͳֻ¶Á
EFAULT£º ·¾¶ÃûÖ¸Ïò¿É·ÃÎʵĿռäÍâ
EIO£º  ÊäÈëÊä³ö´íÎó
ENOMEM£º ²»ÄÜ»ñÈ¡×ã¹»µÄÄÚºËÄÚ´æ
ETXTBSY£º¶Ô³ÌÐòдÈë³ö´í
Àý×Ó£º
 
/* test.c */
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <fcntl.h>
 
int main(int argc, char *argv[])
{
    if (argc < 2) {
        printf("Usage: ./test filename\n");
        exit(1);
    }
 
    if (access(argv[1], F_OK) == -1) {
        puts("File not exists!");
        exit(2);
    }
 
    if (access(argv[1], R_OK) == -1)  
        puts("You can't read the file!");
    else
        if (access(argv[1], R_OK | W_OK) != -1)
            puts("You can read and write the file");
        else
       &n


Ïà¹ØÎĵµ£º

ʵսLinux Bluetooth±à³Ì (Æß) SDPЭÒé

Service Discovery Protocol(SDP)ÌṩһÖÖÄÜÁ¦£¬ÈÃÓ¦ÓóÌÐòÓз½·¨·¢ÏÖÄÄÖÖ·þÎñ¿ÉÓÃÒÔ¼°ÕâÖÖ·þÎñµÄÌØÐÔ¡£
·þÎñ·¢ÏÖЭÒé(SDP»òBluetooth SDP)ÔÚÀ¶ÑÀЭÒéÕ»ÖжÔÀ¶ÑÀ»·¾³ÖеÄÓ¦ÓóÌÐòÓÐÌØÊâµÄº¬Ò⣬·¢ÏÖÄĸö·þÎñÊÇ¿ÉÓõĺÍÈ·¶¨ÕâЩ¿ÉÓ÷þÎñµÄÌØÕ÷¡£SDP¶¨ÒåÁËbluetooth client·¢ÏÖ¿ÉÓÃbluetooth server·þÎñºÍËüÃǵÄÌØÕ÷µÄ·½·¨¡£ ......

LinuxÄں˳£ÓÃÊý¾Ý½á¹¹ºÍ²Ù×÷

1. ǰÑÔ
 
±¾ÎĽéÉÜlinuxÄÚºËÖÐһЩ³£ÓõÄÊý¾Ý½á¹¹ºÍ²Ù×÷¡£
 
2. Ë«ÏòÁ´±í(list)
 
linuxÄÚºËÖеÄË«ÏòÁ´±íͨ¹ý½á¹¹ struct list_headÀ´½«¸÷¸ö½ÚµãÁ¬½ÓÆðÀ´£¬´Ë½á¹¹»á×÷ΪÁ´±íÔªËØ½á¹¹ÖеÄÒ»¸ö²ÎÊý£º
struct list_head {
 struct list_head *next, *prev;
};
 
Á´±íÍ·µÄ³õʼ»¯£¬×¢Ò⣬ ......

²»¿É²»ÖªµÄ Linux Ê®ÏîÖØ´ó·¢Õ¹

Linux®¼¼Êõ¡¢¿ª·¢Ä£ÐͺÍÉçÇø¶¼¶Ô IT Òµ²úÉúÁËÖØÒªµÄÓ°Ï죬ÎÒÃÇÄÜ×öµÄ¾ÍÊÇÕ¾µ½Ò»±ß¿´¿´ÕâЩ£¬ºÜ¸ßÐËÓë developerWorks Ò»Æð¶È¹ýÁ˵ÚÒ»¸ö 10 Äê¡£Linux ÍŶÓÒѾ­½«ÕâЩ¶Ô Linux ²úÉúÖØ´óÓ°ÏìµÄÄÚÈÝÕûÀíµ½Ò»Æð¡£
¹ýÈ¥ 10 ÄêÀLinux ·¢ÉúÁËÌ«¶àµÄÊÂÇ飬ºÜÄÑÍêÕûµØÁгö¸Ã²Ù×÷ϵͳµÄÖØÒªÊ¼þºÍ¼¼Êõ¸Ä½ø¡£¾¡¹ÜÈç´Ë£¬ÎªÁËÇì× ......

LinuxÄÚºËÊý¾Ý½á¹¹

1.1.Á´±ílist_head
    include/linux/list.h
    ºÜ¾­µä£¬Á´±íÔÚÄÚºËÖкܳ£Óã¬ÀýÈç¹ÜÀí½ø³Ì£¬½ø³ÌµÄ¸÷¸ö״̬¶ÓÁж¼ÊÇʹÓÃÕâ¸öË«ÏòÁ´±íʵÏֵġ£ÄÚºËÖеÄÁ´±í¶¨Òå³ÉºÍÊý¾ÝÎ޹صÄÐÎʽ£¬¶ø²»ÊÇͨ³£ÎÒÃÇʹÓõÄÁ´±í¸ñʽ£¬ÀýÈç
typedef struct _list{
    Elemtype elem;
&nb ......

linux systemº¯ÊýʹÓÃÏê½â


Ïà¹Øº¯Êý
fork£¬execve£¬waitpid£¬popen
±íÍ·Îļþ
££i nclude<stdlib.h>
¶¨Ò庯Êý
int system(const char * string);
º¯Êý˵Ã÷
system()»áµ÷ÓÃfork()²úÉú×Ó½ø³Ì£¬ÓÉ×Ó½ø³ÌÀ´µ÷ÓÃ/bin/sh-c stringÀ´Ö´ÐвÎÊýstring×Ö·û´®Ëù´ú±íµÄÃüÁ´ËÃü>ÁîÖ´ÐÐÍêºóËæ¼´·µ»ØÔ­µ÷ÓõĽø³Ì¡£ÔÚµ÷ÓÃsystem()ÆÚ¼äSIGCHLD ÐÅ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ