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

LinuxÈç¹û¹ÜµÀ±»½ÓÊÜ·½¹Ø±Õ

·¢²¼Ê±¼ä:2008-04-23 16:29:20À´Ô´:ºìÁª×÷Õß:weidrson
linux shellÖеĹܵÀ|ÊǷdz£·½±ãµÄ¹¦ÄÜ£¬¿ÉÒÔ½«Ò»¸ö³ÌÐòµÄÊä³ö×÷ΪÁíÍâÒ»¸ö³ÌÐòµÄÊäÈ룬ÕâÑùÎÒÃÇ¿ÉÒÔ½«¶à¸öÃüÁî¡°Æ´¡±ÔÚÒ»Æð£¬Ê¡È¥ÁËÁÙʱÎļþµÄ·±Ëö¡£windowsÖÐÒ²ÓÐÀàËƵÄÓ÷¨£¬±ÈÈçdir |more£¬Ñ§¹ýdosÃüÁîµÄÓ¦¸Ã¶¼ÖªµÀ°É¡£

¼ÈÈ»ÊǹܵÀ£¬ÄÇô¾ÍÓÐÒ»¸öÈë¿ÚºÍÒ»¸ö³ö¿Ú£¬¸÷×Ô¶ÔÓ¦Ò»¸öÓ¦ÓóÌÐò£¬Õý³£µÄÇé¿öÏ£¬Èë¿ÚÓ¦ÓóÌÐòµÄÊä³öÓ¦µ±±»³ö¿ÚÓ¦ÓóÌÐòÈ«²¿½ÓÊÜ£¬µ«ÔÚһЩÌØÊâÇé¿ö£¬³ö¿ÚÓ¦ÓóÌÐò»áÌáÇ°¹Ø±Õ¹ÜµÀ£¬±ÈÈçÔÚ²éѯsvnµÄ¸üÐÂÈÕÖ¾£¬Ö»È¡Ç°¼ºÐеÄʱºò£º

$ svn log |head
----------------
r137 | Fwolf | 2007-05-28 13:38:47 +0800 (Mon, 28 May 2007) | 4 lines

¸üмǼ¡£

svn: Write error: Broken pipe

ÓÉÓÚheadÖ»ÐèÒªÓõ½ÊäÈëµÄÇ°10ÐУ¨Ä¬ÈÏÐÐÊý£¬Ò²¿ÉÓÉÓû§Ö¸¶¨£©£¬ÔÙ½ÓÊÕʣϵÄÊä³öÒ²ÊǶàÓ࣬±ãÌáÇ°¹Ø±ÕÁ˹ܵÀ£¬¹ÜµÀÈë¿ÚµÄÓ¦ÓóÌÐòsvn·¢ÏÖÖ®ºó£¬±ã±¨´íÍ˳öÁË¡£ÔÚÕâ¸öÀý×ÓÖУ¬´íÎóÐÅÏ¢·Ç³£Çå³þ£¬µ«²»ÊÇËùÓÐÓ¦ÓóÌÐò¶¼ÕâÑùµÄ£¬±ÈÈçÏÂÃæÕâ¸ö£º

$ find . -name "*rc" |xargs -i cat {}|head -1
[Desktop]
xargs: cat: terminated by signal 13

´íÎóÐÅÏ¢Ëƺõ²¢²»Ì«ºÃÀí½â£¬Êµ¼ÊÉÏËüµÄÒâ˼ÊÇ£ºxargs·¢ÏÖËüµÄ×Ó½ø³ÌcatÓÉÓÚÐźÅ13±»ÖÐÖ¹ÁË¡£ÓÉÓÚxargs±¾ÉíÊôÓÚÑ­»·²Ù×÷£¬·¢ÏÖ´íÎóÖ®ºó¾ÍÍ£Ö¹ÁËÑ­»·£¬ÕâÊÇÆäÒ»£»ÐźÅ13ÊÇÔÚcatÊÔͼÏòÒ»¸öÒѹرյÄpipe¹ÜµÀÖÐдÊý¾ÝµÄʱºò£¬ÏµÍ³²úÉúµÄ£¬catÊÕµ½Ö®ºó¾ÍÍ£Ö¹ÁË¡£ÀàËÆÓÚÔÚcatÊä³öµÄ¹ý³ÌÖУ¬Óû§°´ÏÂctrl+cµÄЧ¹û¡£

ÈçºÎ±ÜÃâÕâÖÖÎÊÌâÄØ£¿ºÜ¼òµ¥£¬¹ÜµÀºóÃæʹÓò»»áÌáÇ°¹Ø±Õ¹ÜµÀµÄ³ÌÐò¼´¿É£¬ÓÈÆäÊǽáºÏxargsʹÓõÄʱºò£¬Ëü·¢ÏÖ³ö´í¾Í²»¼ÌÐøÁË¡£±ÈÈçÒªÓõ½head¿ÉÒÔÕâÑù£º

$ cat file |head -1

ËäÈ»catÈÔÈ»»á±»signal 13¹Ø±Õ£¬µ«bashÊDz»»á±¨´íµÄ£¬ËùÒÔÒ²Ö»ÄÜÕë¶ÔÒ»¸öÎļþ½øÐвÙ×÷£¬¼´Ê¹ÊÇʹÓÃÁËͨÅä·ûÒ²Ö»ÄÜheadµ½µÚÒ»¸öÎļþ¡£Èç¹ûÒª¼ÓÉ϶ÔÎļþµÄ±éÀú£¬¿ÉÒÔÓõ½for£º

$for file in .*rc;do cat $file |head -1;done

catÒÀÈ»»á±»¹Ø±Õ£¬µ«ÊÇfor²»»áÀí»áËü£¬¼ÌÐøÑ­»·¡£headÒ²¿ÉÒÔÖ±½ÓÖ¸¶¨ÎļþÃû£¬ÕâÑùÎÒÃǾͿÉÒÔÅ׿ªcatÁË£º

$find . -name "*rc" |xargs -i head -n1 {}

¸öÈËÈÏΪÕâÊÇÒ»ÖÖ×îÍêÃÀµÄ½â¾ö·½Ê½£¬¼´¿ÉÒÔÓõ½findÇ¿´óµÄËÑË÷Ö¸Á»¹²»»áÉæ¼°µ½¹ÜµÀµÄÎÊÌâ¡£²»¹ýÈç¹ûÎļþÃûûÓÐʲôÌØÊâÒªÇ󣬻¹ÓÐÒ»ÖÖ¸ü¼òµ¥µÄ·½Ê½£º

$head -n1 .*rc

ÔÚheadµÄ²ÎÊýÖÐÖ±½ÓÓÃͨÅä·ûÖ¸¶¨Îļþ¡£

³ö×Ôhttp://www.fwolf.com/blog/post/328
ÎÄÕÂÆÀÂÛ

¹²ÓÐ 0 ÌõÆÀÂÛ