我有一個數據框具有域名列。我想通過ping他們的域名來查看哪個域名存在。我可以從後續功能獲得單獨的ping響應。如何獲得在R的ping響應
ping <- function(x,stderr=FALSE,stdout=FALSE,...){
pingvec <- system2("ping",x,
stderr=FALSE,
stdout=FALSE,...)
if (pingvec == 0) TRUE else FALSE
}
ping("google.com")
[1] TRUE
是否有任何R軟件包,我可以得到具有數千個域名的整個列的ping響應。
是否調用'system'是一個安全問題取決於上下文。如果代碼在任何你無法控制的機器上運行,那麼是的,'ping'可以被重新定義爲別的東西,並且存在安全問題。如果你想從你自己的機器上ping一堆地址,那不是問題。 –
它非常緩慢。花很多時間,有沒有其他方法更快?然後我想查看哪些網站不能ping通。 – Neil
@Neil可以在系統級別更改ping超時。在Linux系統中,減少這個時間的選項是'ping -i 0.2'。你可以通過使用URLs < - paste(「 - i 0.2」,URLs)''將這個選項傳遞給pingr。這應該加快功能。不知道其他操作系統的選項。 – RHertel