linux cÓïÑÔÖеÄchmodº¯Êý
chmodÖеÄmode_t²ÎÊý£¬ÈçºÎ¶¯Ì¬µÄ´«ÈëÖµ£¬ÀýÈç ÎÒÒª´«Èë0777»ò0444£¬µ«ÎÒÊäÈëµÄÊÇ×Ö·û´® Ôõôת»¯Îª8½øÖÆ
ÿ¸öģʽ¾ùÔ¤¶¨ÒåÓк꣬ÓÖÒòΪÆäʵ¿ÉÑ¡·ÖÖ§ÓÐÏÞ£¬Äã¿ÉÒÔÅжÏÊäÈëµÃ×Ö·û´®£¬Ê¹ÓÃswicthÖ®ÀàµÃ°ì·¨£¬¸øÒ»ÁÙʱ±äÁ¿¸³Ó費ͬµÃÖµµ÷ÓÃchmod¡£
ʹÓÃatoiº¯Êý½«×Ö·û´®×ª»»ÎªÕûÊý£¬ÔÙ½«Õâ¸öÕûÊýת»»Îª°Ë½øÖÆÊý¼´¿É£¬È»ºóµ±Êµ²Î´«Èë
ѧϰ
C/C++ code:
/* ¹¦ ÄÜ£º¸Ä±äÎļþ·ÃÎÊȨÏÞ */
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
int main(int argc, char ** argv)
{
int mode; // ȨÏÞ
int mode_u; // ËùÓÐÕßµÄȨÏÞ
int mode_g; // ËùÊô×éµÄȨÏÞ
int mode_o; // ÆäËûÓû§µÄȨÏÞ
char *path;
/*¼ì²é²ÎÊý¸öÊýµÄºÏ·¨ÐÔ*/
if(argc < 3) {
printf("%s <mode num> <target file>\n",argv[0]);
exit(0);
}
/*»ñÈ¡ÃüÁîÐвÎÊý*/
mode = atoi(argv[1]);
if (mode > 777 || mode < 0) {
printf("mode num error!\n");
exit(0);
}
mode_u = mode / 100;
mode_g = (mode - (mode_u*100)) / 10;
mode_o = mode - (mode_u*100) - (mode_g*10);
mode = (mode_u * 8 * 8) + (mode_g * 8) + mode_o; // °Ë½øÖÆ×ª»»
path = argv[2];
if ( chmod(path, mode) == -1) {
perror("chmod error");
exit(1);
}
return 0;
}
/
Ïà¹ØÎÊ´ð£º
ΪʲôCдµÄDLLÎļþC¡¢PBÄܵ÷ÓÃVB²»Äܵ÷Óã¿
VBÀïΪʲôÓеÄDLLÖ±½Óͨ¹ýÒýÓÿÉÒÔʹÓã¿ÓеÄÐèҪͨ¹ýdeclareÉêÃ÷Íⲿº¯Êý£¿ÕâЩDLLÓÐʲô²î±ð£¿
1¡¢ÎªÊ²Ã´PBÄÜͨ¹ýDECLAREÉùÃ÷¶øVB²»ÐУ¿
2¡¢Èç¹ûÕâ¸ödllÖÐµÄ ......
ÎÒÓÃPHPÀ©Õ¹Cʱ£¬ÓõÄÊÇÔ´ÂëextĿ¼ÏµÄ./ext_skel
×îºó±àÒë×ÜÊDz»ÄÜÉú³ÉÀ©Õ¹Ä£¿éµÄ.so¶¯Ì¬¿â£¬ÎÒÓõİ汾ÊÇ5.3.0£¬
ÕâÊÇÔõô»ØÊ£¬¸ßÊÖ½â´ðÏÂ
²»ÄÜÉú³ÉʱÓÐɶÌáʾÐÅÏ¢£¿
ÔËÐÐÁË/ext_skel --extname=Ä ......
'\108'×÷Ϊ×Ö·û³£Á¿¶Ô²»¶Ô£¿
תÒå×Ö·û'\ddd'±íʾ3λ8½øÖÆËù´ú±íµÄ×Ö·û¡£ µ«ÊÇ108²»ÊÇÕýÈ·µÄ8½øÖƱíʾ·½·¨£¬Òò´ËÓ¦¸ÃÊÇ´íÎóµÄ¡£
µ«ÊÇchar a='\108'; Ϊʲô±àÒë²»³ö´íÄØ£¿
\108 û³¬¹ý ......
ANSI/ISO C ±ê×¼ÕâÑùÃèÊö:
ÔÚÉÏÒ»¸öºÍÏÂÒ»¸öÐòÁеãÖ®¼ä, Ò»¸ö¶ÔÏóËù±£´æµÄÖµÖÁ¶àÖ»Äܱ»±í
´ïʽµÄ¼ÆËãÐÞ¸ÄÒ»´Î¡£¶øÇÒǰһ¸öÖµÖ»ÄÜÓÃÓÚ¾ö¶¨½«Òª±£´æµÄÖµ¡£
ʵÔÚ²»Àí½âÕâ¾ä»°£¬Çë´ó¼ÒÒ»Æð˵˵£¿£¿ ......
ĿǰÓöµ½µÄÎÊÌâÊÇ£º
´æ·ÅÔÚÔ¶³Ì·þÎñÆ÷¶Ëc/s³ÌÐòÒ»ÓиüУ¬ÈçºÎ×öµ½¿Í»§¶ËÁ¢¼´ÏìÓ¦µ¯³öÓÐ×îÐÂÉý¼¶µÄÌáʾ´°¿Ú¡£
±¾À´Óеã˼·£º²ÉÓÃWCF+windowns·þÎñ+¶¨Ê±Æ÷µÄ·½Ê½Ò²ÄÜʵÏÖ£¬µ«ÊÇÿ̨¿Í»§¶Ë»ú×Óÿ¸ô¶¼È¥·ÃÎÊÒ»ÏÂÔ¶³Ì ......