·¢²¼ÐÂÈÕÖ¾

  • linux-mailÀûÓÃÍⲿÓÊÏäµØÖ··¢Óʼþ

    2016-09-01 16:12:23

    bin/mail»áĬÈÏʹÓñ¾µØsendmail·¢ËÍÓʼþ£¬ÕâÑùÒªÇ󱾵صĻúÆ÷±ØÐë°²×°ºÍÆô¶¯Sendmail·þÎñ£¬ÅäÖñȽÏÂé·³£¬¶øÇÒ»á´øÀ´²»±ØÒªµÄ×ÊÔ´Õ¼Óá£
    ¶øͨ¹ýÐÞ¸ÄÅäÖÃÎļþ¿ÉÒÔʹÓÃÍⲿSMTP·þÎñÆ÷£¬¿ÉÒÔ´ïµ½²»Ê¹ÓÃsendmail¶øÓÃÍⲿµÄsmtp·þÎñÆ÷·¢ËÍÓʼþµÄÄ¿µÄ£º

    ÐÞ¸Ä/etc/mail.rc
    Ôö¼ÓÏÂÃæµÄÅäÖã¨Çë¸ù¾Ýʵ¼ÊÌæ»»ÄÚÈÝ£©£º
    set from=fromUser@domain.com smtp=smtp.domain.comset smtp-auth-user=username smtp-auth-password=password smtp-auth=login

    ˵Ã÷£º
    fromÊÇ·¢Ë͵ÄÓʼþµØÖ·
    smtpÊÇ·¢ÉúµÄÍⲿsmtp·þÎñÆ÷µÄµØÖ·
    smtp-auth-userÊÇÍⲿsmtp·þÎñÆ÷ÈÏÖ¤µÄÓû§Ãû
    smtp-auth-passwordÊÇÍⲿsmtp·þÎñÆ÷ÈÏÖ¤µÄÓû§ÃÜÂë
    smtp-authÊÇÓʼþÈÏÖ¤µÄ·½Ê½

    ÅäÖóɹ¦ºó£¬¾Í¿ÉÒÔʹÓÃÁË
    ¿ÉÒÔ·¢ËÍÒ»·âÓʼþ²âÊÔһϣº
    mail -s "test" user@test.com <content.txt ÆäÖÐ-sºóÃæµÄÊÇÓʼþ±êÌ⣬user@sohu.comÊÇÊÕ¼þÈ˵ØÖ·£¬content.txtÀïÃæÊÇÓʼþÕýÎÄ

  • linux·þÎñÆ÷ʹÓÃtsocksÉèÖôúÀí

    2016-08-17 10:38:17


    Ò»¡¢tosocks½éÉÜ£º
    ¹ÙÍø£º
    http://tsocks.sourceforge.net

    tsocks¸ÅÊö£º
    SOCKS servers are a form. of proxy that are commonly used in firewalled LAN environments to allow access between networks, and often to the Internet. The problem is that most applications don't know how to gain access through SOCKS servers. This means that network based applications that don't understand SOCKS are very limited in networks they can reach. An example of this is simple 'telnet'. If you're on a network firewalled from the internet with a SOCKS server for outside access, telnet can't use this server and thus can't telnet out to the Internet.
    tsocks' role is to allow these non SOCKS aware applications (e.g telnet, ssh, ftp etc) to use SOCKS without any modification. It does this by intercepting the calls that applications make to establish network connections and negotating them through a SOCKS server as necessary.

    linuxÉÏ£¬Èç¹ûÖ»ÊÇ×öhttp»òftpµÄ´úÀí£¬¿ÉÒÔ¼òµ¥µÄÉèÖû·¾³±äÁ¿£ºhttp_proxy¡¢https_proxy¡¢ftp_proxy£»
    ÕâÀïʹÓÃtsocks£¬ÊÇΪÁ˽â¾össhͨ¹ý´úÀíÁ¬½ÓÔ¶³Ì·þÎñÆ÷

    ¶þ¡¢ÏÂÔØ°²×°
    ´Ó¹ÙÍøÏÂÔØ×îа汾£¬±¾ÎÄʹÓõÄÊÇ£ºtsocks-1.8beta5.tar.gz

    tar xzvf tsocks-1.8beta5.tar.gz
    cd tsocks-1.8
    ./configure
    make && make install

    È·ÈÏÊÇ·ñ´æÔÚ£º/usr/lib/libtsocks.soÎļþ£¬Èç¹ûûÓУ¬cp -af libtsocks.so.1.8 /usr/lib/libtsocks.so
    ×¢£ºtsocks-1.8°üÀïµÄlibtsocks.so£¬Ö»ÊÇlibtsocks.so.1.8µÄÈíÁ´½Ó£¬¸´ÖÆʵ¼ÊÎļþ¹ýÈ¥ÒÔÃⰲװĿ¼ɾ³ý£¬µ¼Ö²»¿ÉÓá£

    Èý¡¢ÅäÖÃtsocks
    tar.gz°üÖÐÓÐÁ½¸öÅäÖÃÎļþÄ£°å£º
    tsocks.conf.simple.example
    tsocks.conf.complex.example
    ¸´ÖÆÒ»¸öµ½/etc/tsocks.conf

    ÑùÀý£º
    # cat /etc/tsocks.conf             
    # This is the configuration for libtsocks (transparent socks)
    # Lines beginning with # and blank lines are ignored
    #
    # The basic idea is to specify:
    #       - Local subnets - Networks that can be accessed directly without
    #                         assistance from a socks server
    #       - Paths - Paths are basically lists of networks and a socks server
    #                 which can be used to reach these networks
    #       - Default server - A socks server which should be used to access
    #                          networks for which no path is available
    # Much more documentation than provided in these comments can be found in
    # the man pages, tsocks(8) and tsocks.conf(8)

    # Local networks
    # For this example this machine can directly access 192.168.0.0/255.255.255.0
    # (192.168.0.*) and 10.0.0.0/255.0.0.0 (10.*)

    local = 192.168.0.0/255.255.0.0
    local = 10.0.0.0/255.0.0.0
    local = 211.211.211.0/255.255.255.224

    # Default server
    # For connections that aren't to the local subnets or to 150.0.0.0/255.255.0.0
    # the server at 192.168.0.1 should be used (again, hostnames could be used
    # too, see note above)

    server = 211.211.211.211 #´úÀí·þÎñÆ÷IP
    # Server type defaults to 4 so we need to specify it as 5 for this one
    server_type = 5 #´úÀí·þÎñÆ÷ʹÓÃsocks5°æ±¾
    # The port defaults to 1080 but I've stated it here for clarity
    server_port = 1080 #´úÀí·þÎñÆ÷¶Ë¿Ú

    default_user = ´úÀíÕʺÅÓû§Ãû
    default_pass = ´úÀíÕʺÅÃÜÂë



    ÕâÀïÅäÖÃËùÓеĶ¼Ê¹ÓÃĬÈϵĴúÀí·þÎñÆ÷
    Ò²¿ÉÒÔʹÓÃpathÀ´Ö¸¶¨²¿·Ö×ßÆäËû´úÀí·þÎñÆ÷£¬¾ßÌå²Î¼û£ºtsocks.conf.complex.exampleÄ£°åÖеÄÅäÖü°ËµÃ÷£»
    Ä£°åÖУºlocal = 192.168.0.0/255.255.255.0 ×ÓÍøÑÚÂëÅäÖôíÎó£¬Ó¦ÐÞ¸ÄΪ255.255.0.0

    ËÄ¡¢Ê¹ÓÃtsocks
    Ô´Âë°²×°µÄtsocks£¬Ä¬ÈÏ·¾¶Îª£º/usr/bin/tsocks
    tsocks [application [applications arguments]]
    tsocks [on|off]

    ¾Ù¸öʵÀý°É£º
    tsocks firefox  #Ö®ºóÔÚfirefoxÉÏä¯ÀÀÍøÒ³¾Í»áĬÈÏʹÓÃtsocksÅäÖõĴúÀí


    source tsocks on #ÉèÖõ±Ç°shellµÄtsocks
    tsocks show    #²é¿´µ±Ç°ShellµÄtsocksÉèÖã¬LD_PRELOAD="/usr/lib/libtsocks.so"£»Èç¹ûLD_PRELOADΪ¿Õ£¬±íʾûÉèÖóɹ¦£»
    do_something   #ÕâÀï¾ÍÄÜĬÈÏʹÓÃtsocksµÄ´úÀíÈ¥do somethingÁË£¬Ç°ÃæÒѾ­ÉèÖÃÁË
    source tsocks off #¹Ø±Õµ±Ç°shellµÄtsocks´úÀíÉèÖÃ
    tsocks show    #Ôٴβ鿴£¬LD_PRELOAD="".

    ²é¿´/usr/bin/tsocksÎļþ£¬ÄÜ·¢ÏÖtsocks on Ö»ÊÇÉèÖÃLD_PRELOAD»·¾³±äÁ¿£¬tsocks offÖ»ÊÇÈ¥³ýLD_PRELOAD»·¾³±äÁ¿µÄÉèÖã»
    ËùÒÔÈç¹ûÏëÈÃËùÓÐÓû§¶¼¿ÉÒÔʹÓÃtsocksÅäÖã¬Ö±½ÓÔÚ/etc/profileÖÐÉèÖãºexport LD_PRELOAD="/usr/lib/libtsocks.so"
    ÔÙsource /etc/profile£¬ÈÃËùÓÐÓû§¶¼ÉúЧ£»


    Îå¡¢Óöµ½µÄÎÊÌâ¼°½â¾ö·½°¸
    10:26:43 libtsocks(31015): Need a password in tsocks.conf or $TSOCKS_PASSWORD to authenticate withssh: connect to host 151.151.151.151 port 22: Connection refused
    ʹÓõĴúÀí·þÎñÆ÷£¬ÐèÒªÕʺÅÃÜÂë½øÐÐÉí·ÝУÑ飬Ôö¼Ódefault_user¼°default_passÅäÖýâ¾ö£»

    10:30:45 libtsocks(31032): SOCKS server 211.211.211.211 (211.211.211.211) is not on a local subnet!
    ÉèÖõĴúÀíûÓÐÓë/etc/tsocks.confÎļþÖеÄlocalÉèÖõÄÍøÂçÔÚͬһ¸ö×ÓÍøÖС£ÅäÖãºlocal = 211.211.211.0/255.255.255.224½â¾ö£»

    ERROR: ld.so: object '/usr/lib/libtsocks.so' from LD_PRELOAD cannot be preloaded: ignored.
    .so¿âÎļþ²»´æÔÚ£¬´Ó°²×°°üÖи´ÖƹýÈ¥£ºcp -af libtsocks.so.1.8 /usr/lib/libtsocks.so



  • linux-awk & sedÖ®ÆæÊýÐÐÓëżÊýÐеĴòÓ¡-zt

    2016-06-16 14:48:33

    ת×Ô£ºhttp://blog.chinaunix.net/uid-10540984-id-316081.html

    ¶ÔÓÚÕâ¸öÎÊÌâ»òÐí´ó¼Ò¾õµÃ²»ÄÑ£¬È·ÊµÒ²²»ÊÇʲô̫ÄѵÄÎÊÌ⣬Ê×ÏÈÏëµ½µÄÊǶÔ2µÄÈ¡Ó࣬³ÏÈ»£¬ÔÚ±à³Ì˼ÏëÀïÕâÊÇÒ»¸ö¸ÅÄî¡£ÏÂÃæÎÒÃÇ¿´¿´¼¸¸öÀý×Ó¡£
     
    1. $ cat file
    2. 1
    3. 2
    4. 3
    5. 4
    6. 5
    7. 6
    8. $ awk 'NR%2' file
    9. 1
    10. 3
    11. 5
    12. $ awk '!(NR%2)' file
    13. 2
    14. 4
    15. 6

    [½âÎö]

      ÕâÓ¦¸ÃÊÇ×î±ê×¼µÄ´ð°¸£¬NRÊÇÐкţ¬awkµÄÄÚ½¨º¯Êý£¬µ±µÚÒ»ÐУ¬NR==1ʱ£¬¶Ô2È¡Ó࣬½á¹ûÊÇ1£¬ÔÚawkµÄÖ´ÐÐģʽÀÕâ¸ö1¾ÍÊÇpattern£¬ ΪÕ棬ִÐÐĬÈϵÄ{print}£¬Õâ¸öaction²Ù×÷¡£ÄÇô´òÓ¡³ö¸ÃÐУ¬µ½µÚ2ÐÐÔòÓàÊýÊÇ0£¬patternΪ0£¬ÔòΪ¼Ù£¬²»»áÖ´ÐÐĬÈ쵀 {print}£¬Ôò²»»áÊä³öżÊýÐС£¾Í´ïµ½ÁËÖ»Êä³öÆæÊýÐеÄЧ¹û£¬·´Ö®ÔòÊä³öżÊýÐÐÁË¡£ÎÒÃÇÔÙ¿´¿´Ò»¸ö¸üÐÂÓ±µÄ°ì·¨¡£

    1. $ awk '++i%2' file
    2. 1
    3. 3
    4. 5
    5. $ awk 'i++%2' file
    6. 2
    7. 4
    8. 6

    [½âÎö]

      ÕâÐÐÃüÁî³ä·ÖµÄÀûÓÃÁËCÓïÑÔÖÐ ++i Óë i++ µÄÇø±ð£¬i++ ÖÐiµÄÖµ×Ô¼ÓÒ»´ÎºóÕâ¸ö±í´ïʽµÄ½á¹ûµÈÓÚ1£¬µ«´ËʱiµÄÖµÈÔȻΪ0£¬ÎªÊ²Ã´ÄØ£¿iµÄÖµÔÚµ±Ç°±í´ïʽÖв»»á¸Ä±ä£¬++iÖÐiµÄÖµ×Ô¼ÓÒ»´Îºó£¬iµÄÖµÊÇ1£¬Ìý ÆðÀ´ºÜì¶Ü£¿È·Êµ±È½ÏÈÄ¿Ú£¬ÎÒÃÇÔÙµ÷ÓÃÒ»¸öC³ÌÐòÀ´ËµÃ÷Àý×Ó£º

    1. # include <stdio.h>
    2. int main(void)
    3. {
    4.     int i, j, a, b;
    5.     i = j = 0;
    6.     a = i++;
    7.     b = ++j;
    8.     printf ("a = %d , i = %d , b = %d , j = %d\n",a,i,b,j);
    9.     return 0;
    10. }
    11. /*
    12. ÔËÐнá¹û:
    13. a = 0 , i = 1 , b = 1 , j = 1
    14. */

    [½âÎö]

      ÔÚÕâ¸öCÓïÑÔ³ÌÐòÖв»ÄÑ¿´³ö£¬aµÄÖµÊÇ0£¬iµÄֵȴÊÇ1£¬i++ ÊÇ°Ñ×Ô¼ÓÇ°µÄÖµ¸³Óè**¬Ôò ++i ²»Ò»Ñù¡£Õâ¾Í¿ÉÒÔ½âÊÍΪʲô i++ Êä³öµÄÊÇżÊýÐÐÁË£¬µÚÒ»ÐÐʱ£¬ÒòΪ¶Ô2È¡ÓàµÄʱºò i++ ×Ô¼ÓÒ»´ÎºóµÄÖµÊÇ1£¬µ« i++ ÊÇ°ÑiµÄ×Ô¼ÓÇ°µÄֵȥ¶Ô2È¡ÓàµÄ£¬0¶Ô2È¡Óà½á¹ûΪ0£¬Ìõ¼þΪ¼Ù£¬µ½µÚ¶þÐеÄʱºòiµÄÖµ²ÅÊÇÉÏ´Î×Ô¼ÓºóµÄֵΪ1£¬¶Ô2È¡ÓàÊýΪ1£¬patternΪÕ棬Ôò Êä³öµÚ2ÐУ¬ÒÔ´ËÀàÍÆ¡£++i ÔòÊÇ×Ô¼ÓºóiµÄÖµÊÇ1£¬ËùÒÔÊä³öµÄÆæÊýÐС£++i ºÍ i++ ËûÃÇ×ԼӵĽá¹û¶¼ÊÇiΪ1£¬µ«ÊÇÔÚ¸³ÖµºÍ±È½ÏµÄʱºò£¬È´ÊÇÓÐÇø±ðµÄ¡£¿´µ½ÕâÀïÎÒÏë´ÏÃ÷µÄÄúÒѾ­Ã÷°×ÁËËüÃǵÄÇø±ð¡£ÎÒÃÇÔÙ¿´¿´µÚÈýÖз½·¨¡£

     

    1. $ awk 'i=!i' file
    2. 1
    3. 3
    4. 5
    5. $ awk '!(i=!i)' file
    6. 2
    7. 4
    8. 6

    [½âÎö]

      Õâ¾ä»¹ÐèÒªÎÒ½âÊÍÂ𣿸óÏÂÏë±ØÒѾ­Ã÷°×ÆäÖеİÂÃîÁË°É¡£^_^

     

    1. $ awk 'and(FNR,1)' file
    2. 1
    3. 3
    4. 5
    5. $ awk '!and(FNR,1)' file
    6. 2
    7. 4
    8. 6

    [½âÎö]

      awkÀïÃæÓÐÈý¸öbuilt-in function£¬·Ö±ðÊÇ£ºand(a, b)°´Î»Ó룬or(a, b)°´Î»»ò£¬xor(a, b)°´Î»Òì»ò£¬µ±FNRΪ1µÄʱºò£¬¾ÍÊǵÚÒ»ÐУ¬1µÄ2½øÖÆΪ0001£¬Óë0001°´Î»Ó룬µÃµ½½á¹ûÊÇ0001£¬0001µÄ½á¹ûΪÕ棬¾Í´òÓ¡¸ÄÐУ¬µ± FNRΪ2ʱ¶þ½øÖƱíʾΪ0010£¬ÄÇôÓÖÓë0001ÏàÓ룬½á¹ûΪ0000£¬Ìõ¼þΪ¼Ù£¬Ôò²»´òÓ¡¡£Ö»Óе±FNRΪÆæÊýʱ£¬¶þ½øÖƵÄβÊýΪ1£¬Óë0001Ïà Óë½á¹û²ÅΪÕ棬·ñÔò½á¹û¶¼Îª¼Ù¡£¼´Ö»Êä³öÆæÊýÐУ¬·ÇÔòÊä³öżÊýÐС£

     

    1. $ sed -n 'p;n' file
    2. 1
    3. 3
    4. 5
    5. $ sed -n 'n;p' file
    6. 2
    7. 4
    8. 6

    [½âÎö]

      sedÒ²²»ÄѽâÊÍ£¬ºÃºÃ¿´¿´ÊÖ²á°É¡£

     

    1. $ seq 6 | sed -n '1~2p'
    2. 1
    3. 3
    4. 5
    5. $ seq 6 | sed -n '0~2p'
    6. 2
    7. 4
    8. 6

    [½âÎö]

      FIRST~STEP
      This GNU extension matches every STEPth line starting with line FIRST.In particular, lines will be selected when there exists a non-negative N such that the current line-number equals FIRST + (N * STEP).  Thus, to select the odd-numbered lines, one would use`1~2'.



    1. seq 10 | sed '0~3a\=='

    2. seq 10 | awk 'ORS=NR%3?"\n":"\n==\n"

    [½âÎö]

    ÿ¸ôÈýÐоÍÔÚºóÃæÌí¼ÓÒ»¸ö·Ö¸î·û¡£

  • vim²é¿´Îļþ£¬¶àÁË<200b>×Ö·û£¬Ê¹ÓÃsed½øÐйýÂË

    2016-06-12 16:50:05

    vim²é¿´Îļþ£¬·¢ÏÖ¶àÁË<200b>×Ö·û£¬Ê¹ÓÃ/200bËÑË÷Æ¥Åä²»ÉÏ£»
    grep 200b ҲƥÅä²»ÉÏ

    ²éѯºó²ÅÖªµÀ£º
    200bÊÇ£ºUnicode Character 'ZERO WIDTH SPACE' (U+200B)
    ²Î¼û£º
    http://www.fileformat.info/info/unicode/char/200B/index.htm

    ´¦Àí·½·¨¼û£º
    http://superuser.com/questions/207207/how-can-i-delete-u200b-zero-width-space-using-sed

    sed 's/\xe2\x80\x8b//g' inputfile

    ÌØ×ö¸ö¼Ç¼£¡
  • ͨ¹ýtelnetÁ¬½Ó²é¿´memcache·þÎñÆ÷-zt

    2016-05-23 14:57:08


    memcache×÷Ϊһ¿îÓÅÐãµÄ½ø³ÌÍ⻺´æ£¬³£³£±»ÔËÓÃÓڸ߲¢·¢ÏµÍ³¼Ü¹¹ÖС£ÕâÀïÖ÷Ҫ̸̸Ôõôͨ¹ýtelnet¹¤¾ß£¬²é¿´memcacheÔËÐÐ×´¿ö²¢¶ÔÆäkey½øÐйÜÀíά»¤¡£

    1¡¢Æô¶¯memcache

    [root@localhost ~]# /usr/local/bin/memcached -u root -m 1024 -p 11211 -u postfix -l 127.0.0.1 -M -v -c 4096

    Æô¶¯²ÎÊýÏê½â

    -d£ºÒÔÊØ»¤½ø³Ì·½Ê½Æô¶¯¡£Èç¹û¸Ã²ÎÊýûÓÐÖ¸¶¨£¬µ±°´ctrl+cÃüÁî½áÊø£¬memcache×Ô¶¯¹Ø±Õ
    -m£º·ÖÅä¸ømemcacheʹÓõÄ×î´óÄÚ´æÊý µ¥Î»ÊÇm£¬Ä¬ÈÏÊÇ64m
    -u: Ö¸¶¨ÔËÐÐmemcacheµÄÓû§
    -l: Ö¸¶¨¼àÌýµÄipµØÖ·
    -p: Ö¸¶¨¼àÌýµÄtcp¶Ë¿ÚºÅ£¬¿ÉÒÔͨ¹ý-uÖ¸¶¨udp¶Ë¿Ú.ĬÈÏÊÇ11211
    -c: ×î´ó²¢·¢Á¬½ÓÊý
    -P: ±¨´í½ø³ÌidµÄÎļþ
    memcache Æô¶¯Ö®ºó£¬ÎÒÃǾͿÉÒÔͨ¹ýtelnetÁ¬½Ómemcache£¬¶ÔÆä½øÐмòµ¥²Ù×÷¹ÜÀí¡£

    2¡¢telnetÁ¬½Ómemcache

    [root@localhost ~]# telnet 192.168.119.70 11211
    Trying 192.168.119.70...
    Connected to 192.168.119.70 (192.168.119.70).
    Escape character is '^]'.

    Á¬½Ó³É¹¦Ö®ºó£¬¼´¿É¶Ômemcache½øÐвÙ×÷¹ÜÀíÁË£¬³£ÓõÄÃüÁîÓУº

    ¢ñ¡¢Ìí¼ÓÐÞ¸Ä

    ÃüÁî¸ñʽ£º<command> <key> <flags> <exptime> <bytes>\r\n<data block>\r\n

       <command>£ºadd£¬ set»ò replace
       <key> £º»º´æµÄÃû×Ö
       <flag>£º16λÎÞ·ûºÅÕûÊý£¬ºÍkeyÒª´æ´¢µÄÊý¾ÝÒ»Æð´æ´¢£¬²¢ÔÚ³ÌÐòget»º´æʱ£¬·µ»Ø¡£
       <exptime>£º¹ýȥʱ¼ä£¬0 ±íʾÓÀÔ¶²»¹ýÆÚ£¬Èç¹û·ÇÁ㣬±íʾunixʱ¼ä»ò¾à´ËÃëÊý
       <bytes>£º´æ´¢Êý¾ÝµÄ×Ö½ÚÊý
        \r\n£º ±íʾ»»Ðлسµ

        ÃüÁî½á¹û£º
                STORED £º±íʾ³É¹¦
                NOT_STORED £º ±íʾʧ°Ü

    a£©¡¢Ìí¼Ó»º´æ

    add id 1 0 4 
    1234 
    STORED

    Èç¹ûkeyÒѾ­´æÔÚ£¬Ôò»áÌí¼Óʧ°Ü¡£

    b£©¡¢Ð޸Ļº´æ

    replace id 1 0 4 
    3456 
    STORED 

    key´æÔÚʱ£¬³É¹¦£»²»´æÔÚʱ£¬Ê§°Ü¡£

    c£©¡¢ÉèÖûº´æ

    set id 1 0 4 
    2345 
    STORED

    key²»´æÔÚʱ£¬Ìí¼Ó¡¾add¡¿£»ÒÑ´æÔÚʱ£¬Ìæ»»¡¾replace¡¿¡£
    ×¢Ò⣺×Ö½ÚÊý±ØÐëºÍÄãÒª´æ´¢µÄÊý¾Ý±£³ÖÒ»Ö£¬²»È»»Ø±¨ CLIENT_ERROR bad data chunk ´íÎó

    ¢ò¡¢¶ÁÈ¡

       ÃüÁî¸ñʽ£ºget <key>+\r\n
       <key>+£º±íʾһ¸ö»ò¶à¸ökey£¬¶à¸ökeyʱ£¬Óÿոñ¸ô¿ª

    a£©¡¢¶ÁÈ¡µ¥¸ökeyµÄ»º´æ

    get id 
    VALUE id 1 4 
    1234 
    END 

    b£©¡¢¶ÁÈ¡¶à¸ökeyµÄ»º´æ

    get id name 
    VALUE id 1 4 
    3456 
    VALUE name 1 3 
    jim 
    END 

    ¢ó¡¢É¾³ý

    ÃüÁî¸ñʽ£ºdelete <key> \r\n
    <key>£ºÒªÉ¾³ýµÄkey
    ɾ³ýid

    delete id  
    DELETED

    ¢ô¡¢Çå¿ÕËùÓлº´æ

    ÃüÁî¸ñʽ£ºflush_all

    flush_all 
    OK

    ¢õ¡¢²é¿´»º´æ·þÎñÆ÷״̬

    ÃüÁstats

    stats 
    STAT pid 2711     //½ø³Ìid 
    STAT uptime 2453  //×ܵÄÔËÐÐʱ¼ä£¬µ¥Î»ÃèÊö 
    STAT time 1344856333  //µ±Ç°Ê±¼ä 
    STAT version 1.4.0 //°æ±¾ 
    STAT pointer_size 32    //·þÎñÆ÷Ö¸ÕëλÊý£¬Ò»°ã32λ²Ù×÷ϵͳÊÇ32 
    STAT rusage_user 0.002999  //½ø³ÌµÄÀÛ¼ÆÓû§Ê±¼ä  
    STAT rusage_system 1.277805  //½ø³ÌµÄÀÛ¼Æϵͳʼþ 
    STAT curr_connections 1  //µ±Ç°Á¬½ÓÊý 
    STAT total_connections 11  //·þÎñÆ÷Æô¶¯ºó,×ÜÁ¬½ÓÊý 
    STAT connection_structures 11  //Á¬½Ó½á¹¹µÄÊýÁ¿ 
    STAT cmd_get 17   //×Ü»ñÈ¡´ÎÊý 
    STAT cmd_set 1  //×ÜдÈë´ÎÊý 
    STAT cmd_flush 1   //×ܵĵÄÇå¿Õ´ÎÊý 
    STAT get_hits 1  //×ܵÄÃüÖдÎÊý 
    STAT get_misses 7   //»ñȡûÓÐÃüÖдÎÊý 
    STAT delete_misses //ɾ³ýûÓÐÃüÖдÎÊý 
    STAT delete_hits 4   //ɾ³ýÃüÖдÎÊý 
    STAT incr_misses //µÝÔö²Ù×÷ûÓÐÃüÖдÎÊý  
    STAT incr_hits //µÝÔö²Ù×÷ÃüÖдÎÊý 
    STAT decr_misses //µÝ¼õ²Ù×÷ûÓÐÃüÖеĴÎÊý 
    STAT decr_hits //µÝ¼õ²Ù×÷ÃüÖеĴÎÊý 
    STAT cas_misses //casÉèÖÃûÓÐÃüÖдÎÊý 
    STAT cas_hits //casÃüÖдÎÊý 
    STAT cas_badval //cas²Ù×÷ÕÒµ½key£¬µ«°æ±¾¹ýÆÚ£¬Ã»ÓÐÉèÖóɹ¦ 
    STAT bytes_read 455    //×ܹ²»ñÈ¡Êý¾ÝÁ¿ 
    STAT bytes_written 1175  //×ܹ²Ð´ÈëÊý¾ÝÁ¿ 
    STAT limit_maxbytes 1048576  //×î´óÔÊÐíʹÓÃÄڴ棬µ¥Î»×Ö½Ú 
    STAT accepting_conns 1     
    STAT listen_disabled_num 0 
    STAT threads 5   //µ±Ç°Ïß³ÌÊý 
    STAT conn_yields 0 
    STAT bytes 56      //ÒÑÓûº´æ¿Õ¼ä 
    STAT curr_items 1  //µ±Ç°»º´æµÄkeyvalueÊý 
    STAT total_items 7 //×ܹ²»º´æµÄkeyvalueÊý£¬°üÀ¨¹ýÆÚɾ³ýµÄ 
    STAT evictions //ͨ¹ýɾ³ýkeyvalue£¬ÊÍ·ÅÄÚ´æ´ÎÊý 
    END 

    ¢ö¡¢´òÓ¡°æ±¾

    ÃüÁversion

    version 
    VERSION 1.4.0 

    ¢÷¡¢´òÓ¡ÄÚ´æÐÅÏ¢

    ÃüÁstats slabs

    stats slabs 
    STAT 1:chunk_size 80 
    STAT 1:chunks_per_page 13107 
    STAT 1:total_pages 1 
    STAT 1:total_chunks 13107 
    STAT 1:used_chunks 1 
    STAT 1:free_chunks 1 
    STAT 1:free_chunks_end 13105 
    STAT 1:get_hits 10 
    STAT 1:cmd_set 10 
    STAT 1:delete_hits 4 
    STAT 1:incr_hits 0 
    STAT 1:decr_hits 0 
    STAT 1:cas_hits 0 
    STAT 1:cas_badval 0 
    STAT active_slabs 1 
    STAT total_malloced 1048560 
    END

    3¡¢Í˳ötelnet
    quit


  • linux ʹÓÃFIO²âÊÔ´ÅÅÌiops

    2016-05-20 18:16:32

    ¾ßÌåÄÚÈݲμû£º
    http://blog.itpub.net/26855487/viewspace-754346/

    ǧÍò×¢Ò⣺
    ÑùÀýÖеģº-filename=/dev/sdb1
    filename=/dev/sdb1 ²âÊÔÎļþÃû³Æ£¬Í¨³£Ñ¡ÔñÐèÒª²âÊÔµÄÅÌϵÄdataÎļþ¡£

    д²âÊÔʱ£¬Ê¹ÓÃ/dev/sdb1£¬±íʾֱ½ÓÍùÂãÉ豸ÉÏдÊý¾Ý£¬ÈÝÒ×Ôì³ÉÉ豸Ë𻵣¬IO³ö´í£¡£¡£¡Öظñ²ÅÄָܻ´£¡£¡£¡

    Ò»¶¨ÒªÑ¡Ôñ²âÊÔµÄÅ̵ÄdataÎļþ£¬È磺/mail/data£¡£¡£¡
  • linux-ʹÓÃpartedÀ´½øÐзÖÇø

    2016-05-18 14:07:35

    ͨ³£ÎÒÃÇÓõıȽ϶àµÄÒ»°ã¶¼ÊÇfdisk¹¤¾ßÀ´½øÐзÖÇø£¬µ«ÊÇÏÖÔÚÓÉÓÚ´ÅÅÌÔ½À´Ô½Á®¼Û£¬¶øÇÒ´ÅÅÌ¿Õ¼äÔ½À´Ô½´ó£»

    ¶øfdisk¹¤¾ßËû¶Ô·ÖÇøÊÇÓдóСÏÞÖƵģ¬ËüÖ»ÄÜ»®·ÖСÓÚ2TµÄ´ÅÅÌ¡£

    µ«ÊÇÏÖÔڵĴÅÅÌ¿Õ¼äºÜ¶à¶¼ÒѾ­ÊÇÔ¶Ô¶´óÓÚ2TÁË£¬ÈçÎÒÃǽñÌìÀý×ÓÖеÄ4.7T£¬ÄÇÒªÔõô°ìÄÜ£¬ÓÐÁ½¸ö·½·¨£¬ÆäÒ»ÊÇͨ¹ý¾í¹ÜÀíÀ´ÊµÏÖ£¬Æä¶þ¾ÍÊÇͨ¹ýÎÒÃǽñÌì̸µ½µÄParted¹¤¾ßÀ´ÊµÏÖ¶ÔGPT´ÅÅ̽øÐзÖÇø²Ù×÷¡£


    fdiskÏÔʾÀý×Ó£º

    # fdisk -l


    WARNING: GPT (GUID Partition Table) detected on '/dev/sdb'! The util fdisk doesn't support GPT. Use GNU Parted.


    Disk /dev/sdb: 4798.6 GB, 4798552211456 bytes

    255 heads, 63 sectors/track, 583390 cylinders

    Units = cylinders of 16065 * 512 = 8225280 bytes

    Sector size (logical/physical): 512 bytes / 512 bytes

    I/O size (minimum/optimal): 512 bytes / 512 bytes

    Disk identifier: 0x00000000


       Device Boot      Start         End      Blocks   Id  System

    /dev/sdb1               1      267350  2147483647+  ee  GPT



    # parted  /dev/sdb

    GNU Parted 2.1

    Using /dev/sdb

    Welcome to GNU Parted! Type 'help' to view a list of commands.

    (parted) mklabel gpt

    ½«MBR´ÅÅ̸ñʽ»¯ÎªGPT


    (parted) mkpart primary 0 100

    »®·ÖÒ»¸öÆðʼλÖÃΪ0£¬´óСΪ100MµÄÖ÷·ÖÇø


    (parted) mkpart primary 100 200

    »®·ÖÒ»¸öÆðʼλÖÃΪ100M£¬´óСΪ100MµÄÖ÷·ÖÇø


    (parted) mkpart primary 0 -1

    »®·ÖËùÓпռ䵽һ¸ö·ÖÇø


    (parted)  print

    ´òÓ¡µ±Ç°·ÖÇø


    (parted)  quit


    ¿ÉÄÜ»¹»áÓõ½µÄһЩÃüÁî


    (parted) mklable msdos

    Èç¹ûÒª·´¹ýÀ´.½«GPT´ÅÅÌת»¯ÎªMBR´ÅÅÌ


    ÔÚÕâÑù·ÖÍê·ÖÇøºó,»¹ÒªÊ¹ÓÃmkfs.ext4À´½øÐиñʽ»¯£º

    # mkfs.ext4 -F /dev/sdb1


    ¸ñʽ»¯ºó¿ÉÒÔÖ±½Ó¹ÒÔØʹÓãº

    mount -t ext4 /dev/sdb1 /mail


    µ±È»Ò²¿ÉÒÔÔö¼Óµ½/etc/fstabÖÐ


    ÃüÁîÐеÄģʽ£º

    ½«Ó²ÅÌת»¯ÎªGPT´ÅÅ̺ó£¬Ö´ÐÐÏÂÁÐÃüÁî

    parted /dev/sdb mkpart primary 0 100 ##»®·ÖÒ»¸öÆðʼλÖÃΪ0´óСΪ100MµÄÖ÷·ÖÇø

  • Apache·ÀDDOSÄ£¿émod_evasive

    2016-04-01 14:16:41



    Ò»¡¢mod_evasive ½éÉÜ
    mod_evasive ÊÇApache£¨httpd)·þÎñÆ÷µÄ·ÀDDOSµÄÒ»¸öÄ£¿é¡£¶ÔÓÚWEB·þÎñÆ÷À´Ëµ£¬ÊÇÄ¿Ç°±È½ÏºÃµÄÒ»¸ö·À»¤DDOS¹¥»÷µÄÀ©Õ¹Ä£¿é¡£ËäÈ»²¢²»ÄÜÍêÈ«·ÀÓùDDOS¹¥»÷£¬µ«ÔÚÒ»¶¨Ìõ¼þÏ£¬»¹ÊÇÆðµ½»º·þApache£¨httpd)·þÎñÆ÷µÄѹÁ¦¡£ÈçÅäºÏiptables¡¢Ó²¼þ·À»ðǽµÈ·À»ðǽÉ豸ÅäºÏʹÓ㬿ÉÄÜÓиüºÃµÄЧ¹û¡£
    mod_evasive µÄ¹Ù·½µØÖ·£º http://www.zdziarski.com/

    ¶þ¡¢mod_evasive ¹¤×÷Ô­Àí
    ApacheÄ£¿émod_evasiveÀûÓÃHash±í´¢´æÏàÓ¦µÄHTTPÇëÇó£¬ÀûÓÃÉ趨¹æÔòÅжÏÊÇ·ñ¾Ü¾ø¶Ô·½µÄÇëÇó¡£


    Èý¡¢ÅäÖÃmod_evasive

    apacheÅäÖÃÎļþ£º/etc/httpd/conf/httpd.confÖÐ
    Ôö¼ÓÈçÏÂÄÚÈÝ£º

    LoadModule evasive20_module   modules/mod_evasive20.so

        <IfModule mod_evasive20.c>
            DOSHashTableSize    3097      //¼Ç¼ºÍ´æ·ÅºÚÃûµ¥µÄ¹þÎ÷±í´óС£¬Èç¹û·þÎñÆ÷·ÃÎÊÁ¿ºÜ´ó£¬¿ÉÒÔ¼Ó´ó¸ÃÖµ
            DOSPageCount        2         //ͬһ¸öÒ³ÃæÔÚͬһʱ¼äÄÚ¿ÉÒÔ±»Í³Ò»¸öÓû§·ÃÎʵĴÎÊý£¬³¬¹ý¸ÃÊý×־ͻᱻÁÐΪ¹¥»÷£¬Í¬Ò»Ê±¼äµÄÊýÖµ¿ÉÒÔÔÚDosPageInterval²ÎÊýÖÐÉèÖá£
            DOSSiteCount        50         //ͬһ¸öÓû§ÔÚͬһ¸öÍøÕ¾ÄÚ¿ÉÒÔͬʱ´ò¿ªµÄ·ÃÎÊÊý£¬Í¬Ò»¸öʱ¼äµÄÊýÖµÔÚDOSSiteIntervalÖÐÉèÖá£
            DOSPageInterval     1          //ÉèÖÃDOSPageCountÖÐʱ¼ä³¤¶È±ê×¼£¬Ä¬ÈÏֵΪ1¡£
            DOSSiteInterval     1         //ÉèÖÃDOSSiteCountÖÐʱ¼ä³¤¶È±ê×¼, ĬÈÏֵΪ1¡£
            DOSBlockingPeriod   10        //±»·âʱ¼ä¼ä¸ôÃ룬ÕâÖмä»áÊÕµ½ 403 (Forbidden) µÄ·µ»Ø¡£
            DOSEmailNotify         "test1@test.cn,test2@test.cn"      //·¢ËÍÓʼþ֪ͨµÄ
            DOSSystemCommand       "sudo /sbin/iptables -I INPUT -s %s -p tcp --dport 80 -j DROP"    //Ö´ÐÐϵͳÃüÁîÔö¼Ó·À»ðǽ¹æÔò
            DOSLogDir  "/var/log/"         //ÈÕÖ¾´æ´¢Ä¿Â¼
        </IfModule>

    ËÄ¡¢²âÊÔmod_evasive    
    ¿ÉÒÔÓÃApache ×Ô´øµÄab¹¤¾ß

    /usr/local/apache/bin/ab -n 100 -c 5 http://192.168.146.103/test.php


    httpdµÄ·ÃÎÊÈÕÖ¾access_logÀ¿ÉÒÔ¿´µ½Ô­À´ÊÇ200ÏìÓ¦£¬ºóÃæ±ä³É403ÏìÓ¦
    DOSLogDir  "/var/log/" ÈÕÖ¾´æ´¢Ä¿Â¼Ï»áÉú³É£ºdos-ipµÄÈÕÖ¾Îļþ

    ×¢£ºabÖ´Ðкó£¬Ò²»áÓÐͳ¼Æ½á¹û£¬µ«·¢ÏÖÀïÃæµÄFailed requestsÏÔʾÊýÁ¿»áºÍaccess_logÖеĶԲ»ÉÏ£»
    Complete requests:      100
    Failed requests:        0
    ËùÒÔ²âÊÔʱ£¬»¹ÊÇÒª¿´ÏÂaccess_log¡£



    Îå¡¢ÅäÖòÎÊýÏê½â
    DOSHashTableSize 3097£º¶¨Òå¹þÏ£±í´óС¡£  
    DOSSiteCount 50£ºÔÊÐí¿Í»§»úµÄ×î´ó²¢·¢Á¬½Ó¡£  
    DOSPageCount 2£ºÔÊÐí¿Í»§»ú·ÃÎÊͬһҳµÄ¼ä¸ô¡£  
    DOSPageInterval 1£ºÍøÒ³·ÃÎʼÆÊýÆ÷¼ä¸ô¡£  
    DOSSiteInterval 1£ºÈ«Õ¾·ÃÎʼÆÊýÆ÷¼ä¸ô¡£  
    DOSSiteInterval 60£º¼ÓÈëºÚÃûµ¥ºó¾Ü¾ø·ÃÎÊʱ¼ä¡£  
    DOSEmailNotify xxxx@gmail.com£ºÓÐIP¼ÓÈëºÚÃûµ¥ºó֪ͨ¹ÜÀíÔ±¡£  
    DOSSystemCommand "sudo /sbin/iptables -I INPUT -s %s -p tcp --dport 80 -j DROP"£ºIP¼ÓÈëºÚÃûµ¥ºóÖ´ÐеÄϵͳÃüÁî¡£  
    DOSLogDir "/tmp"£ºËø¶¨»úÖÆÁÙʱĿ¼£¬ÈÕ־Ŀ¼¡£  
    DOSWhiteList 127.0.0.1£º·À·¶°×Ãûµ¥£¬²»×èÖ¹°×Ãûµ¥IP¡£
        
     
  • linux-centos6.6 64λ·þÎñÆ÷ÐÞ¸ÄMACµØÖ·

    2016-02-15 16:43:08

    centos6.6 64λ·þÎñÆ÷ÐÞ¸ÄMACµØÖ·

    /etc/sysconfig/network-scripts/ifcfg-eth0
    HWADDR=00:24:E8:63:7A:05
    ÐÞ¸ÄΪ£º
    HWADDR=00:24:E8:63:7A:08

    ÕâÀïÖØÆôÍøÂ磬»áÓÐÈçÏÂÌáʾ£¬Êµ¼ÊÐÞ¸Äδ³É¹¦£º
    [root@ns1 ~]# /etc/init.d/network restart
    Shutting down interface eth0:  Device eth0 has MAC address 00:24:E8:63:7A:05, instead of configured address 00:24:E8:63:7A:08. Ignoring.
                                                               [FAILED]
    Shutting down loopback interface:                          [  OK  ]
    Bringing up loopback interface:                            [  OK  ]
    Bringing up interface eth0:  Device eth0 has different MAC address than expected, ignoring.


    ½â¾ö·½·¨£º
    HWADDR=00:24:E8:63:7A:05
    ÐÞ¸ÄΪ£º
    MACADDR=00:24:E8:63:7A:08


    Ô­Òò£º
    HWADDRºÍMACADDRµÄ²»Í¬Ö®´¦£¬Ç°ÕßÊÇÓÃÀ´¸ù¾ÝHWADDR°ó¶¨ethXÃû³ÆµÄ£¬ºóÕß²ÅÊÇÕæÕýÓÃÀ´ÐÞ¸ÄMACµØÖ·µÄ

    ×¢£º32λ·þÎñÆ÷£¬
    /etc/sysconfig/network-scripts/ifcfg-eth0 ÖÐÒѾ­ÊÇ MACADDR£¬Ð޸ĶÔÓ¦ÖµºóÖØÆôÍøÂç¼´¿É¡£
  • linux-¹ÒÔØUÅÌ-ntfs¸ñʽ

    2015-11-06 09:08:21

    ²Ù×÷ϵͳ£ºCentOS6.6-64λ
    linuxϹÒÔØntfs¸ñʽ·ÖÇøʱ£¬»áÌáʾ£º
    #  mount -t ntfs /dev/sdd1 /mnt/ntfs
    mount: unknown filesystem type 'ntfs'

    ÕâʱÐèÒª°²×°ntfs-3g£¬ÒÔʶ±ðntfs¸ñʽ
    µ«yum¹Ù·½Ô´Ã»ÓÐntfs-3g°üÏÂÔØ£¬ËùÒÔÐÞ¸ÄyumԴΪepel-release£¬ÔÙ½øÐÐÏÂÔØ£º

    yum install -y epel-release

    yum install -y ntfs-3g

    ÕâʱÔÙ½øÐÐntfs¸ñʽ¹ÒÔØ£º

    mount -t ntfs /dev/sdd1 /mnt/ntfs

    ³É¹¦£¡£¡



  • linux-VMÐéÄâ»úLinux¿Ë¡ºóÍø¿¨µÄÏà¹Ø²Ù×÷-zt

    2015-10-08 19:37:07

    ת×Ô£ºhttp://jingyan.baidu.com/article/b7001fe1686b810e7282ddc4.html

    VmwareÐéÄâ»úÔÚ½øÐпË¡²Ù×÷ºó£¬»á·¢ÏÖ¿Ë¡ºóµÄÖ÷»úÔ­eth0½«»á²»¼û£¬È¡¶ø´úÖ®»áÓÐÒ»¸öÐÂMACµÄÍø¿¨eth1¡£±¾ÎĽâ¾öÈçºÎºÏÀíµÄ½«Íø¿¨¸ÄΪeth0¡£

    ¹¤¾ß/Ô­ÁÏ

    • ifconfig
    • nmcli
    • vim

    ·½·¨/²½Öè

    1. 1

      ifconfig eth1   È·¶¨ÐÂÍø¿¨µÄMACµØÖ·¡£

      nmcli con È·¶¨ÐÂÍø¿¨µÄUUID

    2. 2

      vim /etc/udev/rules.d/70-persistent-net.rules

      °ÑÔ­eth0µÄÏà¹ØÐÅϢɾ³ý£¬½«eth1µÄname¸ÄΪeth0

    3. 3

      cd /etc/sysconfig/network-scripts

      vim ifcfg-eth0 

      HWADDR=ÏÖÔÚµÄʵ¼ÊMAC

      UUID=ÏÖÔÚµÄʵ¼ÊUUID

    4. 4

      ÉÏÊö´¦Àí²Ù×÷Íêºó£¬ÖØÆôÐéÄâ»ú£¡

      END

    ×¢ÒâÊÂÏî

    • UUIDºÍʵ¼ÊµÄMACÒ»¶¨ÒªÅª¶Ô£¬·ñÔòÖØÆô»¹ÊÇ»áÓÐÆäËûÎÊÌâµÄ¡£

    ################################################

    ÔÚcentos6.6-64λ²Ù×÷ϵͳÏ£¬ÊµÑé½á¹û£º

    /etc/sysconfig/network-scripts/ifcfg-eth0

    Ð޸ģºHWADDR=ÏÖÔÚµÄʵ¼ÊMAC£¬²»ÐÞ¸ÄUUID£¬rebootÖØÆôºó£¬UUID»á×Ô¶¯¸üÐÂΪ×îеġ£


  • SNMP¼à¿ØһЩ³£ÓÃOIDµÄ×ܽá-zt

    2015-07-24 17:23:13

    ת×Ô£ºhttp://www.cnblogs.com/aspx-net/p/3554044.html

    ϵͳ²ÎÊý£¨1.3.6.1.2.1.1£©

    OID

    ÃèÊö

    ±¸×¢

    ÇëÇó·½Ê½

    .1.3.6.1.2.1.1.1.0

    »ñȡϵͳ»ù±¾ÐÅÏ¢

    SysDesc

    GET

    .1.3.6.1.2.1.1.3.0

    ¼à¿Øʱ¼ä

    sysUptime

    GET

    .1.3.6.1.2.1.1.4.0

    ϵͳÁªÏµÈË

    sysContact

    GET

    .1.3.6.1.2.1.1.5.0

    »ñÈ¡»úÆ÷Ãû

    SysName

    GET

    .1.3.6.1.2.1.1.6.0

    »úÆ÷×øÔÚλÖÃ

    SysLocation

    GET

    .1.3.6.1.2.1.1.7.0

    »úÆ÷ÌṩµÄ·þÎñ

    SysService

    GET

    .1.3.6.1.2.1.25.4.2.1.2

    ϵͳÔËÐеĽø³ÌÁбí

    hrSWRunName

    WALK

    .1.3.6.1.2.1.25.6.3.1.2

    ϵͳ°²×°µÄÈí¼þÁбí

    hrSWInstalledName

    WALK

     

    ÍøÂç½Ó¿Ú£¨1.3.6.1.2.1.2£©

    OID

    ÃèÊö

    ±¸×¢

    ÇëÇó·½Ê½

    .1.3.6.1.2.1.2.1.0

    ÍøÂç½Ó¿ÚµÄÊýÄ¿

    IfNumber

    GET

    .1.3.6.1.2.1.2.2.1.2

    ÍøÂç½Ó¿ÚÐÅÏ¢ÃèÊö

    IfDescr

    WALK

    .1.3.6.1.2.1.2.2.1.3

    ÍøÂç½Ó¿ÚÀàÐÍ

    IfType

    WALK

    .1.3.6.1.2.1.2.2.1.4

    ½Ó¿Ú·¢ËͺͽÓÊÕµÄ×î´óIPÊý¾Ý±¨[BYTE]

    IfMTU

    WALK

    .1.3.6.1.2.1.2.2.1.5

    ½Ó¿Úµ±Ç°´ø¿í[bps]

    IfSpeed

    WALK

    .1.3.6.1.2.1.2.2.1.6

    ½Ó¿ÚµÄÎïÀíµØÖ·

    IfPhysAddress

    WALK

    .1.3.6.1.2.1.2.2.1.8

    ½Ó¿Úµ±Ç°²Ù×÷״̬[up|down]

    IfOperStatus

    WALK

    .1.3.6.1.2.1.2.2.1.10

    ½Ó¿ÚÊÕµ½µÄ×Ö½ÚÊý

    IfInOctet

    WALK

    .1.3.6.1.2.1.2.2.1.16

    ½Ó¿Ú·¢Ë͵Ä×Ö½ÚÊý

    IfOutOctet

    WALK

    .1.3.6.1.2.1.2.2.1.11

    ½Ó¿ÚÊÕµ½µÄÊý¾Ý°ü¸öÊý

    IfInUcastPkts

    WALK

    .1.3.6.1.2.1.2.2.1.17

    ½Ó¿Ú·¢Ë͵ÄÊý¾Ý°ü¸öÊý

    IfOutUcastPkts

    WALK

     

    CPU¼°¸ºÔØ

    OID

    ÃèÊö

    ±¸×¢

    ÇëÇó·½Ê½

    . 1.3.6.1.4.1.2021.11.9.0

    Óû§CPU°Ù·Ö±È

    ssCpuUser

    GET

    . 1.3.6.1.4.1.2021.11.10.0

    ϵͳCPU°Ù·Ö±È

    ssCpuSystem

    GET

    . 1.3.6.1.4.1.2021.11.11.0

    ¿ÕÏÐCPU°Ù·Ö±È

    ssCpuIdle

    GET

    . 1.3.6.1.4.1.2021.11.50.0

    ԭʼÓû§CPUʹÓÃʱ¼ä

    ssCpuRawUser

    GET

    .1.3.6.1.4.1.2021.11.51.0

    ԭʼniceÕ¼ÓÃʱ¼ä

    ssCpuRawNice

    GET

    . 1.3.6.1.4.1.2021.11.52.0

    ԭʼϵͳCPUʹÓÃʱ¼ä

    ssCpuRawSystem.

    GET

    . 1.3.6.1.4.1.2021.11.53.0

    ԭʼCPU¿ÕÏÐʱ¼ä

    ssCpuRawIdle

    GET

    . 1.3.6.1.2.1.25.3.3.1.2

    CPUµÄµ±Ç°¸ºÔØ£¬N¸öºË¾ÍÓÐN¸ö¸ºÔØ

    hrProcessorLoad

    WALK

    . 1.3.6.1.4.1.2021.11.3.0

    ssSwapIn

    GET

     

    . 1.3.6.1.4.1.2021.11.4.0

    SsSwapOut

    GET

     

    . 1.3.6.1.4.1.2021.11.5.0

    ssIOSent

    GET

     

    . 1.3.6.1.4.1.2021.11.6.0

    ssIOReceive

    GET

     

    . 1.3.6.1.4.1.2021.11.7.0

    ssSysInterrupts

    GET

     

    . 1.3.6.1.4.1.2021.11.8.0

    ssSysContext

    GET

     

    . 1.3.6.1.4.1.2021.11.54.0

    ssCpuRawWait

    GET

     

    . 1.3.6.1.4.1.2021.11.56.0

    ssCpuRawInterrupt

    GET

     

    . 1.3.6.1.4.1.2021.11.57.0

    ssIORawSent

    GET

     

    . 1.3.6.1.4.1.2021.11.58.0

    ssIORawReceived

    GET

     

    . 1.3.6.1.4.1.2021.11.59.0

    ssRawInterrupts

    GET

     

    . 1.3.6.1.4.1.2021.11.60.0

    ssRawContexts

    GET

     

    . 1.3.6.1.4.1.2021.11.61.0

    ssCpuRawSoftIRQ

    GET

     

    . 1.3.6.1.4.1.2021.11.62.0

    ssRawSwapIn.

    GET

     

    . 1.3.6.1.4.1.2021.11.63.0

    ssRawSwapOut

    GET

     

    .1.3.6.1.4.1.2021.10.1.3.1

    Load5

    GET

     

    .1.3.6.1.4.1.2021.10.1.3.2

    Load10

    GET

     

    .1.3.6.1.4.1.2021.10.1.3.3

    Load15

    GET

     

     

    ÄÚ´æ¼°´ÅÅÌ£¨1.3.6.1.2.1.25£©

    OID

    ÃèÊö

    ±¸×¢

    ÇëÇó·½Ê½

    .1.3.6.1.2.1.25.2.2.0

    »ñÈ¡ÄÚ´æ´óС

    hrMemorySize

    GET

    .1.3.6.1.2.1.25.2.3.1.1

    ´æ´¢É豸±àºÅ

    hrStorageIndex

    WALK

    .1.3.6.1.2.1.25.2.3.1.2

    ´æ´¢É豸ÀàÐÍ

    hrStorageType[OID]

    WALK

    .1.3.6.1.2.1.25.2.3.1.3

    ´æ´¢É豸ÃèÊö

    hrStorageDescr

    WALK

    .1.3.6.1.2.1.25.2.3.1.4

    ´ØµÄ´óС

    hrStorageAllocationUnits

    WALK

    .1.3.6.1.2.1.25.2.3.1.5

    ´ØµÄµÄÊýÄ¿

    hrStorageSize

    WALK

    .1.3.6.1.2.1.25.2.3.1.6

    ʹÓöàÉÙ£¬¸ú×ÜÈÝÁ¿Ïà³ý¾ÍÊÇÕ¼ÓÃÂÊ

    hrStorageUsed

    WALK

    .1.3.6.1.4.1.2021.4.3.0

    Total Swap Size(ÐéÄâÄÚ´æ)

    memTotalSwap

    GET

    .1.3.6.1.4.1.2021.4.4.0

    Available Swap Space

    memAvailSwap

    GET

    .1.3.6.1.4.1.2021.4.5.0

    Total RAM in machine

    memTotalReal

    GET

    .1.3.6.1.4.1.2021.4.6.0

    Total RAM used

    memAvailReal

    GET

    .1.3.6.1.4.1.2021.4.11.0

    Total RAM Free

    memTotalFree

    GET

    .1.3.6.1.4.1.2021.4.13.0

    Total RAM Shared

    memShared

    GET

    .1.3.6.1.4.1.2021.4.14.0

    Total RAM Buffered

    memBuffer

    GET

    .1.3.6.1.4.1.2021.4.15.0

    Total Cached Memory

    memCached

    GET

    .1.3.6.1.4.1.2021.9.1.2

    Path where the disk is mounted

    dskPath

    WALK

    .1.3.6.1.4.1.2021.9.1.3

    Path of the device for the partition

    dskDevice

    WALK

    .1.3.6.1.4.1.2021.9.1.6

    Total size of the disk/partion (kBytes)

    dskTotal

    WALK

    .1.3.6.1.4.1.2021.9.1.7

    Available space on the disk

    dskAvail

    WALK

    .1.3.6.1.4.1.2021.9.1.8

    Used space on the disk

    dskUsed

    WALK

    .1.3.6.1.4.1.2021.9.1.9

    Percentage of space used on disk

    dskPercent

    WALK

    .1.3.6.1.4.1.2021.9.1.10

    Percentage of inodes used on disk

    dskPercentNode

    WALK

    System Group
    sysDescr 1.3.6.1.2.1.1.1
    sysObjectID 1.3.6.1.2.1.1.2
    sysUpTime 1.3.6.1.2.1.1.3
    sysContact 1.3.6.1.2.1.1.4
    sysName 1.3.6.1.2.1.1.5
    sysLocation 1.3.6.1.2.1.1.6
    sysServices 1.3.6.1.2.1.1.7
    Interfaces Group
    ifNumber 1.3.6.1.2.1.2.1
    ifTable 1.3.6.1.2.1.2.2
    ifEntry 1.3.6.1.2.1.2.2.1
    ifIndex 1.3.6.1.2.1.2.2.1.1
    ifDescr 1.3.6.1.2.1.2.2.1.2
    ifType 1.3.6.1.2.1.2.2.1.3
    ifMtu 1.3.6.1.2.1.2.2.1.4
    ifSpeed 1.3.6.1.2.1.2.2.1.5
    ifPhysAddress 1.3.6.1.2.1.2.2.1.6
    ifAdminStatus 1.3.6.1.2.1.2.2.1.7
    ifOperStatus 1.3.6.1.2.1.2.2.1.8
    ifLastChange 1.3.6.1.2.1.2.2.1.9
    ifInOctets 1.3.6.1.2.1.2.2.1.10
    ifInUcastPkts 1.3.6.1.2.1.2.2.1.11
    ifInNUcastPkts 1.3.6.1.2.1.2.2.1.12
    ifInDiscards 1.3.6.1.2.1.2.2.1.13
    ifInErrors 1.3.6.1.2.1.2.2.1.14
    ifInUnknownProtos 1.3.6.1.2.1.2.2.1.15
    ifOutOctets 1.3.6.1.2.1.2.2.1.16
    ifOutUcastPkts 1.3.6.1.2.1.2.2.1.17
    ifOutNUcastPkts 1.3.6.1.2.1.2.2.1.18
    ifOutDiscards 1.3.6.1.2.1.2.2.1.19
    ifOutErrors 1.3.6.1.2.1.2.2.1.20
    ifOutQLen 1.3.6.1.2.1.2.2.1.21
    ifSpecific 1.3.6.1.2.1.2.2.1.22
    IP Group
    ipForwarding 1.3.6.1.2.1.4.1
    ipDefaultTTL 1.3.6.1.2.1.4.2
    ipInReceives 1.3.6.1.2.1.4.3
    ipInHdrErrors 1.3.6.1.2.1.4.4
    ipInAddrErrors 1.3.6.1.2.1.4.5
    ipForwDatagrams 1.3.6.1.2.1.4.6
    ipInUnknownProtos 1.3.6.1.2.1.4.7
    ipInDiscards 1.3.6.1.2.1.4.8
    ipInDelivers 1.3.6.1.2.1.4.9
    ipOutRequests 1.3.6.1.2.1.4.10
    ipOutDiscards 1.3.6.1.2.1.4.11
    ipOutNoRoutes 1.3.6.1.2.1.4.12
    ipReasmTimeout 1.3.6.1.2.1.4.13
    ipReasmReqds 1.3.6.1.2.1.4.14
    ipReasmOKs 1.3.6.1.2.1.4.15
    ipReasmFails 1.3.6.1.2.1.4.16
    ipFragsOKs 1.3.6.1.2.1.4.17
    ipFragsFails 1.3.6.1.2.1.4.18
    ipFragCreates 1.3.6.1.2.1.4.19
    ipAddrTable 1.3.6.1.2.1.4.20
    ipAddrEntry 1.3.6.1.2.1.4.20.1
    ipAdEntAddr 1.3.6.1.2.1.4.20.1.1
    ipAdEntIfIndex 1.3.6.1.2.1.4.20.1.2
    ipAdEntNetMask 1.3.6.1.2.1.4.20.1.3
    ipAdEntBcastAddr 1.3.6.1.2.1.4.20.1.4
    ipAdEntReasmMaxSize 1.3.6.1.2.1.4.20.1.5
    ICMP Group
    icmpInMsgs 1.3.6.1.2.1.5.1
    icmpInErrors 1.3.6.1.2.1.5.2
    icmpInDestUnreachs 1.3.6.1.2.1.5.3
    icmpInTimeExcds 1.3.6.1.2.1.5.4
    icmpInParmProbs 1.3.6.1.2.1.5.5
    icmpInSrcQuenchs 1.3.6.1.2.1.5.6
    icmpInRedirects 1.3.6.1.2.1.5.7
    icmpInEchos 1.3.6.1.2.1.5.8
    icmpInEchoReps 1.3.6.1.2.1.5.9
    icmpInTimestamps 1.3.6.1.2.1.5.10
    icmpInTimestampReps 1.3.6.1.2.1.5.11
    icmpInAddrMasks 1.3.6.1.2.1.5.12
    icmpInAddrMaskReps 1.3.6.1.2.1.5.13
    icmpOutMsgs 1.3.6.1.2.1.5.14
    icmpOutErrors 1.3.6.1.2.1.5.15
    icmpOutDestUnreachs 1.3.6.1.2.1.5.16
    icmpOutTimeExcds 1.3.6.1.2.1.5.17
    icmpOutParmProbs 1.3.6.1.2.1.5.18
    icmpOutSrcQuenchs 1.3.6.1.2.1.5.19
    icmpOutRedirects 1.3.6.1.2.1.5.20
    icmpOutEchos 1.3.6.1.2.1.5.21
    icmpOutEchoReps 1.3.6.1.2.1.5.22
    icmpOutTimestamps 1.3.6.1.2.1.5.23
    icmpOutTimestampReps 1.3.6.1.2.1.5.24
    icmpOutAddrMasks 1.3.6.1.2.1.5.25
    icmpOutAddrMaskReps 1.3.6.1.2.1.5.26
    TCP Group
    tcpRtoAlgorithm 1.3.6.1.2.1.6.1
    tcpRtoMin 1.3.6.1.2.1.6.2
    tcpRtoMax 1.3.6.1.2.1.6.3
    tcpMaxConn 1.3.6.1.2.1.6.4
    tcpActiveOpens 1.3.6.1.2.1.6.5
    tcpPassiveOpens 1.3.6.1.2.1.6.6
    tcpAttemptFails 1.3.6.1.2.1.6.7
    tcpEstabResets 1.3.6.1.2.1.6.8
    tcpCurrEstab 1.3.6.1.2.1.6.9
    tcpInSegs 1.3.6.1.2.1.6.10
    tcpOutSegs 1.3.6.1.2.1.6.11
    tcpRetransSegs 1.3.6.1.2.1.6.12
    tcpConnTable 1.3.6.1.2.1.6.13
    tcpConnEntry 1.3.6.1.2.1.6.13.1
    tcpConnState 1.3.6.1.2.1.6.13.1.1
    tcpConnLocalAddress 1.3.6.1.2.1.6.13.1.2
    tcpConnLocalPort 1.3.6.1.2.1.6.13.1.3
    tcpConnRemAddress 1.3.6.1.2.1.6.13.1.4
    tcpConnRemPort 1.3.6.1.2.1.6.13.1.5
    tcpInErrs 1.3.6.1.2.1.6.14
    tcpOutRsts 1.3.6.1.2.1.6.15
    UDP Group
    udpInDatagrams 1.3.6.1.2.1.7.1
    udpNoPorts 1.3.6.1.2.1.7.2
    udpInErrors 1.3.6.1.2.1.7.3
    udpOutDatagrams 1.3.6.1.2.1.7.4
    udpTable 1.3.6.1.2.1.7.5
    udpEntry 1.3.6.1.2.1.7.5.1
    udpLocalAddress 1.3.6.1.2.1.7.5.1.1
    udpLocalPort 1.3.6.1.2.1.7.5.1.2
    SNMP Group
    snmpInPkts 1.3.6.1.2.1.11.1
    snmpOutPkts 1.3.6.1.2.1.11.2
    snmpInBadVersions 1.3.6.1.2.1.11.3
    snmpInBadCommunityNames 1.3.6.1.2.1.11.4
    snmpInBadCommunityUses 1.3.6.1.2.1.11.5
    snmpInASNParseErrs 1.3.6.1.2.1.11.6
    NOT USED 1.3.6.1.2.1.11.7
    snmpInTooBigs 1.3.6.1.2.1.11.8
    snmpInNoSuchNames 1.3.6.1.2.1.11.9
    snmpInBadValues 1.3.6.1.2.1.11.10
    snmpInReadOnlys 1.3.6.1.2.1.11.11
    snmpInGenErrs 1.3.6.1.2.1.11.12
    snmpInTotalReqVars 1.3.6.1.2.1.11.13
    snmpInTotalSetVars 1.3.6.1.2.1.11.14
    snmpInGetRequests 1.3.6.1.2.1.11.15
    snmpInGetNexts 1.3.6.1.2.1.11.16
    snmpInSetRequests 1.3.6.1.2.1.11.17
    snmpInGetResponses 1.3.6.1.2.1.11.18
    snmpInTraps 1.3.6.1.2.1.11.19
    snmpOutTooBigs 1.3.6.1.2.1.11.20
    snmpOutNoSuchNames 1.3.6.1.2.1.11.21
    snmpOutBadValues 1.3.6.1.2.1.11.22
    NOT USED 1.3.6.1.2.1.11.23
    snmpOutGenErrs 1.3.6.1.2.1.11.24
    snmpOutGetRequests 1.3.6.1.2.1.11.25
    snmpOutGetNexts 1.3.6.1.2.1.11.26
    snmpOutSetRequests 1.3.6.1.2.1.11.27
    snmpOutGetResponses 1.3.6.1.2.1.11.28
    snmpOutTraps 1.3.6.1.2.1.11.29
    snmpEnableAuthenTraps 1.3.6.1.2.1.11.30

     


  • LinuxÃüÁîѧϰÊÖ²á-trÃüÁî -zt

    2015-07-08 09:07:52

    ת×Ô£ºhttp://blog.chinaunix.net/uid-9525959-id-2001634.html

    tr [OPTION]... SET1 [SET2] 


    [¹¦ÄÜ] 

    ת»»»òÕßɾ³ý×Ö·û¡£ 


    [ÃèÊö] 

    trÖ¸Áî´Ó±ê×¼ÊäÈëÉ豸¶ÁÈ¡Êý¾Ý£¬¾­¹ý×Ö·û´®×ªÒëºó£¬Êä³öµ½±ê×¼Êä³öÉ豸¡£ 

    ͨ¹ýʹÓà tr£¬Äú¿ÉÒԷdz£ÈÝÒ×µØʵÏÖ sed µÄÐí¶à×î»ù±¾¹¦ÄÜ¡£Äú¿ÉÒÔ½« tr ¿´×÷Ϊ sed µÄ£¨¼«Æ䣩¼ò»¯µÄ±äÌ壺Ëü¿ÉÒÔÓÃÒ»¸ö×Ö·ûÀ´Ìæ»»ÁíÒ»¸ö×Ö·û£¬»òÕß¿ÉÒÔÍêÈ«³ýȥһЩ×Ö·û¡£ÄúÒ²¿ÉÒÔÓÃËüÀ´³ýÈ¥Öظ´×Ö·û¡£Õâ¾ÍÊÇËùÓÐ tr ËùÄܹ»×öµÄ¡£ 

    trÓÃÀ´´Ó±ê×¼ÊäÈëÖÐͨ¹ýÌæ»»»òɾ³ý²Ù×÷½øÐÐ×Ö·ûת»»¡£trÖ÷ÒªÓÃÓÚɾ³ýÎļþÖпØÖÆ×Ö·û»ò½øÐÐ×Ö·ûת»»¡£Ê¹ÓÃtrʱҪת»»Á½¸ö×Ö·û´®£º×Ö·û´®1ÓÃÓÚ²éѯ£¬×Ö·û´®2ÓÃÓÚ´¦Àí¸÷ÖÖת»»¡£tr¸ÕÖ´ÐÐʱ£¬×Ö·û´®1ÖеÄ×Ö·û±»Ó³Éäµ½×Ö·û´®2ÖеÄ×Ö·û£¬È»ºóת»»²Ù×÷¿ªÊ¼¡£ 

    ²ÎÊý£º 

      -c»ò--complerment   È¡´úËùÓв»ÊôÓÚµÚÒ»×Ö·û¼¯µÄ×Ö·û¡£ 

      -d»ò--delete   ɾ³ýËùÓÐÊôÓÚµÚÒ»×Ö·û¼¯µÄ×Ö·û¡£ 

      -s»ò--squeeze-repeats   °ÑÁ¬ÐøÖظ´µÄ×Ö·ûÒÔµ¥¶ÀÒ»¸ö×Ö·û±íʾ¡£ 

      -t»ò --truncate-set1   Õâ¸ö±È½ÏÄÑÀí½â£¬manÉÏÃæµÄ½âÊÍÊÇ£ºfirst truncate SET1 to length of SET2,¾­¹ýÎÒµÄʵ¼ù·¢ÏÖ£¬½«set1µÄ×Ö·ûÒÀ´ÎÌæ»»³Éset2ÖеÄ×Ö·û£¬Èç¹ûset1ÖеÄ×Ö·ûÊýÄ¿³¬¹ýset2£¬ÄÇôset1¶à³öµÄ×Ö·ûºöÂÔ¡£Èç¹ûû ÓÐ-t£¬ÄÇô¶à³öµÄ×Ö·û¶¼Ìæ»»³Éset2µÄ×îºóÒ»¸ö×Ö·û¡£ 

      --help   ÔÚÏß°ïÖú¡£ 

      --version   ÏÔʾ°æ±¾ÐÅÏ¢¡£ 


    ×Ö·û·¶Î§ 

    Ö¸¶¨×Ö·û´®1»ò×Ö·û´®2µÄÄÚÈÝʱ£¬Ö»ÄÜʹÓõ¥×Ö·û»ò×Ö·û´®·¶Î§»òÁÐ±í¡£ 

    [a-z] a-zÄÚµÄ×Ö·û×é³ÉµÄ×Ö·û´®¡£ 

    [A-Z] A-ZÄÚµÄ×Ö·û×é³ÉµÄ×Ö·û´®¡£ 

    [0-9] Êý×Ö´®¡£ 

    \octal Ò»¸öÈýλµÄ°Ë½øÖÆÊý£¬¶ÔÓ¦ÓÐЧµÄASCII×Ö·û¡£ 

    [O*n] ±íʾ×Ö·ûOÖظ´³öÏÖÖ¸¶¨´ÎÊýn¡£Òò´Ë[O*2]Æ¥ÅäOOµÄ×Ö·û´®¡£ 

    trÖÐÌض¨¿ØÖÆ×Ö·ûµÄ²»Í¬±í´ï·½Ê½ 

    ËټǷûº¬Òå°Ë½øÖÆ·½Ê½ 

    \a Ctrl-G  ÁåÉù\007 

    \b Ctrl-H  Í˸ñ·û\010 

    \f Ctrl-L  ×ßÐл»Ò³\014 

    \n Ctrl-J  ÐÂÐÐ\012 

    \r Ctrl-M  »Ø³µ\015 

    \t Ctrl-I  tab¼ü\011 

    \v Ctrl-X  \030 


    [¾ÙÀý] 

    *ѹËõÎļþtestÄÚÈÝÖÐÖظ´µÄ×Ö·ûΪһ¸ö£º 

    $tr -s [a-z]

    ÕâÑù£¬»á°ÑÎļþÖÐÿһÐеÄ,Set1([a-z])×Ö·û´®ÖеÄÖظ´×Ö·ûѹËõΪһ¸ö£¬²¢°Ñ´¦ÀíµÄ½á¹û´òÓ¡µ½±ê×¼Êä³ö£¬Ô­À´µÄÎļþ²»±ä¡£ 

    ×¢ÒâÕâÀset1¼¯ºÏ£¨Ò²¾ÍÊǵÚÒ»¸ö²ÎÊý[a-z]£©ÖÐÖ¸¶¨µÄÊÇ×Ö·û¼¯ºÏ£¬¶ø²»ÊÇ×Ö·û´®£¬ËùÒÔÕâÀï×öµÄÊǰѵ¥¸ö×Ö·ûµÄÖظ´¸øѹËõΪһ¸ö£¬¶ø²»ÊÇ×Ö·û´®µÄÖظ´¡£ 

    ÀýÈçtestÓÐÒ»ÐÐÊÇtttt.tgz£¬ÄÇô»á±ä³Ét.tgz,µ«ÊÇhellohellohello»á±ä³Éhelohelohelo. 


    *È¥µôÎļþÖжàÓàµÄ¿ÕÐУº 

    $tr -s "[\012]" < test 

    »ò$tr -s ["\n"]

    ÕâÀ¼ÙÉèÔ­À´ÎļþtestµÄÄÚÈÝÊÇ£º 

    111 

    222 


    333 



    444 

    ÔËÐÐÖ®ºó£¬±ê×¼Êä³ö£º 

    111 

    222 

    333 

    444 

    ¶øÔ­À´ÎļþµÄÄÚÈݲ»»á¸Ä±ä¡£ 


    *ɾ³ýÎļþÖеÄ^M£¬²¢´úÖ®ÒÔ»»ÐÐ: 

    $tr -s "[\015]" "[\n]"

    »ò$tr -s "[\r]" "[\n]

    Ò»°ãÀ´Ëµ£¬windowsÉÏÃæ±à¼­µÄÎļþÄõ½linuxÉÏÃæÀ´Ã»ÐеĽáβ¿ÉÒÔ»áÓÐÕâÑùµÄ·ûºÅ,ʵ¼ÊÉÏÖ±½ÓcatÒ²¿´²»³ö^M·ûºÅ¡£ 


    *Ìæ»»ÎļþtestÖÐËùÓÐðºÅ£¬´úÖ®ÒÔ¶ººÅ£º 

    $tr -s "[:]" "[,]"

    »ò$tr -s ":" ","


    *ÏÔʾ$PATH±äÁ¿½«":"±ä³É»Ø³µ£º 

    echo $PATH | tr ":" "\n" 

    ÕâÀÓà echo $PATH »òÕß echo $LD_LIBRARY_PATH µÈÀàËƵÄÃüÁîÀ´ÏÔʾ·¾¶ÐÅÏ¢µÄ»°£¬ÎÒÃÇ¿´µ½µÄ½«»áÊÇÒ»´ó¶ÑÓÃðºÅÁ¬½ÓÔÚÒ»ÆðµÄ·¾¶£¬ trÃüÁî¿ÉÒÔ°ÑÕâЩðºÅת»»Îª»Ø³µ£¬ÕâÑù£¬ÕâЩ·¾¶¾Í¾ßÓкܺõĿɶÁÐÔÁË. 


    *ÒÔÉÏÃüÁîÔÚviÖнøÐд¦Àí: 

    1,$!tr -s ":" "," 

    ÕâÑù£¬»áÖ±½ÓÐÞ¸Ävi±à¼­µÄÎļþ£¬¿ÉÒÔÔÚviÄÚʹÓÃËùÓÐÕâЩÃüÁֻҪ¼Çס£ºÔÚtrÃüÁîÇ°Òª¼ÓÉÏÄúÏ£Íû´¦ÀíµÄÐз¶Î§ºÍ¸Ð̾ºÅ £¨£¡£©£¬Èç 1,$!tr -d '\t'£¨ÃÀÔª·ûºÅ±íʾ×îºóÒ»ÐУ©¡£ 


    *Ìæ»»µÚÒ»¸ö²ÎÊý×Ö·û¼¯Ö®ÍâµÄ×Ö·ûΪָ¶¨×Ö·û£º 

    tr -c [boy] "k"

    ÊäÈëÖ®ºó£¬Êä³öÈçÏ£º 

    kkkkokboykkookk 

    ÕâÀ»á°ÑÊôÓÚµÚÒ»¸ö²ÎÊýµÄ×Ö·û¼¯ÖеÄ×Ö·ûÖ®ÍâµÄËùÓУ¬¶¼Ìæ»»³ÉµÚ¶þ¸ö²ÎÊý¶ÔÓ¦µÄ×Ö·û¡£µÚ¶þ¸ö²ÎÊý±ØÐëÊǵ¥¸ö×Ö·û£¬Èç¹ûÊǶà¸ö×Ö·û£¬ÔòÈ¡×îºóÒ»¸ö£¬ÀýÈç"ka"µÈ¼ÛÓÚ'a'. 

    ʹÓÃ"cat trTest"²é¿´ÎļþµÄÄÚÈÝÈçÏ£º 

    hello 

    boy 

    good 


    *ɾ³ýset1×Ö·û¼¯Ö¸¶¨µÄ×Ö·û£º 

    $tr -d bld

    »ò$tr -d [bld]

    ÊäÈëÖ®ºó£¬Êä³öÈçÏ£º 

    heo 

    oy 

    goo 

    ÕâÑù£¬»áɾ³ýtrTestÎļþÖеÄËùÓÐ"bld"Èý¸ö×Ö·û¡£ÕâÀïʹÓÃcat²é¿´trTestÎļþÄÚÈÝÈçÏ£º 

    $cat trTest 

    hello 

    boy 

    good 


    *°ÑÎļþÖеÄСд×Ö·ûת»»³É´óдµÄ£º 

    $tr a-z A-Z

    »ò$tr [a-z] [A-z]

    ÊäÈëÖ®ºó£¬Êä³öÈçÏ£º 

    111 

    222 

    HELLO 

    ÕâÀtestTrÄÚÈÝÈçÏ£º 

    111 

    222 

    hello 


    *ʹÓÃ-tÌæ»»×Ö·û£¬set1³¬³öset2µÄ²¿·ÖºöÂÔ£º 

    $tr -t hld boy < trTest 

    ÊäÈëÖ®ºó£¬Êä³öÈçÏ£º 

    beooo 

    boy 

    gooy 

    ÕâÑù,»áÒÀ´Î°Ñh,l,dÌæ»»³Éb,o,yÈç¹ûÊÇhldgÄÇô¶à³öÀ´µÄ×Ö·ûgºöÂÔ£¬Èç¹ûûÓÐ-tÄÇô¶à³öÀ´µÄËùÓÐ×Ö·û±»Ìæ»»³ÉboyµÄ×îºóÒ»¸ö×Ö·ûy. 

    ÕâÀïtrTestÎļþµÄÄÚÈÝ£º 

    $cat trTest 

    hello 

    boy 

    good





  • linux-umountʱÌáʾdevice is busyʱ£¬ÈçºÎ²éÕÒ±»ºÎ½ø³ÌÕ¼Óã¿

    2015-06-16 11:21:31



    umountʱÌáʾdevice is busy£¬ÈçÏ£º

    # umount /data/disk1
    umount: /data/disk1: device is busy.
            (In some cases useful info about processes that use
             the device is found by lsof(8) or fuser(1))
            
    Õâʱ£¬¿ÉÒÔʹÓÃfuserÃüÁîÀ´²é¿´£º

    # fuser -vm /data/disk1
                         USER        PID ACCESS COMMAND
    /data/disk1:         root      17330 F...m dataserver

    ¼´¿ÉÖªµÀÊÇpid=17330µÄdataserverÕ¼ÓÃÁ˸ÃĿ¼

    Í£Ö¹¶ÔÓ¦·þÎñ£¬¼´¿Éumount³É¹¦
  • LinuxÃüÁîÖ®ethtoolÓ÷¨Ïê½â-zt

    2015-05-21 12:00:58

    ת×Ô£ºhttp://www.linuxidc.com/Linux/2012-01/52669.htm

    ÃèÊö£º
    EthtoolÊÇÓÃÓÚ²éѯ¼°ÉèÖÃÍø¿¨²ÎÊýµÄÃüÁî¡£
    ¸ÅÒª£º
    ethtool ethX      //²éѯethXÍø¿Ú»ù±¾ÉèÖÃ
    ethtool ¨Ch        //ÏÔʾethtoolµÄÃüÁî°ïÖú(help)
    ethtool ¨Ci ethX    //²éѯethXÍø¿ÚµÄÏà¹ØÐÅÏ¢ 
    ethtool ¨Cd ethX    //²éѯethXÍø¿Ú×¢²áÐÔÐÅÏ¢
    ethtool ¨Cr ethX    //ÖØÖÃethXÍø¿Úµ½×ÔÊÊӦģʽ
    ethtool ¨CS ethX    //²éѯethXÍø¿ÚÊÕ·¢°üͳ¼Æ
    ethtool ¨Cs ethX [speed 10|100|1000]\         //ÉèÖÃÍø¿ÚËÙÂÊ10/100/1000M
    [duplex half|full]\           //ÉèÖÃÍø¿Ú°ë/È«Ë«¹¤
    [autoneg on|off]\            //ÉèÖÃÍø¿ÚÊÇ·ñ×ÔЭÉÌ
    [port tp|aui|bnc|mii]\         //ÉèÖÃÍø¿ÚÀàÐÍ
    [phyad N]\                 
    [xcvr internal|exteral]\
    [wol p|u|m|b|a|g|s|d...]\
    [sopass xx:yy:zz:aa:bb:cc]\
    [msglvl N]
    ¾ÙÀý£º
    1£©[root@linux /]# ethtool eth1
    Settings for eth0:
    Supported ports: [ TP ]
    Supported link modes:   10baseT/Half 10baseT/Full 
                           100baseT/Half 100baseT/Full 
                           1000baseT/Full 
    Supports auto-negotiation: Yes
    Advertised link modes:  10baseT/Half 10baseT/Full 
                           100baseT/Half 100baseT/Full 
                           1000baseT/Full 
    Advertised auto-negotiation: Yes
    Speed: 1000Mb/s
    Duplex: Full
    Port: Twisted Pair
    PHYAD: 1
    Transceiver: internal
    Auto-negotiation: on
    Supports Wake-on: g
    Wake-on: d
    Link detected: yes
    2£©[root@linux /]# ethtool -i eth1
    driver: bnx2
    version: 2.0.8-rh
    firmware-version: 6.2.12 bc 5.2.3 NCSI 2.0.11
    bus-info: 0000:01:00.0
    3£©[root@linux /]# ethtool -S eth1
     NIC statistics:
         rx_bytes: 216494818
         rx_error_bytes: 0
         tx_bytes: 27084170553
         tx_error_bytes: 0
         rx_ucast_packets: 2933822
         rx_mcast_packets: 33
         rx_bcast_packets: 956
         tx_ucast_packets: 18464909
         tx_mcast_packets: 6
         tx_bcast_packets: 179
         tx_mac_errors: 0
         tx_carrier_errors: 0
         rx_crc_errors: 0
         rx_align_errors: 0
         tx_single_collisions: 0
         tx_multi_collisions: 0
         tx_deferred: 0
         tx_excess_collisions: 0
         tx_late_collisions: 0
         tx_total_collisions: 0
         rx_fragments: 0
         rx_jabbers: 0
         rx_undersize_packets: 0
         rx_oversize_packets: 0
         rx_64_byte_packets: 959
         rx_65_to_127_byte_packets: 2930241
         rx_128_to_255_byte_packets: 2634
         rx_256_to_511_byte_packets: 752
         rx_512_to_1023_byte_packets: 169
         rx_1024_to_1522_byte_packets: 56
         rx_1523_to_9022_byte_packets: 0
         tx_64_byte_packets: 183
         tx_65_to_127_byte_packets: 357
         tx_128_to_255_byte_packets: 750
         tx_256_to_511_byte_packets: 224
         tx_512_to_1023_byte_packets: 991032
         tx_1024_to_1522_byte_packets: 17472548
         tx_1523_to_9022_byte_packets: 0
         rx_xon_frames: 0
         rx_xoff_frames: 0
         tx_xon_frames: 0
         tx_xoff_frames: 0
         rx_mac_ctrl_frames: 0
         rx_filtered_packets: 0
         rx_ftq_discards: 0
         rx_discards: 0
         rx_fw_discards: 0

    4£©[root@linux /]# ethtool -s eth1 autoneg off speed 100 duplex full
    Ïà¹Ø£º
    1£©[root@linux /]# which ethtool
        /sbin/ethtool
    2£©[root@linux /]# rpm -qf /sbin/ethtool
       ethtool-1.6-5
    3£©ÔõÑùʹethtoolÉèÖÃÓÀ¾Ã±£´æÔÚÍøÂçÉ豸ÖУ¿
       ½â¾ö·½·¨Ò»:
        ethtoolÉèÖÿÉͨ¹ý/etc/sysconfig/network-scripts/ifcfg-ethXÎļþ±£´æ,´Ó¶øÔÚÉ豸Ï´ÎÆô¶¯Ê±¼¤»îÑ¡Ïî¡£ 
    ÀýÈ磺ethtool -s eth0 speed 100 duplex full autoneg off
    ´ËÖ¸Áeth0É豸ÉèÖÃΪȫ˫¹¤×ÔÊÊÓ¦£¬ËÙ¶ÈΪ100Mbs¡£ÈôÒªeth0Æô¶¯Ê±ÉèÖÃÕâЩ²ÎÊý, ÐÞ¸ÄÎļþ/etc/sysconfig/network-scripts/ifcfg-eth0 £¬Ìí¼ÓÈçÏÂÒ»ÐÐ: 
    ETHTOOL_OPTS="speed 100 duplex full autoneg off"
    ½â¾ö·½·¨¶þ:
    ½«ethtoolÉèÖÃдÈë/etc/rc.d/rc.localÖ®ÖС£
    ¶þ
    ½â¾ö·½·¨:
    ¶ÔIntelǧÕ×Íø¿¨½ûÓÃ×ÔÊÊӦʱ±ØÐëÖ¸¶¨Á´Â·ËٶȺÍÈ«Ë«¹¤Ä£Ê½¡£µ±Ê¹ÓÃethtoolÀ´½ûÓÃʹÓÃe1000Íø¿¨Çý¶¯Ä£¿éµÄÍø¿¨×ÔÊÊÓ¦ÌØÐÔʱ£¬±ØÐëͬʱָ¶¨Á´Â·ËٶȺÍÈ«Ë«¹¤¹¤×÷ģʽ¡£ÀýÈ磺 
    ethtool -s eth0 autoneg off

    »á±ß±È×ÔÊÊÓ¦£¬µ«ÊÇÖ»ÊÇÁÙʱ½ûÓã¬Èç¹ûÔÚÃüÁîÖÐûÓÐÖ¸¶¨Á´Â·ËٶȺÍÈ«Ë«¹¤¹¤×÷ģʽ£¬Çý¶¯»á×Ô¶¯ÖØдò¿ª×ÔÊÊÓ¦¡£ 
    ΪÁËʹÓÃethtool¹¤¾ßÀ´½ûÓÃe1000Íø¿¨Çý¶¯Ä£¿éµÄÍø¿¨×ÔÊÊÓ¦ÌØÐÔ£¬Ê¹ÓÃÒÔϲ½Öè 
    1. ½øÈëÖÕ¶Ëģʽ¡£ 2. ÒÔrootÉí·ÝÖ´ÐРethtool -s ethx autoneg off speed 1000 duplex full
    ÕâÀïethXÊÇÍø¿¨µÄÃû×Ö£¨ÀýÈçeth0»òÕßeth1µÈµÈ£©,Õâ¸öÃüÁ¹Ø±Õ¸ÃÍø¿¨µÄ×ÔÊÊÓ¦ÌØÐÔ£¬²¢ÇÒÇ¿ÖÆÉèÖÃÍø¿¨ËÙ¶ÈΪ1Gb£¬È«Ë«¹«Ä£Ê½¡£
    ÁíÍâethtool±Èmii-toolÒª¸ß¼¶,mii-toolÖ»Ö§³Ö Port: MIIµÄÍø¿¨.


    ethtool with a single argument specifying the device name prints current setting of the specified device.
    -h
    shows a short help message.
    -a
    queries the specified ethernet device for pause parameter information.
    -A
    change the pause parameters of the specified ethernet device.
    autoneg on|off
    Specify if pause autonegotiation is enabled.
    rx on|off
    Specify if RX pause is enabled.
    tx on|off
    Specify if TX pause is enabled.
    -c
    queries the specified ethernet device for coalescing information.
    -C
    change the coalescing settings of the specified ethernet device.
    -g
    queries the specified ethernet device for rx/tx ring parameter information.
    -G
    change the rx/tx ring parameters of the specified ethernet device.
    rx N
    Change number of ring entries for the Rx ring.
    rx-mini N
    Change number of ring entries for the Rx Mini ring.
    rx-jumbo N
    Change number of ring entries for the Rx Jumbo ring.
    tx N
    Change number of ring entries for the Tx ring.
    -i
    queries the specified ethernet device for associated driver information.
    -d
    retrieves and prints a register dump for the specified ethernet device.
    -e
    retrieves and prints an EEPROM dump for the specified ethernet device.
    -k
    queries the specified ethernet device for checksumming information.
    -K
    change the checksumming parameters of the specified ethernet device.
    rx on|off
    Specify if RX checksumming is enabled.
    tx on|off
    Specify if TX checksumming is enabled.
    sg on|off
    Specify if scatter-gather is enabled.
    -p
    initiates adapter-specific action intended to enable an operator to easily identify the adapter by sight. typically this involves blinking one or more LEDs on the specific ethernet port.
    N
    Length of time to perform. phys-id, in seconds.
    -r
    restarts auto-negotiation on the specified ethernet device, if auto-negotiation is enabled.
    -S
    queries the specified ethernet device for NIC- and driver-specific statistics.
    -t
    executes adapter selftest on the specified ethernet device. Possible test modes are:
    offline|online
    defines test type: offline (default) means to perform. full set of tests possibly causing normal operation interruption during the tests, online means to perform. limited set of tests do not interrupting normal adapter operation.
    -s
    option allows changing some or all settings of the specified ethernet device. All following options only apply if -s was specified.
    speed 10|100|1000
    Set speed in Mb/s. ethtool with single argument will show you the supported device speeds.
    duplex half|full
    Set full or half duplex mode.
    port tp|aui|bnc|mii
    Select device port.
    autoneg on|off
    Specify if autonegotiation is enabled. In the usual case it is, but might cause some problems with some network devices, so you can turn it off.
    phyad N
    PHY address.
    xcvr internal|external
    Select transceiver type. Currently only internal and external can be specified, in the future further types might be added.
    wol p|u|m|b|a|g|s|d...
    Set Wake-on-LAN options. Not all devices support this. The argument to this option is a string of characters specifying which options to enable.

    p
    Wake on phy activity
    u
    Wake on unicast messages
    m
    Wake on multicast messages
    b
    Wake on broadcast messages
    a
    Wake on ARP
    g
    Wake on MagicPacket(tm)
    s
    Enable SecureOn(tm) password for MagicPacket(tm)
    d
    Disable (wake on nothing). This option clears all previous options.
    sopass xx:yy:zz:aa:bb:cc
    Set the SecureOn(tm) password. The argument to this option must be 6 bytes in ethernet MAC hex format (xx:yy:zz:aa:bb:cc).
    msglvl N
    Set the driver message level. Meanings differ per driver

  • linux-shellÖÐÈçºÎ½øÐÐÒ»¶Î´úÂëµÄ×¢ÊÍ-zt

    2015-04-30 10:35:48

    ת×Ô£ºhttp://blog.csdn.net/tenfyguo/article/details/5753548

    ÔÚshell±à³ÌÖУ¬ÎÒÃdz£³£ÐèÒª°ÑһЩÓï¾ä×¢Ê͵ô£¬ÈÃËü²»Ö´ÐУ¬¶Ôµ¥ºÅ»òÕßÉÙÊý¼¸ÐÐshell½Å±¾À´Ëµ£¬ÔÚÿÐÐÇ°ÃæÔö¼Ó#·ûºÅ¾Í¿ÉÒԴﵽĿµÄÁË£¬´úÂëÈçÏ£º

    1. #cp ./a.txt ./b.txt  
    2. #mkdir -p {1,2,4}/{2,4,6}  
    3. #echo "ok"  

     

    µ«Èç¹ûÎÒÃÇÐèÒª¶ÔÒ»´ó¶ÎµÄshell½Å±¾½øÐÐ×¢ÊÍ£¬ÌÈÈôÎÒÃǶ¼ÔÚÿÐÐÇ°ÃæÌí¼Ó#£¬Õâ¶ÔÎÒÃÇÀ´Ëµ£¬È·Êµ²»ÊÇÒ»¼þºÜÁîÈËÊæ·þµÄÊÂÇ飬ÄÇô£¬ÔÚshellÖУ¬ÓÐû°ì·¨²ÉÓÃÀàËÆcÓïÑÔµÄ×¢ÊÍ/* ...*/À´´ïµ½Ò»Õû¶ÎµÄ×¢ÊÍЧ¹ûÄØ£¿±Ê¼Ç¾­¹ý²âÊÔ£¬·¢ÏÖÏÂÃæµÄ·½·¨ÊÇokµÄ¡£

    1. :<<!EOF!  
    2. cp ./a.txt ./b.txt  
    3. mkdir -p {1,2,3}/{4,5,6}  
    4. echo "ok"  
    5. !EOF!  

    ÉõÖÁ¿ÉÒÔ°ÑҪעÊ͵ÄshellÕûÌå±ä³ÉÒ»¸öº¯ÊýÀ´´ïµ½²»ÈÃÖ´ÐеÄÄ¿µÄ¡£

    1. notExce(){  
    2. cp ./a.txt ./b.txt  
    3. mkdir -p {1,2,3}/{4,5,6}  
    4. echo "ok"  

  • linux-¹ØÓÚLinuxϵͳÇåÀí/tmp/Îļþ¼Ð£¬Äã¿ÉÄÜÏëÖªµÀµÄ-zt

    2015-04-13 14:20:54


    ת×Ô£ºhttp://www.opsers.org/base/clean-up-on-the-linux-system-tmp-folder-you-may-want-to-know.html

    ÎÒÃÇÖªµÀ£¬ÔÚLinuxϵͳÖÐ/tmpÎļþ¼ÐÀïÃæµÄÎļþ»á±»Çå¿Õ£¬ÖÁÓڶ೤ʱ¼ä±»Çå¿Õ£¬ÈçºÎÇå¿ÕµÄ£¬¿ÉÄÜ´ó¼Ò֪ʶµÄ¾Í²»¶àÁË£¬ËùÒÔ£¬½ñÌìÎÒÃǾÍÀ´ÆÊÎöÒ»¸öÕâÁ½¸öÎÊÌâ¡£

    ÔÚRHEL\CentOS\Fedora\ϵͳÖÐ(±¾´ÎʵÑéÊÇÔÚRHEL6ÖнøÐеÄ)

    ÏÈÀ´¿´¿´tmpwatchÕâ¸öÃüÁËûµÄ×÷ÓþÍÊÇɾ³ýÒ»¶Îʱ¼äÄÚ²»Ê¹ÓõÄÎļþ£¨removes files which haven¡¯t been accessed for a period of time£©¡£¾ßÌåµÄÓ÷¨¾Í²»¶à˵ÁË£¬ÓÐÐËȤµÄ×ÔÐÐÑо¿¡£ÎÒÃÇÖ÷Òª¿´¿´ºÍÕâ¸öÃüÁîÏà¹ØµÄ¼Æ»®ÈÎÎñÎļþ¡£
    Ëû¾ÍÊÇ/etc/cron.daily/tmpwatch£¬ÎÒÃÇ¿ÉÒÔ¿´Ò»ÏÂÕâ¸öÎļþÀïÃæµÄÄÚÈÝ
    #! /bin/sh
    flags=-umc
    /usr/sbin/tmpwatch "$flags" -x /tmp/.X11-unix -x /tmp/.XIM-unix \
            -x /tmp/.font-unix -x /tmp/.ICE-unix -x /tmp/.Test-unix \
            -X '/tmp/hsperfdata_*' 10d /tmp
    /usr/sbin/tmpwatch "$flags" 30d /var/tmp
    for d in /var/{cache/man,catman}/{cat?,X11R6/cat?,local/cat?}; do
        if [ -d "$d" ]; then
            /usr/sbin/tmpwatch "$flags" -f 30d "$d"
        fi
    done

    Õâ¸ö½Å±¾´ó¼Ò×Ðϸ·ÖÎöһϾÍÃ÷°×ÁË£¬µÚÒ»ÐÐÏ൱ÓÚÒ»¸ö±ê¼Ç£¨²ÎÊý£©£¬µÚ¶þÐоÍÊÇÕë¶Ô/tmpĿ¼ÀïÃæÅųýµÄĿ¼£¬µÚÈýÐУ¬ÕâÊǶÔÕâ¸ö/tmpĿ¼µÄÇåÀí£¬ÏÂÃæµÄÊÇÕë¶ÔÆäËûĿ¼µÄÇåÀí£¬¾Í²»ËµÁË¡£

    ÎÒÃǾÍÀ´¿´/usr/sbin/tmpwatch "$flags" 30d /var/tmpÕâÒ»ÐУ¬¹Ø¼üµÄÊÇÕâ¸ö30d£¬¾ÍÊÇ30ÌìµÄÒâ˼£¬Õâ¸ö¾Í¾ö¶¨ÁË30ÌìÇåÀí/tmpϲ»·ÃÎʵÄÎļþ¡£Èç¹û˵£¬ÄãÏëÒ»ÌìÒ»ÇåÀíµÄ»°£¬¾Í°ÑÕâ¸ö30d¸Ä³É1d¡£Õâ¸öÄ㶮µÄ¡­¡­¹þ¹þ£¡

    µ«ÓиöÎÊÌâÐèҪעÒ⣬Èç¹ûÄãÉèÖøü¶ÌµÄʱ¼äÀ´ÇåÀíµÄ»°£¬±ÈÈç˵ÊÇ30·ÖÖÓ¡¢10ÃëµÈµÈ£¬Äã¿ÉÒÔÔÚÕâ¸öÎļþÖÐÉèÖ㬵«Äã»á·¢ÏÖÖØеçÄÔ£¬Ëû²»ÇåÀí /tmpÎļþ¼ÐÀïÃæµÄÄÚÈÝ£¬ÕâÊÇΪʲôÄØ£¿Õâ¾ÍÊÇtmpwatchËûËùÔÚµÄλÖþö¶¨µÄ£¬ËûµÄÉϲãĿ¼ÊÇ/etc/cron.daily/£¬¶øÕâ¸öĿ¼ÊÇµÚ ÌìÖ´ÐÐÒ»´Î¼Æ»®ÈÎÎñ£¬ËùÒÔ˵£¬ÄãÉèÖÃÁ˱ÈÒ»Ìì¸ü¶ÌµÄʱ¼ä£¬Ëû¾Í²»Æð×÷ÓÃÁË¡£ÕâÏÂÃ÷°×ÁË°É¡£
    ËùÒÔ½áÂÛÊÇ£ºÔÚRHEL6ÖУ¬ÏµÍ³×Ô¶¯ÇåÀí/tmpÎļþ¼ÐµÄĬÈÏʱÏÞÊÇ30Ìì

    ÔÚDebian\UbuntuϵͳÖУ¨Ubuntu10.10ΪʵÑé»·¾³£©

    ÔÚUbuntuϵͳÖУ¬ÔÚ/tmpÎļþ¼ÐÀïÃæµÄÄÚÈÝ£¬Ã¿´Î¿ª»ú¶¼»á±»Çå¿Õ£¬Èç¹û²»ÏëÈÃËû×Ô¶¯ÇåÀíµÄ»°£¬Ö»ÐèÒª¸ü¸ÄrcSÎļþÖеÄTMPTIMEµÄÖµ¡£
    ÎÒÃÇ¿´ÈçºÎÀ´ÐÞ¸Ä
    sudo vi /etc/default/rcS
    °Ñ
    TMPTIME=0
    Ð޸ijÉ
    TMPTIME=-1»òÕßÊÇÎÞÏÞ´ó
    ¸Ä³ÉÕâÑùµÄ»°£¬ÏµÍ³ÔÚÖØÐÂÆô¶¯µÄʱºò¾Í²»»áÇåÀíÄãµÄ/tmpĿ¼ÁË¡£
    ÒÀЩÀàÍÆ£¬Èç¹û˵ҪÏÞÖƶàÉÙʱ¼äÀ´¸ü¸ÄµÄ»°£¬¾Í¿ÉÒԸijÉÏàÓ¦µÄÊý×Ö£¨±¾ÈËûÓвâÊÔ£¬ÎÒÊÇÕâôÀí½âµÄ£©

    ËùÒÔ½áÂÛÊÇ£ºÔÚUbuntuÖУ¬ÏµÍ³×Ô¶¯ÇåÀí/tmpÎļþ¼ÐµÄʱÏÞĬÈÏÿ´ÎÆô¶¯


  • linux-¿ìËÙɾ³ýÎåÊ®Íò+ÎļþµÄ·½·¨

    2015-04-03 14:28:54

    linuxÉÏ£¬Í¨³£¶¼ÊÇÓÃrmÀ´É¾³ýÎļþ£¬µ«Í¬Ê±É¾³ýÊýÊ®Íò£¨ÈçÎåÊ®Íò£©¸öÎļþʱ£¬»áÌáʾ£º
    -bash: /bin/rm: Argument list too long

    Õâʱͨ³£¿¼ÂÇÓãºfind . -type f --exec rm -rf {} \;

    µ«ÕâÖÖ·½Ê½É¾³ýʱ£¬ËÙ¶ÈÓй»ÂýµÄ

    ʹÓÃrsync¿ÉÒÔ´ïµ½¿ìËÙɾ³ýµÄÄ¿µÄ

    Àý£º
    1¡¢½¨Á¢Ò»¸ö¿ÕµÄÎļþ¼Ð£º
    mkdir /tmp/test
    2¡¢ÓÃrsyncɾ³ýÄ¿±êĿ¼/home/testÖеÄÎļþ£º
    time rsync --delete-before -a -H --stats /tmp/test/ /home/test/

    ÕâÑùÎÒÃÇҪɾ³ýµÄ/home/testĿ¼¾Í»á±»Çå¿ÕÁË£¬É¾³ýµÄËٶȻá·Ç³£¿ì¡£
    rsyncʵ¼ÊÉÏÓõÄÊÇÌæ»»Ô­Àí£¬´¦ÀíÊýÊ®Íò¸öÎļþÒ²ÊÇÃ뼶

    /home/testĿ¼ÏÂÓÐÎåÊ®Íò¸öÎļþ£¬Ê¹ÓÃtime¼Æʱ£º
    # time rsync --delete-before -a -H --stats /tmp/test/ /home/test/
    real    0m19.227s
    user    0m1.409s
    sys     0m16.316s


    # time find /home/test/ -type f -exec rm -rf {} \;

    real    15m54.156s
    user    1m13.325s
    sys     12m2.169s


    µ±È»£¬Èç¹ûÎļþÊýÁ¿ÉÙ£¬¾ÍûÓбØÒªÓÃÕâÖÖ·½Ê½ÁË
    Ö±½ÓÓÃrm ¸ü¿ì



  • linux-sshÔ¶³Ìºǫִ́Ðнű¾-·ÅÖúǫִ́ÐÐÎÊÌâ

    2015-03-16 10:44:41

    дÁËÒ»¸ö¼à¿Ø¸ºÔصÄС½Å±¾£¨ËÀÑ­»·£¬²âÊÔ½áÊøºóÔÙkill¶ÔÓ¦½ø³Ì£©£¬ÒòÐèÒª¼à¿Ø¶ą̀·þÎñÆ÷£¬ËùÒÔÔÚһ̨·þÎñÆ÷ÉÏʹÓÃsshͳһִÐнű¾

    Óöµ½ÎÊÌ⣺
    ʹÓÃssh root@172.16.146.20 '/usr/local/luly/loadavg.sh 2 2 &'Ö´ÐÐ
    ±¾»úûÓм´Ê±Í˳ö£¬Õ¼ÓÃsshÁ¬½Ó
    ±¾ÒâÊÇ·¢ËÍÃüÁîµ½Ô¶³Ì»úÖ´ÐУ¬±¾»ú·¢ËͺóÖ±½ÓÍ˳ö

    ³¢ÊÔ£º
    1¡¢Ôö¼Ónohup£¬Ð§¹ûÏàͬ£º
    ssh root@172.16.146.20 'nohup /usr/local/luly/loadavg.sh 2 2 &'

    2¡¢Ôö¼ÓÍøÂçÉÏ˵µÄ-t ¡¢ -tt ²ÎÊý£¬Ò²Ã»ÓÐÓÃ
    ssh -t root@172.16.146.20 '/usr/local/luly/loadavg.sh 2 2 &'
    ssh -tt root@172.16.146.20 '/usr/local/luly/loadavg.sh 2 2 &'

    3¡¢È¥µôÒýºÅ£¬±¾»úÒ²ÔÚºǫ́ÔËÐУ¬Õ¼ÓÃsshÁ¬½Ó£¬±ØÐëÊÖ¶¯kill²ÅÐУ¬·ÇÎÒËùÏë
    ssh root@172.16.146.20 /usr/local/luly/loadavg.sh 2 2 &

    ×îÖÕ½â¾ö·½°¸£º
    Ôö¼Ó>/dev/null 2>&1£¬±¾»ú¼´Ê±Í˳ö£¬Ã»Óнø³ÌÒÅÁô£¬Ô¶³Ìºǫִ́Ðнű¾£¬´ïµ½Ä¿µÄ
    ssh root@172.16.146.20 '/usr/local/luly/loadavg.sh 2 2 >/dev/null 2>&1 &'



    ¼à¿Ø¸ºÔؽű¾£º


    # cat loadavg.sh
    #!/bin/bash
    USAGE="Usage: $0 second filename"

    if [ $# -ne 2 ]; then
       echo $USAGE
       exit 1
    fi

    > /tmp/monitor/loadavg/146.20_loadavg_$2.log

    while [[ 1=1 ]]
    do
            uptime >> /tmp/monitor/loadavg/146.20_loadavg_$2.log
            sleep $1
    done

  • linux-ÀûÓÃiconvÅúÁ¿×ª»»GBKÎļþµ½UTF-8±àÂë·½·¨

    2014-10-29 10:41:55


    ²é¿´Îļþ±àÂë
    file -i filename

    µÝ¹éת»»(°üÀ¨×ÓÎļþ¼Ð)
    find default -type d -exec mkdir -p utf/{} \;
    find default -type f -exec iconv -f GBK -t UTF-8 {} -o utf/{} \;

    ÕâÁ½ÐÐÃüÁdefaultĿ¼ÏµÄÎļþÓÉGBK±àÂëת»»ÎªUTF-8±àÂ룬Ŀ¼½á¹¹²»±ä£¬×ªÂëºóµÄÎļþ±£´æÔÚutf/defaultĿ¼Ï¡£

    ×¢Ò⣺Èç¹ûÔ­À´¾ÍÊÇutf-8±àÂ룬ʹÓÃiconv -f GBK -t UTF-8ÃüÁîת»»ºó£¬»á³öÏÖÂÒÂ룬»ò½Ø¶ÏµÈ¸÷ÖÖÎÊÌ⣻
    Ò»¶¨Òª±£Ö¤Ô­ÎļþÊDz»ÊÇutf-8±àÂ룻


    ʹÓÃÈçÏÂÃüÁî°ÑÎļþ±àÂëÏȲé³öÀ´£º
    find default -type f -exec file -i {} \; > /tmp/a
    ²éѯÊÇ·ñ´æÔÚÒѾ­ÊÇutf-8±àÂëµÄÎļþ£º
    grep "charset=utf-8" /tmp/a



    iconvÓÐÈçÏÂÑ¡Ïî¿ÉÓÃ:

    ÊäÈë/Êä³ö¸ñʽ¹æ·¶£º
    -f, --from-code=Ãû³Æ ԭʼÎı¾±àÂë
    -t, --to-code=Ãû³Æ Êä³ö±àÂë

    ÐÅÏ¢£º
    -l, --list ÁоÙËùÓÐÒÑÖªµÄ×Ö·û¼¯

    Êä³ö¿ØÖÆ£º
    -c ´ÓÊä³öÖкöÂÔÎÞЧµÄ×Ö·û
    -o, --output=FILE Êä³öÎļþ
    -s, --silent ¹Ø±Õ¾¯¸æ
    --verbose ´òÓ¡½ø¶ÈÐÅÏ¢
971/512345>
Open Toolbar