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

Linux/UNIXÖиĽøÏµÍ³ÃüÁîÐй¤¾ß

·¢²¼Ê±¼ä:2006-12-14 09:51:09À´Ô´:ºìÁª×÷Õß:userhq
¡¡¡¡Èç¹ûÄúºÜÈÝÒ×ʹ shell ÌáʾÐбäµÃÉ«²ÊѤÀÃÇÒ´øÓиü¶àÐÅÏ¢£¬ÎªÊ²Ã´»¹Òª¼á³ÖÓ÷³È˵ıê×¼ÌáʾÐÐÄØ£¿ÔÚÕâÆª¼¼ÇÉÖУ¬Daniel Robbins ½«ËµÃ÷ÈçºÎ»ñµÃ·ûºÏÄúµÄÒâÔ¸µÄ shell ÌáʾÐУ¬²¢»á˵Ã÷ÈçºÎ¶¯Ì¬¸üРxterm µÄ±êÌâÀ¸¡£

¡¡¡¡×÷Ϊ Linux/UNIX ÈË£¬ÎÒÃÇÓкܳ¤µÄʱ¼äÊÇÔÚ shell Öй¤×÷£¬²¢ÇÒÔÚÐí¶àÇé¿öÏ£¬ÏÂÃæÕâÒ»ÐоÍÊÇʼÖÕ¶¢×ÅÎÒÃǵÄÄǸöÌáʾÐУº

ÒýÓÃ:
bash-2.04$


¡¡¡¡Èç¹ûÄúÇ¡ÇÉÊdz¬¼¶Óû§ (root)£¬Äú¾ÍÓÐȨʹÓÃÏÂÃæÕâ¸öÃÀÀöµÄ±êʾ¡°Éí·Ý¡±µÄÌáʾÐа汾£º

ÒýÓÃ:
bash-2.04#


¡¡¡¡ÕâЩÌáʾÐв¢²»ÊÇÊ®·ÖƯÁÁ¡£ÕâÒ²¾ÍÄѹּ¸ÖÖ Linux °æ±¾¶ÔĬÈÏÌáʾÐнøÐÐÁËÉý¼¶£¬ÔÚÆäÖÐÔö¼ÓÁËÑÕÉ«ºÍ¸ü¶àµÄÐÅÏ¢¡£µ«ÊÇ£¬¼´±ãÄúÇ¡ºÃÓÐÒ»¸ö±¾Éí´øÓкܺõIJÊÉ«ÌáʾÐеÄÐÂʽ°æ±¾£¬ËüÒ²²»¿ÉÄÜÊÇÍêÃÀÎÞȱµÄ¡£Äú»òÐíÏ£ÍûÔÚÌáʾÐÐÖÐÔö¼Ó»ò¸ü¸Ä¼¸ÖÖÑÕÉ«£¬»òÕßÔö¼Ó£¨»òɾ³ý£©Ò»Ð©ÐÅÏ¢¡£´ÓÍ·¿ªÊ¼Éè¼ÆÊôÓÚÄú×Ô¼ºµÄ²ÊÉ«µÄ¡¢¾­¹ý×°ÊεÄÌáʾÐв¢²»ÄÑ¡£

¡¡¡¡ÌáʾÐлù´¡

¡¡¡¡ÔÚ bash Ï£¬¿ÉÒÔͨ¹ý¸ü¸Ä PS1 »·¾³±äÁ¿µÄÖµÀ´ÉèÖÃÌáʾÐУ¬ÈçÏÂËùʾ£º

ÒýÓÃ:
$ export PS1="> "
>


¡¡¡¡¸ü¸Ä»áÁ¢¼´ÉúЧ£¬Í¨¹ý½« "export" ¶¨Òå·ÅÔÚÄúµÄ ~/.bashrc ÎļþÖпɽ«ÕâÖÖ¸ü¸Ä¹Ì¶¨ÏÂÀ´¡£Ö»ÒªÄúÔ¸Ò⣬PS1 ¿ÉÒÔ°üº¬ÈÎÒâÊýÁ¿µÄ´¿Îı¾£º

ÒýÓÃ:
$ export PS1="This is my super prompt > "
This is my super prompt >


¡¡¡¡¾¡¹ÜÕâºÜÓÐȤ£¬µ«ÔÚÌáʾÐÐÖаüº¬´óÁ¿¾²Ì¬Îı¾²¢²»ÊÇÌØ±ðÓÐÓᣴó¶àÊý¶¨ÖƵÄÌáʾÐаüº¬ÖîÈçÓû§Ãû¡¢¹¤×÷Ŀ¼»òÖ÷»úÃûÖ®ÀàµÄÐÅÏ¢¡£ÕâЩ»¨ÐõÐÅÏ¢¿ÉÒÔ°ïÖúÄúÔÚ shell ÊÀ½çÖÐåÛÓΡ£ÀýÈ磬ÏÂÃæµÄÌáʾÐн«ÏÔʾÄúµÄÓû§ÃûºÍÖ÷»úÃû£º

ÒýÓÃ:
$ export PS1="\u@\H > "
drobbins@freebox >


¡¡¡¡Õâ¸öÌáʾÐжÔÓÚÄÇЩÒÔ¶à¸ö²»Í¬Ãû³ÆµÄÕÊ»§µÇ¼¶ą̀»úÆ÷µÄÈËÓÈΪÓÐÓã¬ÒòΪËü¿ÉÒÔÌáÐÑÄú£ºÄúĿǰÔÚÄĄ̈»úÆ÷ÉϲÙ×÷£¬ÓµÓÐʲôȨÏÞ¡£

¡¡¡¡ÔÚÉÏÃæµÄʾÀýÖУ¬ÎÒÃÇʹÓÃÁËרÓõÄÓ÷´Ð±¸ÜתÒåµÄ×Ö·ûÐòÁУ¬½å´Ë֪ͨ bash ½«Óû§ÃûºÍÖ÷»úÃû²åÈëÌáʾÐÐÖУ¬µ±ÕâЩתÒå×Ö·ûÐòÁгöÏÖÔÚ PS1 ±äÁ¿ÖÐʱ£¬bash ¾Í»áÓÃÌØ¶¨µÄÖµÌæ»»ËüÃÇ¡£ÎÒÃÇʹÓÃÁËÐòÁÐ "\u"£¨±íʾÓû§Ãû£©ºÍ "\H"£¨±íʾÖ÷»úÃûµÄµÚÒ»²¿·Ö£©¡£ÏÂÃæÊÇ bash ¿Éʶ±ðµÄÈ«²¿×¨ÓÃÐòÁеÄÍêÕûÁÐ±í£¨Äú¿ÉÒÔÔÚ bash man page µÄ "PROMPTING" ²¿·ÖÕÒµ½Õâ¸öÁÐ±í£©£º

ÐòÁР˵Ã÷
\a ASCII ÏìÁå×Ö·û£¨Ò²¿ÉÒÔ¼üÈë \007£©
\d "Wed Sep 06" ¸ñʽµÄÈÕÆÚ
\e ASCII תÒå×Ö·û£¨Ò²¿ÉÒÔ¼üÈë \033£©
\h Ö÷»úÃûµÄµÚÒ»²¿·Ö£¨Èç "mybox"£©
\H Ö÷»úµÄÈ«³Æ£¨Èç "mybox.mydomain.com"£©
\j ÔÚ´Ë shell ÖÐͨ¹ý°´ ^Z ¹ÒÆðµÄ½ø³ÌÊý
\l ´Ë shell µÄÖÕ¶ËÉ豸Ãû£¨Èç "ttyp4"£©
\n »»Ðзû
\r »Ø³µ·û
\s shell µÄÃû³Æ£¨Èç "bash"£©
\t 24 Ð¡Ê±ÖÆÊ±¼ä£¨Èç "23:01:01"£©
\T 12 Ð¡Ê±ÖÆÊ±¼ä£¨Èç "11:01:01"£©
\@ ´øÓÐ am/pm µÄ 12 Ð¡Ê±ÖÆÊ±¼ä
\u Óû§Ãû
\v bash µÄ°æ±¾£¨Èç 2.04£©
\V Bash °æ±¾£¨°üÀ¨²¹¶¡¼¶±ð£© ?/td>
\w µ±Ç°¹¤×÷Ŀ¼£¨Èç "/home/drobbins"£©
\W µ±Ç°¹¤×÷Ŀ¼µÄ¡°»ùÃû (basename)¡±£¨Èç "drobbins"£©
\! µ±Ç°ÃüÁîÔÚÀúÊ·»º³åÇøÖеÄλÖÃ
\# ÃüÁî±àºÅ£¨Ö»ÒªÄú¼üÈëÄÚÈÝ£¬Ëü¾Í»áÔÚÿ´ÎÌáʾʱÀÛ¼Ó£©
\$ Èç¹ûÄú²»Êdz¬¼¶Óû§ (root)£¬Ôò²åÈëÒ»¸ö "$"£»Èç¹ûÄúÊdz¬¼¶Óû§£¬ÔòÏÔʾһ¸ö "#"
\xxx ²åÈëÒ»¸öÓÃÈýλÊý xxx£¨ÓÃÁã´úÌæÎ´Ê¹ÓõÄÊý×Ö£¬Èç "\007"£©±íʾµÄ ASCII ×Ö·û
\\ ·´Ð±¸Ü
\[ Õâ¸öÐòÁÐÓ¦¸Ã³öÏÖÔÚ²»Òƶ¯¹â±êµÄ×Ö·ûÐòÁУ¨ÈçÑÕɫתÒåÐòÁУ©Ö®Ç°¡£Ëüʹ bash Äܹ»ÕýÈ·¼ÆËã×Ô¶¯»»ÐС£
\] Õâ¸öÐòÁÐÓ¦¸Ã³öÏÖÔÚ·Ç´òÓ¡×Ö·ûÐòÁÐÖ®ºó¡£

¡¡¡¡ÕâÑù£¬ÄúÒѾ­ÖªµÀÁË bash ÖÐÓ÷´Ð±¸ÜתÒåµÄÈ«²¿×¨ÓÃÐòÁС£ÇëÉÔ΢ÑÝÁ·Ò»ÏÂÕâЩÐòÁУ¬ÒÔ¶ÔËüÃǵŤ×÷·½Ê½»ñµÃһЩ¸ÐÐÔÈÏʶ¡£ÔÚÄú×öÁËһЩ²âÊÔÖ®ºó£¬ÏÂÃæ¿ªÊ¼Ìí¼ÓÑÕÉ«¡£
ÎÄÕÂÆÀÂÛ

¹²ÓÐ 3 ÌõÆÀÂÛ

  1. gwq1688 ÓÚ 2006-12-14 10:06:59·¢±í:

    ÎÒÏëÇë½ÌÒ»ÏÂ:¹ØÓÚRed Hat Linux9.0 ÀïÃæµÄ/usr/local/binÏÂΪʲôûÓпÉÖ´ÐÐÎļþ?

  2. userhq ÓÚ 2006-12-14 09:53:31·¢±í:

    ¡¡¡¡Xterm ÖеÄÀÖȤ

    ¡¡¡¡ÎÒÒÑ˵Ã÷ÁËÈçºÎÔÚÌáʾÐÐÖÐÌí¼ÓÐÅÏ¢ºÍÑÕÉ«£¬µ«Äú»¹¿ÉÒÔ¸ü½øÒ»²½¡£Äú¿ÉÒÔͨ¹ýÔÚÌáʾÐÐÖÐÌí¼ÓרÓôúÂëÀ´Ê¹ X ÖÕ¶Ë£¨Èç rxvt »ò aterm£©µÄ±êÌâÀ¸µÃµ½¶¯Ì¬¸üС£ÄúËùÒª×öµÄÖ»Êǽ«ÏÂÃæµÄÐòÁÐÌí¼Óµ½ÄúµÄ PS1 ÌáʾÐÐÖУº

    ÒýÓÃ:
    "\e]2;titlebar\a"


    ¡¡¡¡Ö»ÐëÓÃÄúÏ£ÍûÆä³öÏÖÔÚ xterm ±êÌâÀ¸ÖеÄÎÄ×ÖÌæ»»×Ó´® "titlebar" ¼´¿É£¬ÏÖÔÚÒѾ­Ò»ÇоÍÐ÷ÁË£¡²»±ØÊ¹Óþ²Ì¬ÎÄ×Ö£»Äú¿ÉÒÔ½« bash תÒåÐòÁвåÈë±êÌâÀ¸ÖС£Çë²é¿´ÏÂÃæÕâ¸öʾÀý£¬Ëü½«Óû§Ãû¡¢Ö÷»úÃûºÍµ±Ç°¹¤×÷Ŀ¼ÏÔʾÔÚ±êÌâÀ¸ÖУ¬²¢¶¨ÒåÁËÒ»¸ö¼ò¶Ì¡¢Ã÷ÁÁµÄÂÌÉ«ÌáʾÐУº

    ÒýÓÃ:
    export PS1="\[\e]2;\u@\H \w\a\e[32;1m\]>\[\e[0m\] "


    ¡¡¡¡Õâ¾ÍÊÇÎÒÔÚÉÏÃæµÄ×¥ÆÁ½á¹ûÖÐËùÓõÄÄǸöÌáʾÐС£ÎÒϲ»¶Õâ¸öÌáʾÐУ¬ÒòΪËü½«È«²¿ÐÅÏ¢ÏÔʾÔÚ±êÌâÀ¸ÉÏ£¬¶ø²»ÊÇÏÔʾÔÚÖÕ¶ËÉÏ£¬Öն˶ÔÒ»ÐпÉÒÔÏÔʾ¶àÉÙ×Ö·ûÓÐÏÞÖÆ¡£Ë³±ãÌáÒ»¾ä£¬È·±£Óà "\[" ºÍ "\]" ½«ÄúµÄ±êÌâÀ¸ÐòÁÐÀ¨ÆðÀ´£¨ÒòΪ¾ÍÖն˶øÑÔ£¬Õâ¸öÐòÁÐÊÇ·Ç´òÓ¡ÐòÁУ©¡£½«´óÁ¿ÐÅÏ¢·ÅÔÚ±êÌâÀ¸ÖеÄÎÊÌâÊÇ£¬Èç¹ûÄúʹÓ÷ÇͼÐÎÖÕ¶Ë£¨Èçϵͳ¿ØÖÆÌ¨£©£¬Ôò¿´²»µ½ÕâЩÐÅÏ¢¡£ÎªÁ˽â¾öÕâ¸öÎÊÌ⣬¿ÉÒÔÔÚÄúµÄ .bashrc ÖÐÌí¼ÓÒÔϼ¸ÐУº

    ÒýÓÃ:
    if [ "$TERM" = "linux" ]
    then
    #we're on the system console or maybe telnetting in
    export PS1="\[\e[32;1m\]\u@\H > \[\e[0m\]"
    else
    #we're not on the console, assume an xterm
    export PS1="\[\e]2;\u@\H \w\a\e[32;1m\]>\[\e[0m\] "
    fi


    ¡¡¡¡Õâ¸ö bash Ìõ¼þÓï¾ä½«¸ù¾Ýµ±Ç°µÄÖÕ¶ËÉèÖö¯Ì¬ÉèÖÃÌáʾÐС£ÎªÁË»ñµÃÒ»ÖÂÐÔ£¬ÄúÒ»¶¨Ï£ÍûÅäÖÃÄúµÄ ~/.bash_profile£¬ÒÔ±ãËüÔÚÆô¶¯Ê±ËÑË÷ (source) ÄúµÄ ~/.bashrc¡£È·±£ÄúµÄ ~/.bash_profile ÎļþÖÐÓÐÒÔÏÂÕâÑùÒ»ÐУº

    ÒýÓÃ:
    source ~/.bashrc


    ¡¡¡¡ÕâÑù£¬ÎÞÂÛÄú¿ªÆôÒ»¸öµÇ¼ shell »¹ÊÇÒ»¸ö·ÇµÇ¼ shell£¬¶¼»á»ñµÃͬÑùµÄÌáʾÐС£

    ¡¡¡¡ºÃÁË£¬ÄúÒÑÕÆÎÕÁËÌáʾÐÐħÊõ¡£ÏÖÔÚ¾¡ÇéÏíÊÜһϣ¬ÖÆ×÷Ò»¸öƯÁÁµÄ²ÊÉ«ÌáʾÐаɣ¡

  3. userhq ÓÚ 2006-12-14 09:52:32·¢±í:

    ¡¡¡¡²ÊÉ«»¯

    ¡¡¡¡Ìí¼ÓÑÕÉ«Ï൱ÈÝÒ×£»µÚÒ»²½ÊÇÉè¼Æ²»´øÑÕÉ«µÄÌáʾÐС£È»ºó£¬ÎÒÃÇËùÒª×öµÄÖ»ÊÇÌí¼ÓÖÕ¶Ë£¨¶ø²»ÊÇ bash£©¿Éʶ±ðµÄרÓÃתÒåÐòÁУ¬ÒÔʹËüÒÔ²ÊÉ«ÏÔʾÎı¾µÄijЩ²¿·Ö¡£±ê×¼ Linux ÖÕ¶ËºÍ X ÖÕ¶ËÔÊÐíÄúÉèÖÃǰ¾°£¨ÎÄ×Ö£©ÑÕÉ«ºÍ±³¾°ÑÕÉ«£¬Èç¹ûÐèÒª£¬»¹¿ÉÒÔÆôÓà "bold" ×Ö·û¡£ÓаËÖÖÑÕÉ«¿É¹©ÎÒÃÇÑ¡Ôñ¡£

    ¡¡¡¡ÑÕÉ«ÊÇͨ¹ýÔÚ PS1 ÖÐÌí¼ÓרÓÃÐòÁÐÀ´Ñ¡ÔñµÄ -- »ù±¾ÉÏÊǼÐÔÚ "\e["£¨×ªÒ忪·½À¨ºÅ£©ºÍ "m" Ö®¼äÊý×ÖÖµ¡£Èç¹ûÖ¸¶¨Ò»¸öÒÔÉϵÄÊý×Ö´úÂ룬ÔòÓ÷ֺŽ«ËüÃÇ·Ö¿ª¡£ÏÂÃæÊÇÒ»¸öÑÕÉ«´úÂëʾÀý£º

    ÒýÓÃ:
    "\e[0m"


    ¡¡¡¡Èç¹û½«Êý×Ö´úÂëÖ¸¶¨ÎªÁ㣬ÔòËü¾Í»á֪ͨÖն˽«Ç°¾°¡¢±³¾°ºÍ¼Ó´ÖÉèÖÃÖØÖÃΪËüÃǵÄĬÈÏÖµ¡£Äú¿ÉÄÜ»áÔÚÔÚÌáʾÐнáÊøÊ±Ê¹ÓÃÕâ¸ö´úÂ룬ÒÔʹÄú¼üÈëµÄÎÄ×Ö³ÉΪ·Ç²ÊÉ«µÄ¡£ÏÖÔÚ£¬ÈÃÎÒÃÇ¿´Ò»ÏÂÕâЩÑÕÉ«´úÂë¡£Çë×¢ÒâÏÂÃæµÄ×¥ÆÁ½á¹û£º

    ¡¡¡¡ÑÕÉ«±í

    ¡¡¡¡ÒªÊ¹ÓÃÕâ¸ö±í£¬Ê×ÏÈÇë²éÕÒÄúҪʹÓõÄÑÕÉ«£¬È»ºó²éÕÒ¶ÔÓ¦µÄǰ¾°±àºÅ (30-37) ºÍ±³¾°±àºÅ (40-47)¡£ÀýÈ磬Èç¹ûÄúϲ»¶ºÚµ×ÂÌ×Ö£¬Ôò¿É½«±àºÅ·Ö±ðÉèΪ 32 ºÍ 40¡£È»ºó´ò¿ªÄúµÄÌáʾÐж¨Òå²¢ÔÚÆäÖÐÌí¼ÓÊʵ±µÄÑÕÉ«´úÂë¡£ÏÂÃæµÄ¶¨Ò壺

    ÒýÓÃ:
    export PS1="\w> "


    ¡¡¡¡±äΪ£º

    ÒýÓÃ:
    export PS1="\e[32;40m\w> "


    ¡¡¡¡µ½ÏÖÔÚΪֹ£¬ÌáʾÐо¡¹ÜÒѾ­ºÜ²»´íÁË£¬µ«ÈÔ²»Ì«ÍêÃÀ¡£ÔÚ bash ÏÔʾ³ö¹¤×÷Ŀ¼ÒÔºó£¬ÎÒÃÇÐèҪʹÓà "\e[0m" ÐòÁн«ÑÕɫ֨ÐÂÉèÖÃΪÕý³£Öµ¡£

    ÒýÓÃ:
    export PS1="\e[32;40m\w> \e[0m"


    ¡¡¡¡Õâ¸ö¶¨Ò彫ÏÔʾһ¸öƯÁÁµÄÂÌÉ«ÌáʾÐУ¬µ«ÎÒÃÇÈÔÐèÒª×öһЩɨβ¹¤×÷¡£ÎÒÃDz»ÐèÒª°üÀ¨ "40" Õâ¸ö±³¾°ÑÕÉ«ÉèÖã¬ÒòΪËü½«±³¾°ÉèÖÃΪºÚÉ«£¬¶øºÚÉ«ÊÇĬÈÏÑÕÉ«¡£´ËÍ⣬ÂÌÉ«»¹ºÜ°µ£»ÎÒÃÇͨ¹ýÌí¼ÓÒ»¸ö "1" ÑÕÉ«´úÂëÀ´ÐÞÕýÕâ¸öÎÊÌ⣬Õ⽫ÆôÓøüÁÁµÄ¼Ó´ÖÎÄ×Ö¡£³ýÁËÕâ¸öÐÞ¸ÄÖ®Í⣬ÎÒÃÇ»¹ÐèÒª½«È«²¿·Ç´òÓ¡×Ö·ûÓÃרÓÃµÄ bash תÒåÐòÁÐ "\[" ºÍ "\]" À¨ÆðÀ´¡£ÕâÁ½¸öÐòÁÐ֪ͨ bash£¬±»À¨ÆðÀ´µÄ×Ö·û²»Õ¼ÓÃÐÐÉϵÄÈκοռ䣬ÕâÑù¾Íʹ×Ô¶¯»»ÐÐÄܹ»¼ÌÐøÕý³£¹¤×÷¡£Ã»ÓÐÕâÁ½¸öתÒåÐòÁУ¬¾¡¹ÜÄúÓÐÁËÒ»¸ö·Ç³£Æ¯ÁÁµÄÌáʾÐУ¬µ«ÊÇÈç¹ûÄú¼üÈëµÄÃüÁîÇ¡ºÃµ½´ïÖն˵Ä×îÓÒ¶Ë£¬¾Í»áÔì³ÉÏÔʾ»ìÂÒ¡£ÏÂÃæÊÇÎÒÃÇ×îÖÕµÄÌáʾÐУº

    ÒýÓÃ:
    export PS1="\[\e[32;1m\]\w> \[\e[0m\]"


    ¡¡¡¡±ðµ£ÐÄÔÚͬһ¸öÌáʾÐÐÖÐʹÓü¸ÖÖÑÕÉ«£¬¾ÍÏñÏÂÃæÕâÑù£º

    ÒýÓÃ:
    export PS1="\[\e[36;1m\]\u@\[\e[32;1m\]\H> \[\e[0m\]"