Ëæ×ÅLinuxÓ¦ÓõÄÀ©Õ¹Ðí¶àÅóÓÑ¿ªÊ¼½Ó´¥Linux£¬¸ù¾ÝѧϰWindwosµÄ¾ÑéÍùÍùÓÐһЩãȻµÄ¸Ð¾õ£º²»Öª´ÓºÎ´¦¿ªÊ¼Ñ§Æð¡£ÕâÀï½éÉÜѧϰLinuxµÄһЩ½¨Òé¡£
Ò»¡¢´Ó»ù´¡¿ªÊ¼£º ³£³£ÓÐЩÅóÓÑÔÚLinuxÂÛ̳ÎÊһЩÎÊÌ⣬²»¹ý£¬ÆäÖдó¶àÊýµÄÎÊÌâ¶¼ÊǺܻù´¡µÄ¡£ÀýÈ磺ΪʲôÎÒʹÓÃÒ»¸öÃüÁîµÄʱºò£¬ÏµÍ³¸æËßÎÒÕÒ²»µ½¸ÃĿ¼£¬ÎÒÒªÈçºÎÏÞÖÆÊ¹ÓÃÕßµÄȨÏÞµÈÎÊÌ⣬ÕâЩÎÊÌâÆäʵ¶¼²»ÊǺÜÄѵģ¬Ö»ÒªÁ˽âÁË Linux µÄ»ù´¡Ö®ºó£¬Ó¦¸Ã¾Í¿ÉÒÔºÜÇáÒ׵Ľâ¾öµôÕâ·½ÃæµÄÎÊÌâ¡£¶øÓÐЩÅóÓÑÃdz£³£Ò»½Ó´¥Linux ¾ÍÊÇÏ£Íû¹¹¼ÜÍøÕ¾£¬¸ù±¾Ã»ÓÐÏëµ½ÒªÏÈÁ˽âÒ»ÏÂLinux µÄ»ù´¡¡£ÕâÊÇÏ൱À§Äѵġ£
¶þ¡¢LinuxÃüÁîÊDZØÐëѧϰ ËäÈ»Linux×ÀÃæÓ¦Ó÷¢Õ¹ºÜ¿ì£¬µ«ÊÇÃüÁîÔÚLinuxÖÐÒÀÈ»ÓкÜÇ¿µÄÉúÃüÁ¦¡£LinuxÊÇÒ»¸öÃüÁîÐÐ×é³ÉµÄ²Ù×÷ϵͳ,¾«ËèÔÚÃüÁîÐУ¬ÎÞÂÛͼÐνçÃæ·¢Õ¹µ½Ê²Ã´Ë®Æ½Õâ¸öÔÀíÊDz»»á±äµÄ£¬LinuxÃüÁîÓÐÐí¶àÇ¿´óµÄ¹¦ÄÜ£º´Ó¼òµ¥µÄ´ÅÅ̲Ù×÷¡¢Îļþ´æÈ¡¡¢µ½½øÐи´ÔӵĶàýÌåͼÏóºÍÁ÷ýÌåÎļþµÄÖÆ×÷¡£¾ÙÒ»¸öÀý×Ó:LinuxµÄ³£ÓÃÃüÁîfind,²ì¿´manÎĵµ,³õѧÕßÒ»¶¨»á¾õµÃÌ«¸´ÔÓ¶ø²»ÔÒâÓÃ,µ«ÊÇÄãÒ»µ©Ñ§»á¾Í°®²»ÊÍÊÖ.ËüµÄ¹¦ÄÜʵÔÚ̫ǿÁË,ÔÚÅäºÏexec²ÎÊý»òÕßͨ¹ý¹ÜµÀÖØ¶¨Ïòµ½xargsÃüÁîºÍgrepÃüÁî,¿ÉÒÔÍê³É·Ç³£¸´ÔӵIJÙ×÷,Èç¹ûͬÑùµÄ ......
¶¯Ì¬¿âµÄÏÔʽµ÷ÓÃ
ÏÔʽµ÷Óõĺ¬ÒåÊÇ´úÂë³öÏÖ¿âÎļþÃû£¬Óû§ÐèÒª×Ô¼ºÈ¥
´ò¿ªºÍ¹ÜÀí¿âÎļþ¡£ÆäÒªµãΪ:
¢Å°Ñdlfcn.hϵͳͷÎļþ°üº¬½øÀ´
¢ÆÓÃdlopenº¯Êý´ò¿ª¿âÎļþ£¬²¢Ö¸¶¨´ò¿ª·½Ê½
dllopeµÄµÄµÚÒ»¸ö²ÎÊýΪ¹²Ïí¿âµÄÃû³Æ£¬½«»áÔÚÏÂÃæÎ»ÖòéÕÒÖ¸¶¨µÄ¹²Ïí¿â¡£
¢Ù»·¾³±äÁ¿LD_LIBRARY_PATHÁгöµÄÓ÷ֺżä¸ôµÄËùÓÐĿ¼¡£
¢ÚÎļþ/etc/ld.so.cacheÖÐÕÒµ½µÄ¿âµÄÁÐ±í£¬ÓÉldconfigÃüÁîˢС£
¢ÛĿ¼usr/lib¡£
¢ÜĿ¼/lib¡£
¢Ýµ±Ç°Ä¿Â¼¡£
µÚ¶þ¸ö²ÎÊýΪ´ò¿ª¹²Ïí¿âµÄ·½Ê½¡£ÓÐÁ½¸öȡֵ
¢ÙRTLD_NOW£º½«¹²Ïí¿âÖеÄËùÓк¯Êý¼ÓÔØµ½ÄÚ´æ
¢ÚRTLD_LAZY£º»áÍÆºó¹²Ïí¿âÖеĺ¯ÊýµÄ¼ÓÔØ²Ù×÷£¬Ö±µ½µ÷ÓÃdlsym()ʱ·½¼ÓÔØÄ³º¯Êý
¢ÇÓÃdlerror()º¯Êý²âÊÔÊÇ·ñ´ò¿ª³É¹¦£¬²¢½øÐдíÎó´¦Àí;
¢ÈÓÃdlsym»ñµÃº¯ÊýµØÖ·,´æ·ÅÔÚÒ»¸öº¯ÊýÖ¸ÕëÖÐ
¢ÉÓûñµÃµÄº¯ÊýÖ¸Õë½øÐк¯Êýµ÷Óá£
¢Ê³ÌÐò½áÊøÊ±ÓÃdlclose¹Ø±Õ´ò¿ªµÄ¶¯Ì¬¿â£¬·ÀÖ¹×ÊԴй¶¡£
¢ËÓÃldconfig¹¤¾ß°Ñ¶¯Ì¬¿âµÄ·¾¶¼Óµ½ÏµÍ³¿âÁбíÖÐ
1¡¢±àд²âÊÔÎļþ
//main.c ²âÊÔ¶¯Ì¬¿âÏÔʽµ÷ÓõijÌÐò
#include<dlfcn.h>&n ......
ʹÓÃ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 ......
ͳ¼ÆÄ³Îļþ¼ÐÏÂÎļþµÄ¸öÊý
ls -l |grep "^-"|wc -l
ͳ¼ÆÄ³Îļþ¼ÐÏÂĿ¼µÄ¸öÊý
ls -l |grep "^£ä"|wc -l
ͳ¼ÆÎļþ¼ÐÏÂÎļþµÄ¸öÊý£¬°üÀ¨×ÓÎļþ¼ÐÀïµÄ¡£
ls -lR|grep "^-"|wc -l
ͳ¼ÆÎļþ¼ÐÏÂĿ¼µÄ¸öÊý£¬°üÀ¨×ÓÎļþ¼ÐÀïµÄ¡£
ls -lR|grep "^d"|wc -l
˵Ã÷£º
ls -l
³¤ÁбíÊä³ö¸ÃĿ¼ÏÂÎļþÐÅÏ¢(×¢ÒâÕâÀïµÄÎļþ£¬²»Í¬ÓÚÒ»°ãµÄÎļþ£¬¿ÉÄÜÊÇĿ¼¡¢Á´½Ó¡¢É豸ÎļþµÈ)
grep "^-"
ÕâÀォ³¤ÁбíÊä³öÐÅÏ¢¹ýÂËÒ»²¿·Ö£¬Ö»±£ÁôÒ»°ãÎļþ£¬Èç¹ûÖ»±£ÁôĿ¼¾ÍÊÇ ^d
wc -l
ͳ¼ÆÊä³öÐÅÏ¢µÄÐÐÊý£¬ÒòΪÒѾ¹ýÂ˵Ãֻʣһ°ãÎļþÁË£¬ËùÒÔͳ¼Æ½á¹û¾ÍÊÇÒ»°ãÎļþÐÅÏ¢µÄÐÐÊý£¬ÓÖÓÉ ÓÚÒ»ÐÐÐÅÏ¢¶ÔÓ¦Ò»¸öÎļþ£¬ËùÒÔÒ²¾ÍÊÇÎļþµÄ¸öÊý¡£ ......
trap [-lp] [arg] [sigspec ...]
µ± shell ÊÕµ½ÐźŠsigspec ʱ£¬ÃüÁî arg ½«±»¶ÁÈ¡²¢Ö´ÐС£Èç¹ûûÓиø³ö arg »òÕ߸ø³öµÄÊÇ -,
ËùÓÐÖ¸¶¨µÄÐźű»ÉèÖÃΪËüÃǵijõʼֵ (½øÈë shell ʱËüÃǵÄÖµ)¡£Èç¹û arg ÊÇ¿Õ×Ö·û´®£¬ sigspec Ö¸¶¨µÄÐźű»
shell ºÍËüÆô¶¯µÄÃüÁîºöÂÔ¡£Èç¹û arg ²»´æÔÚ£¬²¢ÇÒ¸ø³öÁË -p ÄÇôÓëÿ¸ö sigspec
Ïà¹ØÁªµÄÏÝÚåÃüÁ±»ÏÔʾ³öÀ´¡£Èç¹ûûÓиø³öÈκβÎÊý£¬»òÖ»¸ø³öÁË -p£¬ trap ½«´òÓ¡³öÓëÿ¸öÐźűàºÅÏà¹ØµÄÃüÁîÁбí▒ ÿ¸ö
sigspec ¿ÉÒÔÊÇ ¶¨ÒåµÄÐźÅÃû£¬»òÊÇÒ»¸öÐźűàºÅ¡£ Èç¹û sigspec ÊÇ EXIT (0)£¬ÃüÁî
arg ½«ÔÚ shell Í˳öʱִÐС£Èç¹û sigspec ÊÇ DEBUG, ÃüÁî arg ½«ÔÚÿ¸ö¼òµ¥ÃüÁî (simple
command£¬²Î¼ûÉÏÃæµÄ SHELL GRAMMAR) Ö®ºóÖ´ÐС£Èç¹û sigspec ÊÇ ERR, ÃüÁî arg
½«ÔÚÈκÎÃüÁîÒÔ·ÇÁãÖµÍ˳öʱִÐС£Èç¹ûʧ°ÜµÄÃüÁîÊÇ until »ò while Ñ»·µÄÒ»²¿·Ö£¬ if Óï¾äµÄÒ»²¿·Ö£¬ && »ò
⎪⎪ ÐòÁеÄÒ»²¿·Ö£¬»òÕßÃüÁîµÄ·µ»ØÖµÊÇͨ¹ý ! ת»¯¶øÀ´£¬ ERR ÏÝÚ彫²»»áÖ´ÐС£Ñ¡Ïî -l ʹµÃ shell
´òÓ¡ÐźÅÃûºÍ¶ÔÓ¦±àºÅµÄÁÐ±í¡£ shell ºöÂÔµÄÐźŲ»Äܱ»²¶×½»òÖØÖá£ÔÚ×Ó½ø³ÌÖУ¬±»²¶×½µÄÐźÅÔÚ½ø³Ì´´½¨Ê±±»ÖØÖÃΪ
³õʼֵ¡£
·µ»ØÖ ......
ͨ¹ýʹÓà tr£¬Äú¿ÉÒԷdz£ÈÝÒ×µØÊµÏÖ sed µÄÐí¶à×î»ù±¾¹¦ÄÜ¡£Äú¿ÉÒÔ½« tr ¿´×÷Ϊ sed µÄ£¨¼«Æä£©¼ò»¯µÄ±äÌ壺Ëü¿ÉÒÔÓÃÒ»¸ö×Ö·ûÀ´Ìæ»»ÁíÒ»¸ö×Ö·û£¬»òÕß¿ÉÒÔÍêÈ«³ýȥһЩ×Ö·û¡£ÄúÒ²¿ÉÒÔÓÃËüÀ´³ýÈ¥ÖØ¸´×Ö·û¡£Õâ¾ÍÊÇËùÓÐ tr ËùÄܹ»×öµÄ¡£
trÓÃÀ´´Ó±ê×¼ÊäÈëÖÐͨ¹ýÌæ»»»òɾ³ý²Ù×÷½øÐÐ×Ö·ûת»»¡£trÖ÷ÒªÓÃÓÚɾ³ýÎļþÖпØÖÆ×Ö·û»ò½øÐÐ×Ö·ûת»»¡£Ê¹ÓÃtrʱҪת»»Á½¸ö×Ö·û´®£º×Ö·û´®1ÓÃÓÚ²éѯ£¬×Ö·û´®2ÓÃÓÚ´¦Àí¸÷ÖÖת»»¡£tr¸ÕÖ´ÐÐʱ£¬×Ö·û´®1ÖеÄ×Ö·û±»Ó³Éäµ½×Ö·û´®2ÖеÄ×Ö·û£¬È»ºóת»»²Ù×÷¿ªÊ¼¡£
´øÓÐ×î³£ÓÃÑ¡ÏîµÄtrÃüÁî¸ñʽΪ£º
tr -c -d -s ["string1_to_translate_from"] ["string2_to_translate_to"] < input-file
ÕâÀ
-c ÓÃ×Ö·û´®1ÖÐ×Ö·û¼¯µÄ²¹¼¯Ìæ»»´Ë×Ö·û¼¯£¬ÒªÇó×Ö·û¼¯ÎªASCII¡£
-d ɾ³ý×Ö·û´®1ÖÐËùÓÐÊäÈë×Ö·û¡£
-s ɾ³ýËùÓÐÖØ¸´³öÏÖ×Ö·ûÐòÁУ¬Ö»±£ÁôµÚÒ»¸ö£»¼´½«Öظ´³öÏÖ×Ö·û´®Ñ¹ËõΪһ¸ö×Ö·û´®¡£
input-fileÊÇת»»ÎļþÃû¡£ËäÈ»¿ÉÒÔʹÓÃÆäËû¸ñʽÊäÈ룬µ«ÕâÖÖ¸ñʽ×î³£Óá£
2¡¢×Ö·û·¶Î§
Ö¸¶¨×Ö·û´®1»ò×Ö·û´®2µÄÄÚÈÝʱ£¬Ö»ÄÜʹÓõ¥×Ö·û»ò×Ö·û´®·¶Î§»òÁÐ±í¡£
[a-z] a-zÄÚµÄ×Ö·û×é³ÉµÄ×Ö·û´®¡£
[A-Z] A-ZÄÚµÄ×Ö·û×é³ÉµÄ×Ö·û´®¡£
......