Next: Deleting Processes, Previous: Synchronous Processes, Up: Processes [Contents][Index]
È󯱴ü¥×¥í¥»¥¹¤òºîÀ®¤¹¤ë¤È¡¢Emacs¤È¥µ¥Ö¥×¥í¥»¥¹¤Îξ¼Ô¤Ï ¤¿¤À¤Á¤Ëưºî¤ò·Ñ³¤·¤Þ¤¹¡£ ¤½¤·¤Æ¥×¥í¥»¥¹¤ÏEmacs¤ÈÊÂ¹Ô¤ËÆ°ºî¤·¡¢ ξ¼Ô¤Ï°Ê²¼¤ÎÀá¤Ë½Ò¤Ù¤ë´Ø¿ô¤òÍѤ¤¤Æ¸ß¤¤¤ËÄÌ¿®¤Ç¤¤Þ¤¹¡£ ¤·¤«¤·¡¢ÄÌ¿®¤ÏÉôʬŪ¤ËÈ󯱴ü¤Ç¤¹¡£ ÆÃÄê¤Î´Ø¿ô¤ò¸Æ¤Ó½Ð¤·¤¿¤È¤¤Ë¤À¤±Emacs¤Ï¥×¥í¥»¥¹¤Ø¥Ç¡¼¥¿¤òÁ÷¤ê¡¢ Emacs¤¬ÆþÎÏÂÔ¤Á¤«»þ´ÖÂÔ¤Á¤ò¤·¤Æ¤¤¤ë¤È¤¤Ë¤À¤± ¥×¥í¥»¥¹¤«¤é¤Î½ÐÎϤò¼õ¤±¼è¤ì¤Þ¤¹¡£
¤³¤³¤Ç¤Ï¡¢È󯱴ü¥×¥í¥»¥¹¤ÎºîÀ®ÊýË¡¤Ë¤Ä¤¤¤Æ½Ò¤Ù¤Þ¤¹¡£
¤³¤Î´Ø¿ô¤Ï¡¢¿·¤¿¤ÊÈ󯱴ü¥µ¥Ö¥×¥í¥»¥¹¤òºîÀ®¤·¡¢ ¤½¤Î¥×¥í¥»¥¹¤Ç¥×¥í¥°¥é¥àprogram¤òÁö¤é¤»¤ë¡£ Lisp¤Ë¤ª¤¤¤Æ¿·¤¿¤Ê¥µ¥Ö¥×¥í¥»¥¹¤òɽ¤¹¥×¥í¥»¥¹¥ª¥Ö¥¸¥§¥¯¥È¤òÊÖ¤¹¡£ °ú¿ôname¤Ï¥×¥í¥»¥¹¥ª¥Ö¥¸¥§¥¯¥È¤Î̾Á°¤ò»ØÄꤹ¤ë¡£ ¤½¤Î̾Á°¤Î¥×¥í¥»¥¹¤¬¤¹¤Ç¤Ë¸ºß¤¹¤ë¤È¡¢ ̾Á°¤ò°ì°Õ¤Ë¤¹¤ë¤¿¤á¤Ë¡Ê‘<1>’¤Ê¤É¤òÉղ䷤ơËname¤ò½¤Àµ¤¹¤ë¡£ ¥Ð¥Ã¥Õ¥¡buffer-or-name¤Ï¡¢¤½¤Î¥×¥í¥»¥¹¤ËÂбþÉÕ¤±¤ë¥Ð¥Ã¥Õ¥¡¤Ç¤¢¤ë¡£
»Ä¤ê¤Î°ú¿ôargs¤Ï¡¢¥×¥í¥°¥é¥à¤ËÂФ¹¤ë ¥³¥Þ¥ó¥É¹Ô°ú¿ô¤ò»ØÄꤹ¤ëʸ»úÎó¤Ç¤¢¤ë¡£
¤Ä¤®¤ÎÎã¤Ç¤Ï¡¢ºÇ½é¤Î¥×¥í¥»¥¹¤Ïư¤»Ï¤á¤ë¤È 100Éô֡ʵٻߤǤϤʤ¯¡Ëưºî¤¹¤ë¡£ ¤½¤Î¤¢¤¤¤À¤Ë2ÈÖÌÜ¤Î¥×¥í¥»¥¹¤òư¤«¤·»Ï¤á¤ë¤È¡¢ °ì°Õ¤Ç¤¢¤ë¤¿¤á¤Ë¤½¤ì¤Ë¤Ï̾Á°‘my-process<1>’¤¬Í¿¤¨¤é¤ì¤ë¡£ 2ÈÖÌÜ¤Î¥×¥í¥»¥¹¤Ï¡¢ºÇ½é¤Î¥×¥í¥»¥¹¤¬½ªÎ»¤¹¤ë¤Þ¤¨¤Ë ¥Ð¥Ã¥Õ¥¡‘foo’¤Ë¥Ç¥£¥ì¥¯¥È¥ê°ìÍ÷¤òÁÞÆþ¤¹¤ë¡£ 2ÈÖÌÜ¤Î¥×¥í¥»¥¹¤¬½ªÎ»¤¹¤ë¤È¤½¤ì¤òɽ¤¹¥á¥Ã¥»¡¼¥¸¤¬¥Ð¥Ã¥Õ¥¡¤ËÁÞÆþ¤µ¤ì¤ë¡£ ¤·¤Ð¤é¤¯¤·¤ÆºÇ½é¤Î¥×¥í¥»¥¹¤¬½ªÎ»¤¹¤ë¤È¡¢ Ê̤Υá¥Ã¥»¡¼¥¸¤¬¥Ð¥Ã¥Õ¥¡¤ËÁÞÆþ¤µ¤ì¤ë¡£
(start-process "my-process" "foo" "sleep" "100") ⇒ #<process my-process>
(start-process "my-process" "foo" "ls" "-l" "/user/lewis/bin") ⇒ #<process my-process<1>> ---------- Buffer: foo ---------- total 2 lrwxrwxrwx 1 lewis 14 Jul 22 10:12 gnuemacs --> /emacs -rwxrwxrwx 1 lewis 19 Jul 30 21:02 lemon Process my-process<1> finished Process my-process finished ---------- Buffer: foo ----------
¤³¤Î´Ø¿ô¤Ïstart-process
¤ÈƱÍͤǤ¢¤ë¤¬¡¢
»ØÄꤷ¤¿¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤¿¤á¤Ë¥·¥§¥ë¤òÍѤ¤¤ëÅÀ¤¬°Û¤Ê¤ë¡£
°ú¿ôcommand¤Ï¥·¥§¥ë¥³¥Þ¥ó¥É¤Î̾Á°¤Ç¤¢¤ê¡¢
command-args¤Ï¤½¤Î¥·¥§¥ë¥³¥Þ¥ó¥É¤ËÂФ¹¤ë°ú¿ô¤Ç¤¢¤ë¡£
ÊÑ¿ôshell-file-name
¤Ï¡¢»ÈÍѤ¹¤ë¥·¥§¥ë¤ò»ØÄꤹ¤ë¡£
start-process
¤ÇľÀܤˤǤϤʤ¯
¥·¥§¥ë¤ò²ð¤·¤Æ¥×¥í¥°¥é¥à¤ò¼Â¹Ô¤¹¤ë¤È¡¢
°ú¿ô¤Î¥ï¥¤¥ë¥É¥«¡¼¥É¤Ê¤É¤Î¥·¥§¥ë¤Îµ¡Ç½¤òÍøÍѤǤ¤ë¡£
¤Ä¤Þ¤ê¡¢¥æ¡¼¥¶¡¼»ØÄê¤ÎǤ°Õ¤Î¥Õ¥¡¥¤¥ë̾¤ò¥³¥Þ¥ó¥É¤ËÆþ¤ì¤ë¾ì¹ç¤Ë¤Ï¡¢
¤Þ¤¨¤â¤Ã¤Æshell-quote-argument
¤Ç¥¯¥©¡¼¥È¤·¡¢
¥Õ¥¡¥¤¥ë̾Æâ¤Î¥·¥§¥ë¤ÎÆÃÊ̤Êʸ»ú¤¬
¤½¤Î¤è¤¦¤ÊÆÃÊ̤ʰÕÌ£¤ò»ý¤¿¤Ê¤¤¤è¤¦¤Ë¤¹¤ë¡£
see Shell Arguments¡£
¤³¤ÎÊÑ¿ô¤Ï¡¢È󯱴ü¥µ¥Ö¥×¥í¥»¥¹¤È¤ÎÄÌ¿®¤ËÍѤ¤¤ëÁõÃ֤η¿¤òÀ©¸æ¤¹¤ë¡£
¤³¤ì¤¬nil
°Ê³°¤Ç¤¢¤ë¤Èµ¿»÷üËöPTY¤òÍøÍѤǤ¤ë¾ì¹ç¤Ë¤Ï¤½¤ì¤òÍѤ롣
¤µ¤â¤Ê¤±¤ì¤Ð¥Ñ¥¤¥×¤òÍѤ¤¤ë¡£
¥·¥§¥ë¡Êshell¡Ë¥â¡¼¥É¤Ê¤É¤Î¥æ¡¼¥¶¡¼¤Ë¸«¤¨¤ë¥×¥í¥»¥¹¸þ¤±¤Ë¤Ï¡¢ ¥Ñ¥¤¥×¤Ç¤ÏÉÔ²Äǽ¤Ê¥×¥í¥»¥¹¤È¤½¤Î»Ò¥×¥í¥»¥¹¤È¤Î¤¢¤¤¤À¤Ç ¥¸¥ç¥ÖÀ©¸æ¡ÊC-c¡¢C-z¤Ê¤É¡Ë¤òµö¤¹¤Î¤Ç µ¿»÷üËöPTY¤¬Ë¾¤Þ¤·¤¤¡£ ¥×¥í¥°¥é¥à¤ÎÆâÉôÌÜŪ¸þ¤±¤Ë»È¤ï¤ì¤ë¥µ¥Ö¥×¥í¥»¥¹¤Ç¤Ï¡¢ ¸úΨŪ¤Ê¥Ñ¥¤¥×¤òÍѤ¤¤ë¤Û¤¦¤¬¤è¤¤¡£ ¤Þ¤¿¡¢Â¿¤¯¤Î¥·¥¹¥Æ¥à¤Ç¤Ïµ¿»÷üËöPTY¤ÎÁí¿ô¤Ë¤ÏÀ©Ì󤬤¢¤ê¡¢ ¤½¤ì¤é¤òϲÈñ¤·¤Ê¤¤¤Û¤¦¤¬¤è¤¤¡£
process-connection-type
¤ÎÃͤÏ
start-process
¤ò¸Æ¤Ó½Ð¤·¤¿¤È¤¤Ë»È¤ï¤ì¤ë¡£
¤·¤¿¤¬¤Ã¤Æ¡¢start-process
¤Î¸Æ¤Ó½Ð¤·¤Î¼þ¤ê¤Ç¤³¤ÎÊÑ¿ô¤ò«Çû¤¹¤ë¤³¤È¤Ç¡¢
1¤Ä¤Î¥µ¥Ö¥×¥í¥»¥¹¤ËÂФ¹¤ëÄÌ¿®ÊýË¡¤ò»ØÄê¤Ç¤¤ë¡£
(let ((process-connection-type nil)) ; ¥Ñ¥¤¥×¤ò»È¤¦
(start-process …))
¥µ¥Ö¥×¥í¥»¥¹¤¬¼ÂºÝ¤Ë¤Ï¥Ñ¥¤¥×¤«µ¿»÷üËöPTY¤Î¤É¤Á¤é¤ò
»È¤Ã¤Æ¤¤¤ë¤«¤òÄ´¤Ù¤ë¤Ë¤Ï¡¢´Ø¿ôprocess-tty-name
¤ò»È¤¦
¡Êsee Process Information¡Ë¡£