ºìÁªLinuxÃÅ»§
Linux°ïÖú

Óû§ºÍLinuxÖ®¼äµÄ½Ó¿Ú£ºshellÃüÁî

·¢²¼Ê±¼ä:2006-05-18 08:56:22À´Ô´:ºìÁª×÷Õß:reing
×÷Õߣºgoshtzhu

shellÊÇÓû§ºÍLinux²Ù×÷ϵͳ֮¼äµÄ½Ó¿Ú¡£LinuxÖÐÓжàÖÖshell£¬ÆäÖÐȱʡʹÓõÄÊÇBash¡£±¾Õ½²ÊöÁËshellµÄ¹¤×÷Ô­Àí£¬shellµÄÖÖÀ࣬shellµÄÒ»°ã²Ù×÷¼°BashµÄÌØÐÔ¡£

ʲôÊÇshell

LinuxϵͳµÄshell×÷Ϊ²Ù×÷ϵͳµÄÍâ¿Ç£¬ÎªÓû§ÌṩʹÓòÙ×÷ϵͳµÄ½Ó¿Ú¡£ËüÊÇÃüÁîÓïÑÔ¡¢ÃüÁî½âÊͳÌÐò¼°³ÌÐòÉè¼ÆÓïÑÔµÄͳ³Æ¡£

shellÊÇÓû§ºÍLinuxÄÚºËÖ®¼äµÄ½Ó¿Ú³ÌÐò£¬Èç¹û°ÑLinuxÄÚºËÏëÏó³ÉÒ»¸öÇòÌåµÄÖÐÐÄ£¬shell¾ÍÊÇÎ§ÈÆÄں˵ÄÍâ²ã¡£µ±´Óshell»òÆäËû³ÌÐòÏòLinux´«µÝÃüÁîʱ£¬Äں˻á×ö³öÏàÓ¦µÄ·´Ó¦¡£

shellÊÇÒ»¸öÃüÁîÓïÑÔ½âÊÍÆ÷£¬ËüÓµÓÐ×Ô¼ºÄÚ½¨µÄshellÃüÁ£¬shellÒ²Äܱ»ÏµÍ³ÖÐÆäËûÓ¦ÓóÌÐòËùµ÷Óá£Óû§ÔÚÌáʾ·ûÏÂÊäÈëµÄÃüÁî¶¼ÓÉshellÏȽâÊÍÈ»ºó´«¸øLinuxºËÐÄ¡£

ÓÐһЩÃüÁ±ÈÈç¸Ä±ä¹¤×÷Ŀ¼ÃüÁîcd£¬Êǰüº¬ÔÚshellÄÚ²¿µÄ¡£»¹ÓÐһЩÃüÁÀýÈ翽±´ÃüÁîcpºÍÒÆ¶¯ÃüÁîrm£¬ÊÇ´æÔÚÓÚÎļþϵͳÖÐij¸öĿ¼Ïµĵ¥¶ÀµÄ³ÌÐò¡£¶ÔÓû§¶øÑÔ£¬²»±Ø¹ØÐÄÒ»¸öÃüÁîÊǽ¨Á¢ÔÚshellÄÚ²¿»¹ÊÇÒ»¸öµ¥¶ÀµÄ³ÌÐò¡£

shellÊ×Ïȼì²éÃüÁîÊÇ·ñÊÇÄÚ²¿ÃüÁÈô²»ÊÇÔÙ¼ì²éÊÇ·ñÊÇÒ»¸öÓ¦ÓóÌÐò£¨ÕâÀïµÄÓ¦ÓóÌÐò¿ÉÒÔÊÇLinux±¾ÉíµÄʵÓóÌÐò£¬ÈçlsºÍrm£¬Ò²¿ÉÒÔÊǹºÂòµÄÉÌÒµ³ÌÐò£¬Èçxv£¬»òÕßÊÇ×ÔÓÉÈí¼þ£¬Èçemacs£©¡£È»ºóshellÔÚËÑË÷·¾¶ÀïѰÕÒÕâЩӦÓóÌÐò£¨ËÑË÷·¾¶¾ÍÊÇÒ»¸öÄÜÕÒµ½¿ÉÖ´ÐгÌÐòµÄĿ¼ÁÐ±í£©¡£Èç¹û¼üÈëµÄÃüÁî²»ÊÇÒ»¸öÄÚ²¿ÃüÁî²¢ÇÒÔÚ·¾¶ÀïûÓÐÕÒµ½Õâ¸ö¿ÉÖ´ÐÐÎļþ£¬½«»áÏÔʾһÌõ´íÎóÐÅÏ¢¡£Èç¹ûÄܹ»³É¹¦ÕÒµ½ÃüÁ¸ÃÄÚ²¿ÃüÁî»òÓ¦ÓóÌÐò½«±»·Ö½âΪϵͳµ÷Óò¢´«¸øLinuxÄںˡ£

shellµÄÁíÒ»¸öÖØÒªÌØÐÔÊÇËü×ÔÉí¾ÍÊÇÒ»¸ö½âÊÍÐ͵ijÌÐòÉè¼ÆÓïÑÔ£¬shell³ÌÐòÉè¼ÆÓïÑÔÖ§³Ö¾ø´ó¶àÊýÔڸ߼¶ÓïÑÔÖÐÄܼûµ½µÄ³ÌÐòÔªËØ£¬È纯Êý¡¢±äÁ¿¡¢Êý×éºÍ³ÌÐò¿ØÖƽṹ¡£shell±à³ÌÓïÑÔ¼òµ¥Ò×ѧ£¬ÈκÎÔÚÌáʾ·ûÖÐÄܼüÈëµÄÃüÁî¶¼Äܷŵ½Ò»¸ö¿ÉÖ´ÐеÄshell³ÌÐòÖС£

µ±ÆÕͨÓû§³É¹¦µÇ¼£¬ÏµÍ³½«Ö´ÐÐÒ»¸ö³ÆÎªshellµÄ³ÌÐò¡£ÕýÊÇshell½ø³ÌÌṩÁËÃüÁîÐÐÌáʾ·û¡£×÷ΪĬÈÏÖµ£¨TurboLinuxϵͳĬÈϵÄshellÊÇBASH£©£¬¶ÔÆÕͨÓû§Óá°$¡±×÷Ìáʾ·û£¬¶Ô³¬¼¶Óû§£¨root£©Óá°#¡±×÷Ìáʾ·û¡£

Ò»µ©³öÏÖÁËshellÌáʾ·û£¬¾Í¿ÉÒÔ¼üÈëÃüÁîÃû³Æ¼°ÃüÁîËùÐèÒªµÄ²ÎÊý¡£shell½«Ö´ÐÐÕâЩÃüÁî¡£Èç¹ûÒ»ÌõÃüÁ·ÑÁ˺ܳ¤µÄʱ¼äÀ´ÔËÐУ¬»òÕßÔÚÆÁÄ»ÉϲúÉúÁË´óÁ¿µÄÊä³ö£¬¿ÉÒÔ´Ó¼üÅÌÉϰ´ctrl+c·¢³öÖжÏÐźÅÀ´ÖжÏËü£¨ÔÚÕý³£½áÊøÖ®Ç°£¬ÖÐÖ¹ËüµÄÖ´ÐУ©¡£

µ±Óû§×¼±¸½áÊøµÇ¼¶Ô»°½ø³Ìʱ£¬¿ÉÒÔ¼üÈëlogoutÃüÁî¡¢exitÃüÁî»òÎļþ½áÊø·û£¨EOF£©£¨°´ctrl+dʵÏÖ£©£¬½áÊøµÇ¼¡£

ÎÒÃÇÀ´ÊµÏ°Ò»ÏÂshellÊÇÈçºÎ¹¤×÷µÄ¡£

$ make work

make:***No rule to make target ¡®work¡¯. Stop.

$

×¢ÊÍ£ºmakeÊÇϵͳÖÐÒ»¸öÃüÁîµÄÃû×Ö£¬ºóÃæ¸ú×ÅÃüÁî²ÎÊý¡£ÔÚ½ÓÊÕµ½Õâ¸öÃüÁîºó£¬shell±ãÖ´ÐÐËü¡£±¾ÀýÖУ¬ÓÉÓÚÊäÈëµÄÃüÁî²ÎÊý²»ÕýÈ·£¬ÏµÍ³·µ»ØÐÅÏ¢ºóÍ£Ö¹¸ÃÃüÁîµÄÖ´ÐС£

ÔÚÀý×ÓÖУ¬shell»áѰÕÒÃûΪmakeµÄ³ÌÐò£¬²¢ÒÔworkΪ²ÎÊýÖ´ÐÐËü¡£makeÊÇÒ»¸ö¾­³£±»ÓÃÀ´±àÒë´ó³ÌÐòµÄ³ÌÐò£¬ËüÒÔ²ÎÊý×÷ΪĿ±êÀ´½øÐбàÒë¡£ÔÚ¡°make work¡±ÖУ¬make±àÒëµÄÄ¿±êÊÇwork¡£ÒòΪmakeÕÒ²»µ½ÒÔworkΪÃû×ÖµÄÄ¿±ê£¬Ëü±ã¸ø³ö´íÎóÐÅÏ¢±íʾÔËÐÐʧ°Ü£¬Óû§Óֻص½ÏµÍ³Ìáʾ·ûÏ¡£

ÁíÍ⣬Óû§¼üÈëÓйØÃüÁîÐкó£¬Èç¹ûshellÕÒ²»µ½ÒÔÆäÖеÄÃüÁîÃûΪÃû×ֵijÌÐò£¬¾Í»á¸ø³ö´íÎóÐÅÏ¢¡£ÀýÈ磬Èç¹ûÓû§¼üÈ룺

$ myprog

bash:myprog:command not found

$

¿ÉÒÔ¿´µ½£¬Óû§µÃµ½ÁËÒ»¸öûÓÐÕÒµ½¸ÃÃüÁîµÄ´íÎóÐÅÏ¢¡£Óû§ÇôíÃüÁîºó£¬ÏµÍ³Ò»°ã»á¸ø³öÕâÑùµÄ´íÎóÐÅÏ¢¡£

shellµÄÖÖÀà

LinuxÖеÄshellÓжàÖÖÀàÐÍ£¬ÆäÖÐ×î³£Óõļ¸ÖÖÊÇBourne shell£¨sh£©¡¢C shell£¨csh£©ºÍKorn shell£¨ksh£©¡£ÈýÖÖshell¸÷ÓÐÓÅȱµã¡£Bourne shellÊÇUNIX×î³õʹÓõÄshell£¬²¢ÇÒÔÚÿÖÖUNIXÉ϶¼¿ÉÒÔʹÓá£Bourne shellÔÚshell±à³Ì·½ÃæÏ൱ÓÅÐ㣬µ«ÔÚ´¦ÀíÓëÓû§µÄ½»»¥·½Ãæ×öµÃ²»ÈçÆäËû¼¸ÖÖshell¡£Linux²Ù×÷ϵͳȱʡµÄshellÊÇBourne Again shell£¬ËüÊÇBourne shellµÄÀ©Õ¹£¬¼ò³ÆBash£¬ÓëBourne shellÍêÈ«Ïòºó¼æÈÝ£¬²¢ÇÒÔÚBourne shellµÄ»ù´¡ÉÏÔö¼Ó¡¢ÔöÇ¿Á˺ܶàÌØÐÔ¡£Bash·ÅÔÚ/bin/bashÖУ¬ËüÓÐÐí¶àÌØÉ«£¬¿ÉÒÔÌṩÈçÃüÁȫ¡¢ÃüÁî±à¼­ºÍÃüÁîÀúÊ·±íµÈ¹¦ÄÜ£¬Ëü»¹°üº¬Á˺ܶàC shellºÍKorn shellÖеÄÓŵ㣬ÓÐÁé»îºÍÇ¿´óµÄ±à³Ì½Ó¿Ú£¬Í¬Ê±ÓÖÓкÜÓѺõÄÓû§½çÃæ¡£

C shellÊÇÒ»ÖÖ±ÈBourne shell¸üÊÊÓÚ±à³ÌµÄshell£¬ËüµÄÓï·¨ÓëCÓïÑÔºÜÏàËÆ¡£ LinuxΪϲ»¶Ê¹ÓÃC shellµÄÈËÌṩÁËTcsh¡£TcshÊÇC shellµÄÒ»¸öÀ©Õ¹°æ±¾¡£Tcsh°üÀ¨ÃüÁîÐб༭¡¢¿É±à³Ìµ¥´Ê²¹È«¡¢Æ´Ð´Ð£Õý¡¢ÀúÊ·ÃüÁîÌæ»»¡¢×÷Òµ¿ØÖƺÍÀàËÆCÓïÑÔµÄÓï·¨£¬Ëü²»½öºÍBash shellÊÇÌáʾ·û¼æÈÝ£¬¶øÇÒ»¹Ìṩ±ÈBash shell¸ü¶àµÄÌáʾ·û²ÎÊý¡£

Korn shell¼¯ºÏÁËC shellºÍBourne shellµÄÓŵ㲢ÇÒºÍBourne shellÍêÈ«¼æÈÝ¡£LinuxϵͳÌṩÁËpdksh£¨kshµÄÀ©Õ¹£©£¬ËüÖ§³ÖÈÎÎñ¿ØÖÆ£¬¿ÉÒÔÔÚÃüÁîÐÐÉÏ¹ÒÆð¡¢ºǫִ́ÐС¢»½ÐÑ»òÖÕÖ¹³ÌÐò¡£

Linux²¢Ã»ÓÐÀäÂäÆäËûshellÓû§£¬»¹°üÀ¨ÁËһЩÁ÷ÐеÄshellÈçash¡¢zshµÈ¡£Ã¿¸öshell¶¼ÓÐËüµÄÓÃ;£¬ÓÐЩshellÊÇÓÐרÀûµÄ£¬ÓÐЩÄÜ´ÓInternetÍøÉÏ»òÆäËûÀ´Ô´»ñµÃ¡£Òª¾ö¶¨Ê¹ÓÃÄĸöshell£¬Ö»Ðè¶Áһϸ÷ÖÖshellµÄÁª»ú°ïÖú£¬²¢ÊÔÓÃһϡ£

Óû§ÔڵǼµ½LinuxʱÓÉ/etc/passwdÎļþÀ´¾ö¶¨ÒªÊ¹ÓÃÄĸöshell¡£ÀýÈ磺

# fgrep lisa /etc/passwd

lisa:x:500:500:TurboLinux User:/home/lisa:/bin/bash

shell±»ÁÐÿÐеÄĩ⣨/bin/bash£©¡£

ÓÉÓÚBashÊÇLinuxÉÏȱʡµÄshell£¬±¾ÕÂÖ÷Òª½éÉÜBash¼°ÆäÏà¹ØÖªÊ¶¡£

shellÃüÁî

ÃüÁîÐÐc

Óû§µÇ¼µ½Linuxϵͳʱ£¬¿ÉÒÔ¿´µ½Ò»¸öshellÌáʾ·û£¬±êʶÁËÃüÁîÐеĿªÊ¼¡£Óû§¿ÉÒÔÔÚÌáʾ·ûºóÃæÊäÈëÈκÎÃüÁî¼°²ÎÊý¡£ÀýÈ磺

$ date

¶þ 11 23 01:34:58 CST 1999

$

Óû§µÇ¼ʱ£¬Êµ¼Ê½øÈëÁËshell£¬Ëü×ñÑ­Ò»¶¨µÄÓï·¨½«ÊäÈëµÄÃüÁî¼ÓÒÔ½âÊͲ¢´«¸øÏµÍ³¡£ÃüÁîÐÐÖÐÊäÈëµÄµÚÒ»¸ö×Ö±ØÐëÊÇÒ»¸öÃüÁîµÄÃû×Ö£¬µÚ¶þ¸ö×ÖÊÇÃüÁîµÄÑ¡Ïî»ò²ÎÊý£¬ÃüÁîÐÐÖеÄÿ¸ö×Ö±ØÐëÓɿոñ»òTAB¸ô¿ª£¬¸ñʽÈçÏ£º

$ Command Option Arguments

1. Ñ¡ÏîºÍ²ÎÊý

Ñ¡ÏîÊǰüÀ¨Ò»¸ö»ò¶à¸ö×ÖĸµÄ´úÂ룬ËüÇ°ÃæÓÐÒ»¸ö¼õºÅ£¨¼õºÅÊDZØÒªµÄ£¬LinuxÓÃËüÀ´Çø±ðÑ¡ÏîºÍ²ÎÊý£©£¬Ñ¡Ïî¿ÉÓÃÓڸıäÃüÁîÖ´Ðе͝×÷µÄÀàÐÍ¡£ÀýÈ磺

$ ls

motd passwd

$

ÕâÊÇûÓÐÑ¡ÏîµÄlsÃüÁ¿ÉÁгöµ±Ç°Ä¿Â¼ÖÐËùÓÐÎļþ£¬Ö»Áгö¸÷¸öÎļþµÄÃû×Ö£¬¶ø²»ÏÔʾÆäËû¸ü¶àµÄÐÅÏ¢¡£

$ ls -l

total 2

-rw-r--r-- 2 wzh book 22 Apr 20 20:37 motd

-rw-r--r-- 2 wzh book 796 Apr 20 20:37 passwd

$

¼ÓÈë-lÑ¡Ï½«»áΪÿ¸öÎļþÁгöÒ»ÐÐÐÅÏ¢£¬ÖîÈçÊý¾Ý´óСºÍÊý¾Ý×îºó±»Ð޸ĵÄʱ¼ä¡£

´ó¶àÊýÃüÁî¶¼±»Éè¼ÆÎª¿ÉÒÔ½ÓÄɲÎÊý¡£²ÎÊýÊÇÔÚÃüÁîÐÐÖеÄÑ¡ÏîÖ®ºó¼üÈëµÄÒ»¸ö»ò¶à¸öµ¥´Ê£¬ÀýÈ磺

$ ls -l text

-rw-r--r-- 2 wzh book 22 Apr 20 20:37 motd

-rw-r--r-- 2 wzh book 796 Apr 20 20:37 passwd

$

½«ÏÔʾtextĿ¼ÏµÄËùÓÐÎļþ¼°ÆäÐÅÏ¢¡£

ÓÐЩÃüÁÈçls¿ÉÒÔ´ø²ÎÊý£¬¶øÓÐһЩÃüÁî¿ÉÄÜÐèҪһЩ×îСÊýÄ¿µÄ²ÎÊý¡£ÀýÈ磬cpÃüÁîÖÁÉÙÐèÒªÁ½¸ö²ÎÊý£¬Èç¹û²ÎÊýµÄÊýÄ¿ÓëÃüÁîÒªÇó²»·û£¬shell½«»á¸ø³ö³ö´íÐÅÏ¢¡£ÀýÈ磺

$ cp -i mydata newdata

×¢Ò⣺ÃüÁîÐÐÖÐÑ¡ÏîÏÈÓÚ²ÎÊýÊäÈë¡£

2. ÃüÁîÐÐÌØÕ÷

ÃüÁîÐÐʵ¼ÊÉÏÊÇ¿ÉÒԱ༭µÄÒ»¸öÎı¾»º³åÇø£¬ÔÚ°´»Ø³µÖ®Ç°£¬¿ÉÒÔ¶ÔÊäÈëµÄÎı¾½øÐб༭¡£±ÈÈçÀûÓÃBACKSPACE¼ü¿ÉÒÔɾ³ý¸Õ¼üÈëµÄ×Ö·û£¬¿ÉÒÔ½øÐÐÕûÐÐɾ³ý£¬»¹¿ÉÒÔ²åÈë×Ö·û£¬Ê¹µÃÓû§ÔÚÊäÈëÃüÁÓÈÆäÊǸ´ÔÓÃüÁîʱ£¬Èô³öÏÖ¼üÈë´íÎó£¬ÎÞÐëÖØÐÂÊäÈëÕû¸öÃüÁֻҪÀûÓñ༭²Ù×÷£¬¼´¿É¸ÄÕý´íÎó¡£

ÀûÓÃÉϼýÍ·¿ÉÒÔÖØÐÂÏÔʾ¸ÕÖ´ÐеÄÃüÁÀûÓÃÕâÒ»¹¦ÄÜ¿ÉÒÔÖØ¸´Ö´ÐÐÒÔǰִÐйýµÄÃüÁ¶øÎÞÐëÖØÐ¼üÈë¸ÃÃüÁî¡£

bash±£´æ×ÅÒÔǰ¼üÈë¹ýµÄÃüÁîµÄÁÐ±í£¬ÕâÒ»ÁÐ±í±»³ÆÎªÃüÁîÀúÊ·±í¡£°´¶¯ÉϼýÍ·£¬±ã¿ÉÒÔÔÚÃüÁîÐÐÉÏÖð´ÎÏÔʾ¸÷ÌõÃüÁͬÑù£¬°´¶¯Ï¼ýÍ·¿ÉÒÔÔÚÃüÁîÁбíÖÐÏòÏÂÒÆ¶¯£¬ÕâÑù¿ÉÒÔ½«ÒÔǰµÄ¸÷ÌõÃüÁîÏÔʾÔÚÃüÁîÐÐÉÏ£¬Óû§¿ÉÒÔÐ޸IJ¢Ö´ÐÐÕâЩÃüÁî¡£ÕâÒ»ÌØÕ÷½«ÔÚ10.4½ÚÖнøÐÐÏêϸµÄÂÛÊö¡£

ÔÚÒ»¸öÃüÁîÐÐÖл¹¿ÉÒÔÖÃÈë¶à¸öÃüÁÓ÷ֺŽ«¸÷¸öÃüÁî¸ô¿ª¡£ÀýÈ磺

$ ls -F;cp -i mydata newdata

Ò²¿ÉÒÔÔÚ¼¸¸öÃüÁîÐÐÖÐÊäÈëÒ»¸öÃüÁÓ÷´Ð±¸Ü½«Ò»¸öÃüÁîÐгÖÐøµ½ÏÂÒ»ÐС£

$ cp -i

mydata

newdata

ÉÏÃæµÄcpÃüÁîÊÇÔÚÈýÐÐÖÐÊäÈëµÄ£¬¿ªÊ¼µÄÁ½ÐÐÒÔ·´Ð±¸Ü½áÊø£¬°ÑÈýÐÐ×÷Ϊһ¸öÃüÁîÐС£

shellÖеÄÌØÊâ×Ö·û

shellÖгýʹÓÃÆÕͨ×Ö·ûÍ⣬»¹¿ÉÒÔʹÓÃһЩ¾ßÓÐÌØÊ⺬ÒåºÍ¹¦ÄܵÄÌØÊâ×Ö·û¡£ÔÚʹÓÃËüÃÇʱӦעÒâÆäÌØÊâµÄº¬ÒåºÍ×÷Ó÷¶Î§¡£ÏÂÃæ·Ö±ð¶ÔÕâÐ©ÌØÊâ×Ö·û¼ÓÒÔ½éÉÜ¡£

1. ͨÅä·û

ͨÅä·ûÓÃÓÚģʽƥÅ䣬ÈçÎļþÃûÆ¥Å䡢·¾­ÃûËÑË÷¡¢×Ö·û´®²éÕҵȡ£³£ÓõÄͨÅä·ûÓÐ*¡¢?ºÍÀ¨ÔÚ·½À¨ºÅ£Û £ÝÖеÄ×Ö·ûÐòÁС£Óû§¿ÉÒÔÔÚ×÷ΪÃüÁî²ÎÊýµÄÎļþÃûÖаüº¬ÕâЩͨÅä·û£¬¹¹³ÉÒ»¸öËùνµÄ¡°Ä£Ê½´®¡±£¬ÔÚÖ´Ðйý³ÌÖнøÐÐģʽƥÅä¡£

* ´ú±íÈκÎ×Ö·û´®£¨³¤¶È¿ÉÒÔ²»µÈ£©£¬ÀýÈ磺¡°f*¡±Æ¥ÅäÒÔf´òÍ·µÄÈÎÒâ×Ö·û´®¡£µ«Ó¦×¢Ò⣬ÎļþÃûǰµÄÔ²µã£¨.£©ºÍ·¾­ÃûÖеÄбÏߣ¨/£©±ØÐëÏÔʽƥÅä¡£ÀýÈç¡°*¡±²»ÄÜÆ¥Åä.file£¬¶ø¡°.*¡±²Å¿ÉÒÔÆ¥Åä.file¡£

? ´ú±íÈκε¥¸ö×Ö·û¡£

£Û£Ý ´ú±íÖ¸¶¨µÄÒ»¸ö×Ö·û·¶Î§£¬Ö»ÒªÎļþÃûÖÐ£Û £ÝλÖô¦µÄ×Ö·ûÔÚ£Û £ÝÖÐÖ¸¶¨µÄ·¶Î§Ö®ÄÚ£¬ÄÇôÕâ¸öÎļþÃû¾ÍÓëÕâ¸öģʽ´®Æ¥Åä¡£·½À¨ºÅÖеÄ×Ö·û·¶Î§¿ÉÒÔÓÉÖ±½Ó¸ø³öµÄ×Ö·û×é³É£¬Ò²¿ÉÒÔÓɱíʾÏÞ¶¨·¶Î§µÄÆðʼ×Ö·û¡¢ÖÕÖ¹×Ö·û¼°ÖмäµÄÁ¬×Ö·û£¨-£©×é³É¡£ÀýÈ磬f £Ûa- d£Ý Óëf £Ûabcd£ÝµÄ×÷ÓÃÏàͬ¡£Shell½«°ÑÓëÃüÁîÐÐÖÐÖ¸¶¨µÄģʽ´®ÏàÆ¥ÅäµÄËùÓÐÎļþÃû¶¼×÷ΪÃüÁîµÄ²ÎÊý£¬ÐγÉ×îÖÕµÄÃüÁȻºóÔÙÖ´ÐÐÕâ¸öÃüÁî¡£

ÏÂÃæÎÒÃǸø³ö±í10-1˵Ã÷ÕâЩͨÅä·ûµÄ¾ßÌ庬Òå¡£

±í10-1¡¡Í¨Åä·ûº¬Òå¾ÙÀý

ģʽ´®

Òâ Òå

*

µ±Ç°Ä¿Â¼ÏÂËùÓÐÎļþµÄÃû³Æ¡£

*Text*

µ±Ç°Ä¿Â¼ÏÂËùÓÐÎļþÃûÖаüº¬ÓÐTextµÄÎļþµÄÃû³Æ¡£

£Ûab-dm£Ý*

µ±Ç°Ä¿Â¼ÏÂËùÓÐÒÔa¡¢b¡¢c¡¢d¡¢m¿ªÍ·µÄÎļþµÄÃû³Æ¡£

£Ûab-dm£Ý?

µ±Ç°Ä¿Â¼ÏÂËùÓÐÒÔa¡¢b¡¢c¡¢d¡¢m¿ªÍ·ÇÒºóÃæÖ»¸úÓÐÒ»¸ö×Ö·ûµÄÎļþµÄÃû³Æ¡£

/usr/bin/??

Ŀ¼/usr/binÏÂËùÓÐÃû³ÆÎªÁ½¸ö×Ö·ûµÄÎļþµÄÃû³Æ¡£

ÌØ±ðÐèҪעÒâµÄÊÇ£¬Á¬×Ö·û¡°-¡±½öÔÚ·½À¨ºÅÄÚÓÐЧ£¬±íʾ×Ö·û·¶Î§£¬ÈçÔÚ·½À¨ºÅÍâÃæ¾Í³ÉΪÆÕͨ×Ö·ûÁË¡£¶ø*ºÍ?Ö»ÔÚ·½À¨ºÅÍâÃæÊÇͨÅä·û£¬Èô³öÏÖÔÚ·½À¨ºÅÖ®ÄÚ£¬ËüÃÇҲʧȥͨÅä·ûµÄÄÜÁ¦£¬³ÉΪÆÕͨ×Ö·ûÁË¡£ÀýÈ磬ģʽ¡°- a£Û*?£Ýabc¡±ÖÐÖ»ÓÐÒ»¶Ô·½À¨ºÅÊÇͨÅä·û£¬*ºÍ?¾ùΪÆÕͨ×Ö·û£¬Òò´Ë£¬ËüÆ¥ÅäµÄ×Ö·û´®Ö»ÄÜÊÇ- a*abcºÍ- a?abc¡£

×îºó˵Ã÷Ò»ÏÂʹÓÃͨÅä·ûʱÐèҪעÒâµÄһЩÎÊÌâ¡£ÓÉÓÚ*¡¢?ºÍ£Û £Ý¶ÔÓÚshellÀ´Ëµ¾ßÓбȽÏÌØÊâµÄÒâÒ壬Òò´ËÔÚÕý³£µÄÎļþÃûÖв»Ó¦³öÏÖÕâЩ×Ö·û¡£ÌرðÊÇÔÚĿ¼ÃûÖв»Òª³öÏÖËüÃÇ£¬·ñÔòShellÆ¥ÅäÆðÀ´¿ÉÄÜ»áÎÞÇîµÄµÝ¹éÏÂÈ¥¡£ÁíÍâҪעÒâµÄÒ»µãÊÇ£ºÈç¹ûĿ¼ÖÐûÓÐÓëÖ¸¶¨µÄģʽ´®ÏàÆ¥ÅäµÄÎļþÃû£¬ÄÇôShell½«Ê¹ÓôËģʽ´®±¾Éí×÷Ϊ²ÎÊý´«¸øÓйØÃüÁî¡£Õâ¿ÉÄܾÍÊÇÃüÁîÖгöÏÖÌØÊâ×Ö·ûµÄÔ­ÒòËùÔÚ¡£

2. ÒýºÅ

ÔÚshellÖÐÒýºÅ·ÖΪÈýÖÖ£ºµ¥ÒýºÅ£¬Ë«ÒýºÅºÍ·´ÒýºÅ¡£

* µ¥ÒýºÅ ¡®

Óɵ¥ÒýºÅÀ¨ÆðÀ´µÄ×Ö·û¶¼×÷ΪÆÕͨ×Ö·û³öÏÖ¡£ÌØÊâ×Ö·ûÓõ¥ÒýºÅÀ¨ÆðÀ´ÒÔºó£¬Ò²»áʧȥԭÓÐÒâÒ壬¶øÖ»×÷ΪÆÕͨ×Ö·û½âÊÍ¡£ÀýÈ磺

$ string=¡¯$PATH¡¯

$ echo $string

$PATH

$

¿É¼û$±£³ÖÁËÆä±¾ÉíµÄº¬Ò壬×÷ΪÆÕͨ×Ö·û³öÏÖ¡£

* Ë«ÒýºÅ ¡°

ÓÉË«ÒýºÅÀ¨ÆðÀ´µÄ×Ö·û£¬³ý$¡¢¡¢¡¯¡¢ºÍ¡±Õ⼸¸ö×Ö·ûÈÔÊÇÌØÊâ×Ö·û²¢±£ÁôÆäÌØÊ⹦ÄÜÍ⣬ÆäÓà×Ö·ûÈÔ×÷ΪÆÕͨ×Ö·û¶Ô´ý¡£¶ÔÓÚ$À´Ëµ£¬¾ÍÊÇÓÃÆäºóÖ¸¶¨µÄ±äÁ¿µÄÖµÀ´´úÌæÕâ¸ö±äÁ¿ºÍ$£»¶ÔÓÚ¶øÑÔ£¬ÊÇתÒå×Ö·û£¬Ëü¸æËßshell²»Òª¶ÔÆäºóÃæµÄÄǸö×Ö·û½øÐÐÌØÊâ´¦Àí£¬Ö»µ±×÷ÆÕͨ×Ö·û¼´¿É¡£¿ÉÒÔÏë¼û£¬ÔÚË«ÒýºÅÖÐÐèÒªÔÚÇ°Ãæ¼ÓÉϵÄÖ»ÓÐËĸö×Ö·û$£¬£¬¡¯ºÍ¡±±¾Éí¡£¶ø¶Ô¡±ºÅ£¬ÈôÆäÇ°ÃæÃ»Óмӣ¬ÔòShell»á½«Ëüͬǰһ¸ö¡±ºÅÆ¥Åä¡£

ÀýÈ磬ÎÒÃǼٶ¨PATHµÄֵΪ.:/usr/bin:/bin£¬ÊäÈëÈçÏÂÃüÁ

$ TestString£½¡±$PATH\¡±$PATH¡±

$ echo $TestString

.:/usr/bin:/ bin¡±$PATH

$

¶ÁÕß¿ÉÒÔ×Ô¼ºÊÔÒ»ÏÂÔÚµÚ¶þ¸öË«ÒýºÅ֮ǰ²»¼Ó»á²úÉúʲô½á¹û¡£

* ·´ÒýºÅ `

·´ÒýºÅ£¨`£©Õâ¸ö×Ö·ûËù¶ÔÓ¦µÄ¼üÒ»°ãλÓÚ¼üÅ̵Ä×óÉϽǣ¬²»Òª½«Æäͬµ¥ÒýºÅ£¨¡¯£©»ìÏý¡£·´ÒýºÅÀ¨ÆðÀ´µÄ×Ö·û´®±»shell½âÊÍΪÃüÁîÐУ¬ÔÚÖ´ÐÐʱ£¬shellÊ×ÏÈÖ´ÐиÃÃüÁîÐУ¬²¢ÒÔËüµÄ±ê×¼Êä³ö½á¹ûÈ¡´úÕû¸ö·´ÒýºÅ£¨°üÀ¨Á½¸ö·´ÒýºÅ£©²¿·Ö¡£ÀýÈ磺

$ pwd

/home/xyz

$ string=¡±current directory is `pwd`¡±

$ echo $string

current directour is /home/xyz

$

shellÖ´ÐÐechoÃüÁîʱ£¬Ê×ÏÈÖ´ÐÐ`pwd`ÖеÄÃüÁîpwd£¬²¢½«Êä³ö½á¹û/home/xyzÈ¡´ú`pwd`Õⲿ·Ö£¬×îºóÊä³öÌæ»»ºóµÄÕû¸ö½á¹û¡£

ÀûÓ÷´ÒýºÅµÄÕâÖÖ¹¦ÄÜ¿ÉÒÔ½øÐÐÃüÁîÖû»£¬¼´°Ñ·´ÒýºÅÀ¨ÆðÀ´µÄÖ´Ðнá¹û¸³Öµ¸øÖ¸¶¨±äÁ¿¡£ÀýÈ磺

$ today=`date`

$ echo Today is $today

Today is Mon Apr 15 16:20:13 CST 1999

$

·´ÒýºÅ»¹¿ÉÒÔǶÌ×ʹÓᣵ«Ðè×¢Ò⣬ǶÌ×ʹÓÃʱÄÚ²ãµÄ·´ÒýºÅ±ØÐëÓ÷´Ð±Ïߣ¨£©½«ÆäתÒå¡£ÀýÈ磺

$ abc=`echo The number of users is `who| wc-l``

$ echo $abc

The number of users is 5

$

ÔÚ·´ÒýºÅÖ®¼äµÄÃüÁîÐÐÖÐÒ²¿ÉÒÔʹÓÃshellµÄÌØÊâ×Ö·û¡£ShellΪµÃµ½``ÖÐÃüÁîµÄ½á¹û£¬Ëüʵ¼ÊÉÏҪȥִÐÐ``ÖÐÖ¸¶¨µÄÃüÁî¡£Ö´ÐÐʱ£¬ÃüÁîÖеÄÌØÊâ×Ö·û£¬Èç$£¬¡±£¬?µÈÓÖ½«¾ßÓÐÌØÊ⺬Ò壬²¢ÇÒ``Ëù°üº¬µÄ¿ÉÒÔÊÇÈκÎÒ»¸öºÏ·¨µÄShellÃüÁÈ磺

$ ls

note readme.txt Notice Unix.dir

$ TestString£½¡±`echo $HOME ` ` ls £ÛnN£Ý*`¡±

$ echo $TestString

/home/yxz note Notice

$

ÆäËûÇé¿ö£¬¶ÁÕß¿É×ÔÐÐÊÔÖ®¡£

1. ×¢ÊÍ·û

ÔÚshell±à³ÌÖо­³£Òª¶ÔijЩÕýÎÄÐнøÐÐ×¢ÊÍ£¬ÒÔÔö¼Ó³ÌÐòµÄ¿É¶ÁÐÔ¡£ÔÚShellÖÐÒÔ×Ö·û¡°#¡±¿ªÍ·µÄÕýÎÄÐбíʾעÊÍÐС£

´ËÍ⻹ÓÐÒ»Ð©ÌØÊâ×Ö·ûÈ磺ÓÃÓÚÊäÈë/Êä³öÖØ¶¨ÏòÓë¹ÜµÀµÄ<¡¢>¡¢<<¡¢>>ºÍ|£»Ö´Ðкǫ́ÃüÁîµÄ&£»ÃüÁîÖ´ÐвÙ×÷·û&&ºÍ||¼°±íʾÃüÁî×éµÄ{}½«ÔÚÏÂÃæ¸÷С½ÚÖмÓÒÔ½éÉÜ¡£
ÎÄÕÂÆÀÂÛ

¹²ÓÐ 1 ÌõÆÀÂÛ

  1. linux110.com ÓÚ 2006-05-19 09:09:27·¢±í:

    ½éÉܵò»´í