0
如果本地端口正在偵聽或空閒,我想實現紅寶石檢查。 需要在自由端口的情況下腳本返回代碼是0
並且在端口占用(監聽)返回代碼的情況下是1
。Ruby:檢查本地端口是否正在偵聽
重要的是這裏的端口是本地的而不是遠程的!對於遠程端口,我發現這個解決方案:Ruby - See if a port is open
我已經試過這個腳本:
ruby -e "
require 'socket' ;
server=TCPServer.new(25) ;
if server==nil ;
return 1 ;
else server.close ;
end
"
它返回自由港的情況下,「0」,但如果當口所佔它返回
-e:1:in `initialize': no implicit conversion of nil into String (TypeError)
from -e:1:in `new'
from -e:1:in `<main>'
那麼如何糾正該行腳本?
我無法重現你的錯誤。但是,我可以告訴你,當你不在方法內時,你不能「返回」。 –