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 ³É¹¦ 10 Äê
Linux®¼¼Êõ¡¢¿ª·¢Ä£ÐͺÍÉçÇø¶¼¶Ô IT Òµ²úÉúÁËÖØÒªµÄÓ°Ï죬ÎÒÃÇÄÜ×öµÄ¾ÍÊÇÕ¾µ½Ò»±ß¿´¿´ÕâЩ£¬ºÜ¸ßÐËÓë
developerWorks Ò»Æð¶È¹ýÁ˵ÚÒ»¸ö 10 Äê¡£Linux ÍŶÓÒѾ½«ÕâЩ¶Ô Linux ²úÉúÖØ´óÓ°ÏìµÄÄÚÈÝÕûÀíµ½Ò»Æð¡£
¹ýÈ¥ 10 ÄêÀLinux ·¢ÉúÁËÌ«¶àµÄÊÂÇ飬ºÜÄÑÍêÕûµØÁгö¸Ã²Ù×÷ϵͳµ ......
selectϵͳµ÷ÓÃʱÓÃÀ´ÈÃÎÒÃǵijÌÐò¼àÊÓ¶à¸öÎļþ¾ä±úµÄ״̬±ä»¯µÄ¡£³ÌÐò»áÍ£ÔÚselectÕâÀïµÈ´ý£¬Ö±µ½±»¼àÊÓµÄÎļþ¾ä±úÓÐÒ»¸ö»ò¶à¸ö·¢ÉúÁË״̬¸Ä±ä¡£
¹ØÓÚÎļþ¾ä±ú£¬Æäʵ¾ÍÊÇÒ»¸öÕûÊý£¬Í¨¹ýsocketº¯ÊýµÄÉùÃ÷¾ÍÃ÷°×ÁË£º
int socket(int domain, int type, int protocol);
ÎÒÃÇ×îÊìϤµÄ¾ä±úÊÇ0¡¢1¡¢2Èý¸ö£¬0ÊDZê×¼ÊäÈ룬1ÊDZê ......
1.1.Á´±ílist_head
include/linux/list.h
ºÜ¾µä£¬Á´±íÔÚÄÚºËÖкܳ£Óã¬ÀýÈç¹ÜÀí½ø³Ì£¬½ø³ÌµÄ¸÷¸ö״̬¶ÓÁж¼ÊÇʹÓÃÕâ¸öË«ÏòÁ´±íʵÏֵġ£ÄÚºËÖеÄÁ´±í¶¨Òå³ÉºÍÊý¾ÝÎ޹صÄÐÎʽ£¬¶ø²»ÊÇͨ³£ÎÒÃÇʹÓõÄÁ´±í¸ñʽ£¬ÀýÈç
typedef struct _list{
Elemtype elem;
&nb ......
BOOL GetAllTables(LPCTSTR databasefile,CStringArray & dbtables)
{
//#import "msado15.dll" no_namespace rename("EOF", "adoEOF") //¿½±´ msado15.dll µ½¹¤³ÌĿ¼
_Conn ......
×÷ÕߣºÁõºéÌÎ,»ªÇåÔ¶¼ûǶÈëʽѧԺ½²Ê¦¡£
ËÄ¡¢ÔÚÄÚºËÀïдi2cÉ豸Çý¶¯µÄÁ½ÖÖ·½Ê½
ǰÎĽéÉÜÁËÀûÓÃ/dev/i2c-0ÔÚÓ¦ÓòãÍê³É¶Ôi2cÉ豸µÄ²Ù×÷£¬µ«ºÜ¶àʱºòÎÒÃÇ»¹ÊÇϰ¹ßΪi2cÉ豸ÔÚÄں˲ã±àдÇý¶¯³ÌÐò¡£Ä¿Ç°ÄÚºËÖ§³ÖÁ½ÖÖ±àдi2cÇý¶¯³ÌÐòµÄ·½Ê½¡£ÏÂÃæ·Ö±ð½éÉÜÕâÁ½ÖÖ·½Ê½µÄʵÏÖ¡£ÕâÀï·Ö±ð³ÆÕâÁ½ÖÖ·½Ê½Îª“Adapter·½Ê½£¨LEGAC ......