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

linux³£ÓÃcº¯Êý ÎļþȨÏÞ¿ØÖÆÆª

access£¨ÅжÏÊÇ·ñ¾ßÓдæÈ¡ÎļþµÄȨÏÞ£©
¡¡¡¡Ïà¹Øº¯Êý  stat£¬open£¬chmod£¬chown£¬setuid£¬setgid
¡¡¡¡±íÍ·Îļþ  #include<unistd.h>
¡¡¡¡¶¨Ò庯Êý  int access(const char * pathname,int mode);
¡¡¡¡º¯Êý˵Ã÷  access()»á¼ì²éÊÇ·ñ¿ÉÒÔ¶Á/дijһÒÑ´æÔÚµÄÎļþ¡£²ÎÊýmodeÓм¸ÖÖÇé¿ö×éºÏ£¬R_OK£¬W_OK£¬X_OK
ºÍF_OK¡£R_OK£¬W_OKÓëX_OKÓÃÀ´¼ì²éÎļþÊÇ·ñ¾ßÓжÁÈ¡¡¢Ð´ÈëºÍÖ´ÐеÄȨÏÞ¡£F_OKÔòÊÇÓÃÀ´ÅжϸÃÎļþÊÇ·ñ´æÔÚ¡£ÓÉÓÚaccess()Ö»×÷
ȨÏ޵ĺ˲飬²¢²»Àí»áÎļþÐÎ̬»òÎļþÄÚÈÝ£¬Òò´Ë£¬Èç¹ûһĿ¼±íʾΪ“¿ÉдÈ딣¬±íʾ¿ÉÒÔÔÚ¸ÃĿ¼Öн¨Á¢ÐÂÎļþµÈ²Ù×÷£¬¶ø·ÇÒâζ´ËĿ¼¿ÉÒÔ±»µ±×öÎļþ´¦Àí¡£
ÀýÈ磬Äã»á·¢ÏÖDOSµÄÎļþ¶¼¾ßÓГ¿ÉÖ´ÐДȨÏÞ£¬µ«ÓÃexecve()Ö´ÐÐʱÔò»áʧ°Ü¡£
¡¡¡¡·µ»ØÖµ  ÈôËùÓÐÓû²éºËµÄȨÏÞ¶¼Í¨¹ýÁ˼ì²éÔò·µ»Ø0Öµ£¬±íʾ³É¹¦£¬Ö»ÒªÓÐһȨÏÞ±»½ûÖ¹Ôò·µ»Ø-1¡£
¡¡¡¡´íÎó´úÂë  EACCESS ²ÎÊýpathname ËùÖ¸¶¨µÄÎļþ²»·ûºÏËùÒªÇó²âÊÔµÄȨÏÞ¡£
¡¡¡¡EROFS Óû²âÊÔдÈëȨÏÞµÄÎļþ´æÔÚÓÚÖ»¶ÁÎļþϵͳÄÚ¡£
¡¡¡¡EFAULT ²ÎÊýpathnameÖ¸Õ볬³ö¿É´æÈ¡ÄÚ´æ¿Õ¼ä¡£
¡¡¡¡EINVAL ²ÎÊýmode ²»ÕýÈ·¡£
¡¡¡¡ENAMETOOLONG ²ÎÊýpathnameÌ«³¤¡£
¡¡¡¡ENOTDIR ²ÎÊýpathnameΪһĿ¼¡£
¡¡¡¡ENOMEM ºËÐÄÄÚ´æ²»×ã
¡¡¡¡ELOOP ²ÎÊýpathnameÓйý¶à·ûºÅÁ¬½ÓÎÊÌâ¡£
¡¡¡¡EIO I/O ´æÈ¡´íÎó¡£
¡¡¡¡¸½¼Ó˵Ã÷ 
ʹÓÃaccess()×÷Óû§ÈÏÖ¤·½ÃæµÄÅжÏÒªÌØ±ðСÐÄ£¬ÀýÈçÔÚaccess()ºóÔÙ×öopen()µÄ¿ÕÎļþ¿ÉÄÜ»áÔì³Éϵͳ°²È«ÉϵÄÎÊÌâ¡£
¡¡¡¡·¶Àý  /* ÅжÏÊÇ·ñÔÊÐí¶ÁÈ¡/etc/passwd */
¡¡¡¡#include<unistd.h>
¡¡¡¡int main()
¡¡¡¡{
¡¡¡¡if (access(“/etc/passwd”,R_OK) = =0)
¡¡¡¡printf(“/etc/passwd can be read\n”);
¡¡¡¡}
¡¡¡¡Ö´ÐР /etc/passwd can be read
¡¡¡¡alphasort£¨ÒÀ×Öĸ˳ÐòÅÅÐòĿ¼½á¹¹£©
¡¡¡¡Ïà¹Øº¯Êý  scandir£¬qsort
¡¡¡¡±íÍ·Îļþ  #include<dirent.h>
¡¡¡¡¶¨Ò庯Êý  int alphasort(const struct dirent **a,const struct dirent
**b);
¡¡¡¡º¯Êý˵Ã÷ 
alphasort()Ϊscandir()×îºóµ÷ÓÃqsort()º¯Êýʱ´«¸øqsort()×÷ΪÅжϵĺ¯Êý£¬Ïêϸ˵Ã÷Çë²Î¿¼scandir()¼°
qsort()¡£
¡¡¡¡·µ»ØÖµ  ²Î¿¼qsort()¡£
¡¡¡¡·¶Àý  /* ¶ÁÈ¡/Ŀ¼ÏÂËùÓеÄĿ¼½á¹¹£¬²¢ÒÀ×Öĸ˳ÐòÅÅÁÐ*/
¡¡¡¡main()
¡¡¡¡{
¡¡¡¡struct d


Ïà¹ØÎĵµ£º

ÈçºÎʹÓ÷ºÐÍÄ£擬virtual? (C/C++) (template)

ÍøÉÏÒ»µÀ½ðɽµÄÃæÊÔÌ⣺
http://topic.csdn.net/u/20100524/14/0eff992a-2849-4db6-bdaa-d4a200e79b7c.html
Çë·Ö±ðÓÃC++µÄÃæÏò¶ÔÏóºÍ·ºÐÍ»úÖÆ£¬±àдʵÏÖTemplate MethodģʽµÄʾÀý´úÂ룬²¢±È½ÏÁ½ÖÖ·½Ê½¸÷×ÔµÄÓÅȱµã¡£
ÓÃÐ麯ÊýʵÏÖTemplate MethodµÄ·½Ê½¾Í²»¶à˵ÁË¡£Ó÷ºÐ͵ķ½Ê½ÊµÏÖ¶à̬ÔÚATLÀïÃæÓдóÁ¿µÄÓõ½£¡
·ºÐ͵ ......

DIY£º×Ô¼º¶¯ÊÖ×öÒ»¸öÃÔÄã Linux ϵͳ

http://www.ibm.com/developerworks/cn/linux/embed/diy/
DIY£º×Ô¼º¶¯ÊÖ×öÒ»¸öÃÔÄã Linux ϵͳ
ÎĵµÑ¡Ïî
<tr valign="top"><td width="8"><img alt="" height="1" width="8" src="//www.ibm.com/i/c.gif"/></td><td width=&quo ......

ÀûÓà linux µÄ 7za ±¸·ÝÎļþ£¬ÈçºÎÅųýÒ»¸öÎļþ¼Ð

ÓÉÓÚ£¬ÐèÒª¶¨Ê±±¸·ÝÊý¾Ý£¬ËùÒÔʹÓà 7zaÀ´´ò°ü¡£¡£¡£ Ä¿±êÎļþ¼Ð¾­³£º¬ÓдóÁ¿µÄÓû§ÉÏ´«Í¼Æ¬£¬ÕâЩͼƬÎÞÐè¸ßÃܶȶ¨ÆÚ±¸·Ý£¬ËùÒÔ£¬Ï£ÍûÔÚ´ò°üµÄʱºòÅųýËüÃÇ¡£¡£
   Ñо¿ÁËÒ»ÏÂ7zaµÄÃüÁîÐУ¬´óÖ¿ÉÒÔÕâÑùÍê³É£º
       7za a '-x!backup/fold/' test.zip backup
 &nb ......

linux menuconfig

Linux 2.6.19.x Äں˱àÒëÅäÖÃÑ¡Ïî¼ò½é
×÷Õߣº½ð²½¹ú
°æÈ¨ÉùÃ÷
±¾ÎÄ×÷ÕßÊÇһλ×ÔÓÉÈí¼þ°®ºÃÕߣ¬ËùÒÔ±¾ÎÄËäÈ»²»ÊÇÈí¼þ£¬µ«ÊDZ¾×Å GPL µÄ¾«Éñ·¢²¼¡£ÈκÎÈ˶¼¿ÉÒÔ×ÔÓÉʹÓá¢×ªÔØ¡¢¸´ÖƺÍÔÙ·Ö·¢£¬µ«±ØÐë±£Áô×÷ÕßÊðÃû£¬Ò಻µÃ¶ÔÉùÃ÷ÖеÄÈκÎÌõ¿î×÷ÈκÎÐÎʽµÄÐ޸ģ¬Ò²²»µÃ¸½¼ÓÈÎºÎÆäËüÌõ¼þ¡£Äú¿ÉÒÔ×ÔÓÉÁ´½Ó¡¢ÏÂÔØ¡¢´«²¥´ËÎĵµ£¬ ......

LinuxϱàÒ붯̬¿â£¬¾²Ì¬¿â£¬ÒÔ¼°µ÷ÓÃ

so_test.h£º
#include
#include
void test_a();
void test_b();
void test_c();
test_a.c£º
#include "so_test.h"
void test_a()
{
printf("this is in test_a...\n");
}
test_b.c£º
#include "so_test.h"
void test_b()
{
printf("this is in test_b...\n");
......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ