1. Linux ½Å±¾±àд»ù´¡
1.1 Óï·¨»ù±¾½éÉÜ
1.1.1 ¿ªÍ·
³ÌÐò±ØÐëÒÔÏÂÃæµÄÐпªÊ¼£¨±ØÐë·½ÔÚÎļþµÄµÚÒ»ÐУ©£º
#!/bin/sh
¡¡¡¡·ûºÅ#!ÓÃÀ´¸æËßϵͳËüºóÃæµÄ²ÎÊýÊÇÓÃÀ´Ö´ÐиÃÎļþµÄ³ÌÐò¡£ÔÚÕâ ¸öÀý×ÓÖÐÎÒÃÇʹÓÃ/bin/shÀ´Ö´ÐгÌÐò¡£
¡¡¡¡µ±±à¼ºÃ½Å±¾Ê±£¬Èç¹ûÒªÖ´Ðиýű¾£¬»¹±ØÐëʹÆä¿ÉÖ´ÐС£
¡¡¡¡ÒªÊ¹½Å±¾¿ÉÖ´ÐУº
±àÒë chmod +x filename ÕâÑù²ÅÄÜÓÃ./filename À´ÔËÐÐ
1.1.2 ×¢ÊÍ
¡¡¡¡ÔÚ½øÐÐshell±à³Ìʱ£¬ÒÔ#¿ªÍ·µÄ¾ä×Ó±íʾעÊÍ£¬Ö±µ½ÕâÒ»ÐеĽáÊø¡£ÎÒÃÇÕæ³ÏµØ½¨ÒéÄúÔÚ³ÌÐòÖÐʹÓÃ×¢ÊÍ¡£
Èç¹ûÄúʹÓÃÁË×¢ÊÍ£¬ÄÇô¼´Ê¹Ï൱³¤µÄʱ¼äÄÚûÓÐʹÓøýű¾£¬ÄúÒ²ÄÜÔں̵ܶÄʱ¼äÄÚÃ÷°×¸Ã½Å±¾µÄ×÷ÓÃ
¼°¹¤×÷ÔÀí¡£
1.1.3 ±äÁ¿
¡¡¡¡ÔÚÆäËû±à³ÌÓïÑÔÖÐÄú±ØÐëʹÓñäÁ¿¡£ÔÚshell±à³ÌÖУ¬ËùÓеıäÁ¿¶¼ÓÉ×Ö·û´®×é³É£¬²¢ÇÒÄú²»ÐèÒª¶Ô±äÁ¿
½øÐÐÉùÃ÷¡£Òª¸³Öµ¸øÒ»¸ö±äÁ¿£¬Äú¿ÉÒÔÕâÑùд£º
#!/bin/sh
#¶Ô±äÁ¿¸³Öµ£º
a="hello world"
# ÏÖÔÚ´òÓ¡±äÁ¿aµÄÄÚÈÝ£º
echo "A is:"
echo $a
ÓÐʱºò±äÁ¿ÃûºÜÈÝÒ×ÓëÆäËûÎÄ×Ö»ìÏý£¬±ÈÈ磺
num=2
echo "this is the $numnd"
Õâ²¢²»»á´òÓ¡³ö"this is the 2nd"£¬¶ø½ö½ö´òÓ¡"this is the "£¬ÒòΪshell»áÈ¥ËÑË÷±äÁ¿numndµÄÖµ£¬
µ«ÊÇÕâ¸ö±äÁ¿Ê±Ã»ÓÐ ......
Ê×ÏÈ˵Ã÷£¬±¾È˵ÄlinuxÊÇrethat9£¬¶ÔÆäËûµÄ°æ±¾¿ÉÄܲ»ÊÊÓÃ
xpϵͳϵÄÐéÄâ»úÖа²×°ÁËlinuxºó£¬ÐéÄâ»úVMwareÖеÄlinux½çÃæÌ«Ð¡£¬ÊÇÓÉÓÚlinux·Ö±æÂÊÌ«µÍ(ͨ³£Îª800×600)Ôì³ÉµÄ£¬¿ÉÒÔͨ¹ý°²×°VMware ToolsÀ´¸ü¸Ä·Ö±æÂʵ½1024×768À´½â¾öÕâ¸öÎÊÌ⣬ÏÂÃæËµÃ÷°²×°VMware Tools²¢ÅäÖ÷ֱæÂʵIJ½Ö裺
1.Æô¶¯ÐéÄâ»úµÇ¼linuxϵͳºó£¬µã»÷VMware Workstation²Ëµ¥:VM - Install VMware Tools £¬ÕâÊÇÔÚ/mnt/cdromϳöÏÖÁËÁ½¸öÎļþ£¬Ò»¸öÊÇ¿ÉÖ´ÐÐÎļþ£¬Ò»¸öÊǹ鵵Îļþ
×¢Ò⣺ÔÀíÓ¦¸ÃÊÇÐéÄâ»úÐéÄâÁËÒ»¸öVMware Tools¹âÅ̹ÒÔØÔÚÁËϵͳÉÏ£¬²¢ÇÒÊǸöÖ»¶ÁÎļþϵͳ£¬ËùÒÔÒª°Ñ¹éµµÎļþ¸´ÖƳöÀ´½âѹ½â°ü
2.½â°üºóÔÚbinÏÂÓиövmware-config-tools.pl£¬ÔÚÖÕ¶ËÖÐÊäÈ룺VMware-config-tools.pl»Ø³µ½øÐÐÅäÖã¬
½ÓÏÂÀ´»á½øÐÐһЩѯÎÊ£¬°´ÕÕÖÐÀ¨ºÅÀïÃæµÄÌáʾÀ´»Ø´ð¼´¿É¡£ ......
×÷Õߣºdio
email: hao@peng.com.cn
ÈÕÆÚ£º8/21/2001 1:00:47 PM
ÄÚÈÝ£º
±àÒë
ÔËÐÐ gdb
µ÷ÊԻỰʾÀý
ʹÓöϵã
¸ü¶à¶ÏµãºÍ¹Û²ìµã
Core Îļþ
¶ÑÕ»¸ú×Ù
Á¬½Óµ½ÆäËü½ø³Ì
ÆäËüС¼¼ÇÉ
½áÊøÓï
²Î¿¼×ÊÁÏ
¹ØÓÚ×÷Õß
GNU µ÷ÊÔÆ÷¼ò½é
×÷Õß:David Seager
Linux µÄ´ó²¿·ÖÌØÉ«Ô´×ÔÓÚ shell µÄ GNU µ÷ÊÔÆ÷£¬Ò²³Æ×÷ gdb¡£gdb ¿ÉÒÔÈÃÄú²é¿´³ÌÐòµÄÄÚ²¿½á¹¹¡¢´òÓ¡±äÁ¿Öµ¡¢ÉèÖöϵ㣬ÒÔ¼°µ¥²½µ÷ÊÔÔ´´úÂë¡£ËüÊǹ¦Äܼ«ÆäÇ¿´óµÄ¹¤¾ß£¬ÊÊÓÃÓÚÐÞ¸´³ÌÐò´úÂëÖеÄÎÊÌâ¡£ÔÚ±¾ÎÄÖУ¬ÎÒ½«³¢ÊÔ˵Ã÷ gdb Óжà°ô£¬¶àʵÓá£
±àÒë
¿ªÊ¼µ÷ÊÔ֮ǰ£¬±ØÐëÓóÌÐòÖеĵ÷ÊÔÐÅÏ¢±àÒëÒªµ÷ÊԵijÌÐò¡£ÕâÑù£¬gdb ²ÅÄܹ»µ÷ÊÔËùʹÓõıäÁ¿¡¢´úÂëÐкͺ¯Êý¡£Èç¹ûÒª½øÐбàÒ룬ÇëÔÚ gcc£¨»ò g++£©ÏÂʹÓöîÍâµÄ -g Ñ¡ÏîÀ´±àÒë³ÌÐò£º
gcc -g eg.c -o eg
ÔËÐÐ gdb
ÔÚ shell ÖУ¬¿ÉÒÔʹÓà gdb ÃüÁî²¢Ö¸¶¨³ÌÐòÃû×÷Ϊ²ÎÊýÀ´ÔËÐÐ gdb£¬ÀýÈç gdb eg£»»òÕßÔÚ gdb ÖУ¬¿ÉÒÔʹÓà file ÃüÁîÀ´×°ÈëÒªµ÷ÊԵijÌÐò£¬ÀýÈç file eg¡£ÕâÁ½ÖÖ·½Ê½¶¼¼ÙÉèÄúÊÇÔÚ°üº¬³ÌÐòµÄĿ¼ÖÐÖ´ÐÐÃüÁî¡£×°Èë³ÌÐòÖ®ºó£¬¿ÉÒÔÓà gdb ÃüÁî un À´Æô¶¯³ÌÐò¡£
µ÷ÊԻỰʾÀý
Èç¹ûÒ»ÇÐÕý³££¬³ÌÐò½«Ö´Ðе½½áÊø£¬´Ëʱ gdb ½«ÖØÐ»ñµÃ¿ ......
ʹÓÃTAB¼ü
ÓÃÊó±ê¿½±´ºÍÕ³ÌùÌá¸ß²Ù×÷ËÙ¶È ×ó¼üÍ϶¯---¿½±´ Öмüµã»÷---Õ³Ìù
1¡¢mkdir ½¨Á¢ÐÂĿ¼Ãû ¼Ó“." ÔÚĿ¼ÃûǰΪÒþ²ØÄ¿Â¼£¨ls -a¿É²é¿´£©
rm -rf Ŀ¼Ãû ɾ³ýĿ¼¼°×ÓĿ¼ rm -- -eeɾ³ý-eeÎļþ »òÕß rm "ÎļþÃû"
2¡¢mv ÀÏÎļþÃû ÐÂÎļþÃû ¸Ä±äÎļþ/Ŀ¼Ãû×Ö
cp ÀÏÎļþÃû ÐÂÎļþÃû ¸´ÖÆÄ¿Â¼ -R£¨¸´ÖÆÄ¿Â¼£©
3¡¢halt ¹Ø»ú reboot ÖØÆð
4¡¢mount (-t iso9660) /dev/cdrom /mnt/cdrom À¨ºÅÀïΪָ¶¨ÎļþÀàÐÍ£¬Ò»°ã¿É²»Óã¬linuxÒ»°ã»á×Ô¶¯Ê¶±ðÎļþÀàÐÍ
umount /mnt/cdrom »ò umount /dev/cdrom ÔÚÈ¡³ö¹âÅÌ»òÈíÅÌʱ£¬±ØÐëÏÈÔËÐÐÕâÌõÖ¸Áî
5¡¢¹ÜµÀÃüÁ
“|” ls /dev | more /devĿ¼µÄÎļþÒ»Ò³²»ÄÜÏÔʾÍ꣬more¿ÉÒÔ¶àÒ³ÏÔʾÍê
ÓÃÎļþ¼Ç¼ls /dev µÄËùÓнá¹û
ls /dev >file.txt Ŀ¼ÀïûÓÐfile.txt Ôò»á´´½¨Ò»¸öfile.txtÎļþ£¬Ä¿Â¼ÀïÓеϰÔò»á¸²¸Çfile.txt
&nb ......
umask()º¯Êý£º´Ëº¯ÊýµÄÖ÷Òª×÷ÓÃÊÇÔÚ´´½¨ÎļþʱÉèÖûòÕ߯Á±ÎµôÎļþµÄһЩȨÏÞ¡£Ò»°ãÓëopen()º¯ÊýÅäºÏʹÓá£openº¯ÊýÔÐÍ£º
#include<sys/types.h>
#include<sys/stat.h>
#include<fcntl.h>
int open( const char * pathname, int flags);
int open( const char * pathname,int flags, mode_t mode);
µ±´´½¨Ò»¸öÎļþ²¢ÇÒÒªÃ÷È·Ö¸¶¨´ËÎļþµÄȨÏÞʱ£¬Ó¦¸ÃʹÓõڶþ¸öopen()º¯Êý£¬Ã÷È·Ö¸¶¨mode²ÎÊý£¬Ëù´´½¨µÄÎļþ×îºóµÄȨÏÞÊÇ£ºmode&(~mask)¡£Ä¬ÈϵÄmaskÖµÊÇ£º022
Àý£º
int main()
{
int fd;
umask(0026);
fd = open("test.txt",O_RDWR | O_CREAT,0666);
if(fd < 0)
perror("open");
return 0;
}
ÔòÉú³ÉµÄtest.txtÎļþµÄȨÏÞÊÇ£º666&(~026)½á¹ûÊÇ£º-rw-r--r--¡£Èç¹ûûÓÐumask(0026);ÕâÌõÓï¾ä£¬ÔòÉú³ÉµÄtest.txtÎļþµÄȨÏÞÊÇ£º666&(~022)½á¹ûÊÇ£º-rw-r-----¡£×¢£ºopenº¯ÊýµÄmode²ÎÊýÖ»ÓÐÔÚ´´½¨Îļþʱ²ÅÓÐЧ¡£
  ......
LinuxϵͳÏ£¬ÐèÒª´óÁ¿µÄÃüÁîÐÐÑ¡ÏÈç¹û×Ô¼ºÊÖ¶¯½âÎöËûÃǵĻ°ÊµÔÚÊÇÓÐÎ¥Èí¼þ¸´ÓõÄ˼Ï룬²»¹ý»¹ºÃ£¬GNU C libraryÁô¸øÎÒÃÇÒ»¸ö½âÎöÃüÁîÐеĽӿÚ(X/Open¹æ·¶)£¬ºÃºÃʹÓÃËü¿ÉÒÔʹÄãµÄ³ÌÐò¸Ä¹Û²»ÉÙ¡£
ʹÓÃgetopt_long()ÐèÒªÒýÈëÍ·Îļþ
#include <getopt.h>
ÏÖÔÚÎÒÃÇʹÓÃÒ»¸öÀý×ÓÀ´ËµÃ÷ËüµÄʹÓá£
Ò»¸öÓ¦ÓóÌÐòÐèÒªÈçϵĶÌÑ¡ÏîºÍ³¤Ñ¡Ïî¡£
¶ÌÑ¡Ïî ³¤Ñ¡Ïî ×÷ÓÃ
-h --help Êä³ö³ÌÐòÃüÁîÐвÎÊý˵Ã÷È»ºóÍ˳ö
&nbs ......