[問題] 關於socket 與 linux nc的問題

看板Perl作者 (saiamoi)時間12年前 (2012/04/28 16:24), 編輯推噓1(103)
留言4則, 2人參與, 最新討論串1/3 (看更多)
各位好 最近在寫一個關於socket 控制的程式 以下簡單說明一下: 首先使perl程式執行並進入等待 程式碼類似以下的方式 ---------------------------------------------------------- my $sock = IO::Socket::INET->new( LocalPort => 12345, LocalHost => pc77, Listen => 1, Reuse =>1 ); my $get = $sock->accept() while($get) { if (/cmd/) { 要做的事; } } ------------------------------------------------------------ 執行該perl程式後 1234的port會打開並進行等待 接著我從另一邊使用linux 的nc 指令 執行 nc pc77 12345 然後輸入"cmd" 使剛剛等待中的perl執行 "要做的事" 到目前為止都很順利 可以順利執行 "要做的事" 但接著當我用^C 關掉linux 的nc後 perl 那邊也就一起關掉了... 我希望的是 perl一旦開啟後 就一直在有process 活在那邊 一直等待我從外部給指令 然後做事 做完後又繼續等 直到我把perl關掉為止 請問這樣有辦法做到嗎? 或是哪邊需要做修改呢? 先謝謝各位了! 感謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 124.12.69.77

04/28 16:32, , 1F
這樣會很難管理吧?如果是非做不可 我會用screen做看看
04/28 16:32, 1F

04/28 18:20, , 2F
管理應該是還好 只是希望perl不要因為nc的結束而結束@@
04/28 18:20, 2F

04/28 18:22, , 3F
或是可不可以用其他方式給入指令 然後不要另perl這邊關掉
04/28 18:22, 3F

04/28 18:26, , 4F
04/28 18:26, 4F
文章代碼(AID): #1Fcwb3o4 (Perl)
文章代碼(AID): #1Fcwb3o4 (Perl)