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
Ïà¹ØÎĵµ£º
£¨L2CAPÐÒé¼ò½é£¬L2CAPÔÚBlueZÖеÄʵÏÖÒÔ¼°L2CAP±à³Ì½Ó¿Ú£©
Ò»£ºL2CAPÐÒé¼ò½é£º
Logical Link Control and Adaptation Protocol(L2CAP)
Âß¼Á¬½Ó¿ØÖƺÍÊÊÅäÐÒé (L2CAP) ΪÉϲãÐÒéÌá¹©ÃæÏòÁ¬½ÓºÍÎÞÁ¬½ÓµÄÊý¾Ý·þÎñ£¬²¢Ìṩ¶àÐÒ鹦ÄܺͷָîÖØ×é²Ù×÷¡£L2CAP ³äÐíÉϲãÐÒéºÍÓ¦ÓÃÈí¼þ´«ÊäºÍ½ÓÊÕ×î´ó³¤¶ÈΪ 64K µÄ L2CAP Ê ......
man -k [keyword ] ÔÚwhatis Êý¾Ý¿âÖвéÕҹؼü×Ö£»
•man -f [keyword ] ͬÉÏ£¬µ«keyword Ϊһ¸öÕû×Ö(whole word)
•man -a [keyword ] ͨ³£man »áÏÔʾµÚÒ»¸öÕÒµ½µÄkeywordµÄman page£¬µ« ......
gccµÄ±àÒë¹ý³Ì·ÖΪËIJ½£¬·Ö±ðΪ£º
(1)Ô¤±àÒë (Pre-Processing)
(2)±àÒë (Compiling)
(3)»ã±à (Assembling)
(4)Á´½Ó (Linking)
ÒÔhello.cΪÀý˵Ã÷£º
#include<stdio.h>
int main(void)
{
printf("Hello World!");
return 0;
}
(1)Ô¤±àÒë½×¶Î (Pre-Processing)
&nbs ......
×î½ü£¬¿ªÊ¼ÑжÁÒ»ÏÂLinuxµÄÄں˴úÂ룬¸ÕÒ»¿ªÊ¼£¬¾ÍÓÐÁîÈ˾ªÌ¾µÄ·¢ÏÖ£¬²»µÃ²»¸Ð̾Äں˴úÂëÉè¼ÆµÃÖ®ÃÀ£¡µ¥ÊÇ×î³£ÓõÄÁ´±íÒ²Éè¼ÆµÃ²»µÃ²»ÁîÈËÅå·þ£¡
1.1.Á´±ílist_head
include/linux/list.h
ºÜ¾µä£¬Á´±íÔÚÄÚºËÖкܳ£Óã¬ÀýÈç¹ÜÀí½ø³Ì£¬½ø³ÌµÄ¸÷¸ö״̬¶ÓÁж¼ÊÇʹÓÃÕâ¸öË«ÏòÁ ......
BOOL GetAllFields(_RecordsetPtr m_pRecordset,CStringArray & fieldsarray)
{
if (m_pRecordset)
{
if (m_pRecordset->State)
&nbs ......