LinuxʵÑ鱨¸æ ÏÂÔØ±¾ÎÄ

¿Î³Ì±àºÅ£ºB080103040

Linux²Ù×÷ϵͳ ʵÑ鱨¸æ

ÐÕ Ãû °à ¼¶ ʵÑéÃû³Æ ÉÛ´ºÏþ Èí¹¤1201 ѧ ºÅ Ö¸ µ¼ ½Ì ʦ Linux²Ù×÷ϵͳʵÑé 20124670 ʯ ¿­ ¿ª Éè ѧ ÆÚ ʵ Ñé ʱ ¼ä 2014-2015µÚһѧÆÚ µÚ11ÖÜ¡ª¡ªµÚ18ÖÜ ÆÀ¶¨ÈËÇ©×Ö ÆÀ ¶¨ ÈÕ ÆÚ ʯ ¿­ ÆÀ ¶¨ ³É ¼¨ ¶«±±´óѧÈí¼þѧԺ

ʵÑéÒ» ÊìϤLinux»·¾³

¡¾ÊµÑéÄÚÈÝ¡¿

Ò»¡¢Á·Ï°³£ÓõÄShellÃüÁî¡£

µ±Óû§µÇ¼µ½×Ö·û½çÃæÏµÍ³»òʹÓÃÖÕ¶ËÄ£Äâ´°¿Úʱ£¬¾ÍÊÇÔںͳÆÎªshellµÄÃüÁî½âÊͳÌÐò½øÐÐͨÐÅ¡£µ±Óû§ÔÚ¼üÅÌÉÏÊäÈëÒ»ÌõÃüÁîʱ£¬shell³ÌÐò½«¶ÔÃüÁî½øÐнâÊͲ¢Íê³ÉÏàÓ¦µÄ¶¯×÷¡£ÕâÖÖ¶¯×÷¿ÉÄÜÊÇÖ´ÐÐÓû§µÄÓ¦ÓóÌÐò£¬»òÕßÊǵ÷ÓÃÒ»¸ö±à¼­Æ÷¡¢GNU/LinuxʵÓóÌÐò»òÆäËû±ê×¼³ÌÐò£¬»òÕßÊÇÒ»Ìõ´íÎóÐÅÏ¢£¬¸æËßÓû§ÊäÈëÁË´íÎóµÄÃüÁî¡£ ¶þ¡¢ÊìϤvim±à¼­Æ÷

ÔÚ±àдÎı¾»ò¼ÆËã»ú³ÌÐòʱ£¬ÐèÒª´´½¨Îļþ¡¢²åÈëÐÂÐС¢ÖØÐÂÅÅÁÐÐС¢ÐÞ¸ÄÄÚÈݵȣ¬¼ÆËã»úÎı¾±à¼­Æ÷¾ÍÊÇÓÃÀ´Íê³ÉÕâЩ¹¤×÷µÄ¡£

Vim±à¼­Æ÷µÄÁ½ÖÖ²Ù×÷ģʽÊÇÃüÁîģʽºÍÊäÈëģʽ£¨Èçͼ2Ëùʾ£©¡£µ±vim´¦ÓÚÃüÁîģʽʱ£¬¿ÉÒÔÊäÈëvimÃüÁî¡£ÀýÈ磬¿ÉÒÔɾ³ýÎı¾²¢´ÓvimÖÐÍ˳ö¡£ÔÚÊäÈëģʽÏ£¬vim½«°ÑÓû§ËùÊäÈëµÄÈκÎÄÚÈݶ¼µ±×÷Îı¾ÐÅÏ¢£¬²¢½«ËüÃÇÏÔʾÔÚÆÁÄ»ÉÏ¡£ Èý¡¢ÊìϤgcc±àÒëÆ÷

GNU/LinuxÖÐͨ³£Ê¹ÓõÄC±àÒëÆ÷ÊÇGNU gcc¡£±àÒëÆ÷°ÑÔ´³ÌÐò±àÒëÉú³ÉÄ¿±ê´úÂëµÄÈÎÎñ·ÖΪÒÔÏÂ4²½£º

a. Ô¤´¦Àí£¬°ÑÔ¤´¦ÀíÃüÁîɨÃè´¦ÀíÍê±Ï £»

b. ±àÒ룬°ÑÔ¤´¦ÀíºóµÄ½á¹û±àÒë³É»ã±à»òÕßÄ¿±êÄ£¿é£»

c. »ã±à£¬°Ñ±àÒë³öÀ´µÄ½á¹û»ã±à³É¾ßÌåCPUÉϵÄÄ¿±ê´úÂëÄ£¿é£» d. Á¬½Ó£¬°Ñ¶à¸öÄ¿±ê´úÂëÄ£¿éÁ¬½ÓÉú³ÉÒ»¸ö´óµÄÄ¿±êÄ£¿é£» ËÄ¡¢ÊìϤgdbµ÷ÊÔ¹¤¾ß

LINUX°üº¬ÁËÒ»¸ö½ÐgdbµÄGNUµ÷ÊÔ³ÌÐò¡£gdbÊÇÒ»¸öÓÃÀ´µ÷ÊÔCºÍC++³ÌÐòµÄÇ¿ÓÐÁ¦µ÷ÊÔÆ÷¡£ËüʹÄãÄÜÔÚ³ÌÐòÔËÐÐʱ¹Û²ì³ÌÐòµÄÄÚ²¿½á¹¹ºÍÄÚ´æµÄʹÓÃÇé¿ö¡£Ëü¾ßÓÐÒÔÏÂһЩ¹¦ÄÜ£º ¡¤¼àÊÓ³ÌÐòÖбäÁ¿µÄÖµ£»

¡¤ÉèÖöϵãÒÔʹ³ÌÐòÔÚÖ¸¶¨µÄ´úÂëÐÐÉÏÍ£Ö¹Ö´ÐУ» ¡¤Ò»ÐÐÐеÄÖ´ÐдúÂë¡£

Îå¡¢ÕÆÎÕLinuxÏÂC³ÌÐò±à¼­ÔËÐйý³Ì LinuxϱàдC³ÌÐòÒª¾­¹ýÒÔϼ¸¸ö²½Ö裺 ¢ÅÆô¶¯³£Óõı༭Æ÷£¬¼üÈëCÔ´³ÌÐò´úÂë¡£ ¢Æ±àÒëÔ´³ÌÐò ¢ÇÔËÐпÉÖ´ÐÐÎļþ

¡¾ÊµÑé×ܽ᡿

ÔÚѧϰlinuxµÄ¹ý³ÌÖм䣬×îÖ÷ÒªµÄ¾ÍÊÇÄÍÐĺÍϸÐÄ¡£linuxµÄÃüÁîºÜ¶à£¬Ö»ÓÐÒ»±éÒ»±éµÄ¿´Ò»´ÎÓÖÒ»´ÎµÄÓ㬲ÅÄܼÇסºÜ¶àµÄÃüÁ²ÅÄܺܺõÄʹÓÃlinux¡£Í¨¹ýÕâ´ÎʵÑ飬ÎÒ¶ÔlinuxµÄϵͳÒÔ¼°vim±à¼­Æ÷£¬gcc±àÒëÆ÷£¬gdbµ÷ÊÔ¹¤¾ß¸ü¼ÓÊìϤ£¬ÕâÒ²ÈÃÎÒÈÃÎÒÄܹ»¸ü¼ÓŬÁ¦Ñ§Ï°¡£

ʵÑé¶þ Îļþ²Ù×÷

¡¾ÊµÑéÄÚÈÝ¡¿

1£®ÎļþµÄ´´½¨£¨±Ø×öÌ⣩

±àд³ÌÐò£¬ÊµÏÖcpÃüÁîµÄ¹¦ÄÜ¡£±»¸´ÖƵÄÎļþÃûÓë¸´ÖÆ³öµÄÐÂÎļþÓÉÓû§Ö¸¶¨¡£µ÷Ó÷½·¨£º¡°Äã±àдµÄ³ÌÐòÃû ±»¸´ÖÆÎļþÃû ¸´ÖƳöµÄÎļþÃû¡±¡£ÒªÇó³ÌÐòÓÐÒ»¶¨µÄ½¡×³ÐÔ£¬¼´¶ÔÓû§´íÎóµ÷Óü°ÆäËû´íÎóÒªÓд¦ÀíºÍ·´À¡¡££¨Ìáʾ£º¿ÉÒÔʹÓÃmanÊÖ²á²é¿´¾ßÌåµÄϵͳµ÷Óã¬e.g., man 2 open£©¡£ #include #include #include #include #include

main(int ac, char *av[]){ int fd1, fd2; int n;

char buf[512];

if(ac!=3){

printf(\ exit(1); }

if((fd1=open(av[1], O_RDONLY))==-1){ perror(\ exit(1); }

if((fd2=creat(av[2], 0777))==-1){ perror(\ exit(1); }

while((n=read(fd1, buf, 512))>0){ write(fd2, buf, n); }

close(fd1); close(fd2); }

2£®²é¿´Ä¿Â¼ÄÚÈݼ°ÎļþÊôÐÔ £¨1£©±àд³ÌÐò£¬ÊµÏÖls -lµÄ¹¦ÄÜ¡£µ÷Ó÷½·¨£º¡°Äã±àдµÄ³ÌÐòÃû¡±¡ª¡ªÕâʱ´òÓ¡³öµ±Ç°Ä¿Â¼Îļþ¼°ÆäÊôÐÔ£»¡°Äã±àдµÄ³ÌÐòÃû Ŀ¼Ãû¡±¡ª¡ªÕâʱÔÚÖÕ¶ËÏÔʾ¸ø¶¨Ä¿Â¼ÏµÄÎļþ¼°ÆäÊôÐÔ¡££¨Ìáʾ£ºµ±Óû§¸ø¶¨Ä¿Â¼ºó£¬ÐèÒª¸Ä±ä½ø³ÌµÄµ±Ç°Ä¿Â¼£¬¿ÉʹÓÃchdir()¡££© #include #include #include #include #include #include #include #include #include #include

void mode_to_str(mode_t mode, char *str){ strcpy(str, \

if(S_ISDIR(mode)) str[0]='d';

if(mode & 0400) str[1]='r'; if(mode & 0200) str[2]='w'; if(mode & 0100) str[3]='x';

if(mode & 040) str[4]='r'; if(mode & 020) str[5]='w'; if(mode & 010) str[6]='x';

if(mode & 04) str[7]='r'; if(mode & 02) str[8]='w'; if(mode & 01) str[9]='x'; }

void show_file_info(char * filename){ struct stat buf; char modestr[10]; stat(filename, &buf);