¶øÔÚÕâÆ¬ÓÉ´úÂëÓëÖ¸Áî¹¹½¨µÄÊý×Ö»¯´ó½ÉÏ£¬LinuxµÄתÒå»úÖÆ£¨Escape Mechanism£©Èçͬһ°Ñ¾«ÃܵÄÔ¿³×£¬½âËøÁËÃüÁîÐнçÃæµÄÎÞÏÞDZÄÜ£¬ÈÃÓû§ÔÚ×Ö·ûµÄº£ÑóÖÐ×ÔÓɺ½ÐУ¬Ì½Ë÷ϵͳÉî´¦µÄÃØÃÜ
±¾ÎĽ«ÉîÈë̽ÌÖLinuxתÒå»úÖÆµÄÔÀí¡¢Ó¦Óá¢ÒÔ¼°ËüÈçºÎ³ÉΪ¸ßЧ²Ù×÷Óë±à³Ì²»¿É»òȱµÄÒ»²¿·Ö
Ò»¡¢×ªÒå»úÖÆµÄÆðÔ´Óë»ù´¡ ÔÚ¼ÆËã»ú¿ÆÑ§ÖУ¬×ªÒ壨Escape£©ÊÇָͨ¹ýÌØ¶¨µÄ×Ö·ûÐòÁÐÀ´±íʾÄÇЩ±¾Éí¾ßÓÐÌØÊâÒâÒå»òÄÑÒÔÖ±½ÓÔÚÎı¾Öбí´ïµÄ×Ö·û
ÕâÒ»»úÖÆÆðÔ´ÓÚÔçÆÚµÄ¼ÆËã»ú±à³Ì»·¾³£¬ÌرðÊÇÄÇЩÒÀÀµÃüÁîÐнçÃæ£¨CLI£©½øÐн»»¥µÄϵͳ£¬ÈçUnix¼°ÆäÑÜÉúϵͳLinux
ÔÚÕâЩϵͳÖУ¬ÃüÁîÐÐÊÇÓû§Óëϵͳ¹µÍ¨µÄÖ÷ÒªÇÅÁº£¬¶øÃüÁîÐеÄÿ¸ö×Ö·û¶¼¿ÉÄܳÐÔØ×ÅÌØ¶¨µÄ²Ù×÷»ò²ÎÊý£¬Õâ¾ÍÐèÒªÔÚ±ØÒªÊ±Äܹ»¡°ÌÓÀ롱ÕâЩ×Ö·ûµÄÖ±½ÓÒâÒ壬ת¶ø±í´ïÆä×ÖÃæº¬Òå»òÌØÊ⹦ÄÜ
LinuxÖеÄתÒå×Ö·ûÊÇ·´Ð±¸Ü£¨£©£¬Ëü¾ÍÏñÒ»¸öÍòÄܵķÒë¹Ù£¬Äܹ»¸æËßϵͳ£º¡°½ÓÏÂÀ´µÄ×Ö·û²»ÊÇÃüÁîµÄÒ»²¿·Ö£¬¶øÊÇÓ¦¸Ã±»µ±×÷ÆÕͨÎı¾´¦Àí
¡±ÕâÖÖ»úÖÆÔÊÐíÓû§ÔÚÃüÁîÖÐǶÈë¿Õ¸ñ¡¢ÒýºÅ¡¢ÌØÊâ·ûºÅµÈ£¬¶ø²»»áÒý·¢Óï·¨´íÎó»òÃüÁîµÄÒâÍâÖ´ÐÐ
¶þ¡¢×ªÒå×Ö·ûµÄʵսӦÓà 1.´¦ÀíÌØÊâ×Ö·û ÔÚLinuxÃüÁîÐÐÖУ¬Ðí¶à×Ö·û¾ßÓÐÌØÊ⺬Ò壬Èç¿Õ¸ñ¡¢ÖƱí·û¡¢»»ÐзûµÈ£¬ËüÃÇÓÃÓÚ·Ö¸ôÃüÁîµÄ²»Í¬²¿·Ö
È»¶ø£¬ÔÚijЩÇé¿öÏ£¬Óû§¿ÉÄÜÐèÒªÔÚÃüÁîÖÐÖ±½ÓʹÓÃÕâÐ©ÌØÊâ×Ö·û£¬¶ø·ÇÆäÌØÊ⹦ÄÜ
ÀýÈ磬ҪÔÚÎļþÃûÖаüº¬¿Õ¸ñ£¬¾ÍÐèҪʹÓÃתÒå×Ö·û£º bash ls my file with spaces.txt ÔÚÕâÀ``ʹµÃ¿Õ¸ñ±»µ±×÷ÆÕͨ×Ö·û´¦Àí£¬¶ø²»ÊÇ×÷ΪÃüÁî·Ö¸ô·û
2.ÒýÓÃ×Ö·û´® ÔÚLinuxÖУ¬µ¥ÒýºÅ£¨£©ºÍË«ÒýºÅ£¨£©ÓÃÓÚ×Ö·û´®µÄÒýÓ㬵«ËüÃǵÄÐÐΪÓÐËù²»Í¬
µ¥ÒýºÅÄÚµÄËùÓÐ×Ö·û¶¼»á±»µ±×÷×ÖÃæÁ¿´¦Àí£¬¶øË«ÒýºÅÔòÔÊÐí¶Ô²¿·ÖÌØÊâ×Ö·û½øÐнâÊÍ£¨Èç±äÁ¿Ìæ»»ºÍÃüÁîÌæ»»£©
µ±ÐèÒªÔÚË«ÒýºÅÄÚʹÓÃÒýºÅ±¾Éíʱ£¬×ªÒå×Ö·û¾ÍÏÔµÃÓÈÎªÖØÒª£º bash echo He said, Hello, World! ÕâÀïµÄ``È·±£ÁËË«ÒýºÅ±»ÕýÈ·½âÎöΪ×Ö·û´®µÄÒ»²¿·Ö£¬¶ø²»ÊÇ×Ö·û´®µÄ½áÊø±êÖ¾
3.ÃüÁîÌæ»»Óë±äÁ¿À©Õ¹ ÃüÁîÌæ»»£¨Ê¹Ó÷´ÒýºÅ```command` ``»ò`$(command)`£©ºÍ±äÁ¿À©Õ¹£¨Èç`$VAR`£©ÊÇLinuxÃüÁîÐÐÇ¿´óµÄ¹¦ÄÜÖ®Ò»
µ«ÔÚijЩ¸´ÔÓ³¡¾°Ï£¬Èç¹û±äÁ¿Ãû»òÃüÁîÊä³öÖаüº¬ÌØÊâ×Ö·û£¬×ªÒå»úÖÆÍ¬Ñù²»¿É»òȱ£º bash VAR=Line1nLine2 echo -e $VAR ÕâÀ`n`±»ÓÃ×÷»»Ðзû£¬Í¨¹ý`echo -e`ʵÏÖ¶àÐÐÊä³ö
4.ÕýÔò±í´ïʽÓëÎı¾´¦Àí ÔÚLinuxµÄÎı¾´¦Àí¹¤¾ßÖУ¬Èç`grep`¡¢`sed`¡¢`awk`µÈ£¬ÕýÔò±í´ïʽÊǺËÐÄ
ÕýÔò±í´ïʽÖеÄÌØÊâ×Ö·û£¨Èç.¡¢¡¢^¡¢$µÈ£©ÓÃÓÚÆ¥Åäģʽ£¬µ«ÓÐʱÐèҪƥÅäÕâЩ×Ö·û±¾Éí£¬´ËʱתÒå×Ö·û¾ÍÅÉÉÏÁËÓ󡣺 bash grep a.b file.txt ÉÏÊöÃüÁî»á²éÕÒÎļþ`file.txt`Öаüº¬`a.b`£¨µã.ΪÆÕͨ×Ö·û£©µÄÐÐ
Èý¡¢ÉîÈëÀí½â£º×ªÒåÐòÁÐÓëANSIתÒåÂë ³ýÁË»ù±¾µÄתÒå×Ö·ûÍ⣬Linux»¹Ö§³ÖһϵÁÐתÒåÐòÁУ¬ÌرðÊÇANSIתÒåÂ루ANSI Escape Codes£©£¬ËüÃÇÓÃÓÚÔÚÃüÁîÐнçÃæÉÏʵÏÖÎı¾¸ñʽ»¯£¨ÈçÑÕÉ«¡¢¼Ó´Ö£©¡¢¹â±êÒÆ¶¯¡¢ÆÁÄ»Çå³ýµÈ²Ù×÷
ANSIתÒåÂëͨ³£ÒÔESC×Ö·û£¨ASCIIÂëΪ27£¬¿Éͨ¹ý`033`»ò`e`±íʾ£©¿ªÍ·£¬ºó¸úһϵÁпØÖÆ×Ö·û
ÀýÈ磬ÉèÖÃÎı¾ÑÕɫΪºìÉ«µÄANSIתÒåÂëΪ`033¡¾31m`£¬»Ö¸´Ä¬ÈÏÉèÖÃÔòΪ`033¡¾0m`
ÕâЩתÒå