Periksa apakah komputer terhubung ke internet

49

Tulis sebuah program yang, sesuai dengan apakah skrip memiliki akses ke internet, menghasilkan output yang "Truthy / Falsey" . Anda dapat mencoba dan terhubung ke situs yang ada, atas kebijakan Anda sendiri (jangan gunakan situs teduh yang hanya memiliki 10% uptime - cobalah untuk tetap di atas 80% uptime tahunan). Jika situs tidak aktif, program Anda tidak harus berfungsi.

Itu harus program mandiri atau fungsi . Anda dapat menggunakan perpustakaan di luar perpustakaan standar untuk mencapai ini. Celah standar dilarang. Ini adalah kode golf, jadi kode dengan byte-count terpendek akan menang.

Contoh pseudocode:

function a:
    try:
        connect to internet 
        return 1
    catch error:
        return 0

Ini adalah posting pertama saya di golf kode, jadi jika ini melanggar aturan dengan cara apa pun atau merupakan penipuan, harap beri tahu saya.

EDIT: Karena banyak saran, saya telah menghapus batasan jumlah byte UTF-8

Restioson
sumber
4
Alih-alih truedan false, saya sarankan mengizinkan salah satu default kami untuk kebenaran dan kepalsuan . Juga, melalui internet, maksud Anda jaringan di luar jaringan lokal Anda? Apakah program masih harus berfungsi jika katakan saja Google sedang down atau situs besar lainnya?
Biru
3
Hitungan byte biasanya dilakukan dalam bahasa asli atau penyandian yang paling nyaman, yang tidak selalu UTF-8. Kecuali Anda memiliki alasan yang kuat untuk menegakkan UTF-8, saya pikir pengkodean harus dibiarkan sesuai pilihan programmer
Luis Mendo
4
Saya melihat hampir semua orang menggunakan g.gl/http://g.gl/ , tetapi to./http://to./ tampaknya satu byte lebih pendek (tidak semua bahasa melihatnya sebagai url yang valid sampai).
Kevin Cruijssen
9
Commodore Basic:PRINT "0"
Mark
3
Mesin yang saya ketik ini, secara teknis merupakan bagian dari "Internet", karena dapat diakses dari luar (melalui NAT dan port forwarding). Jadi, jika Anda memikirkannya, skrip "deteksi internet" mungkin dapat direduksi menjadi "benar" :)
zeppelin

Jawaban:

29

Bash (dengan dnsutils ), 3 byte

Mengirim permintaan DNS untuk "." (DNS root), kode keluar adalah 0 untuk sukses dan> 0 sebaliknya.

Golf

dig

Uji

% dig >/dev/null; echo $?;        
0

% nmcli nm wifi off
% dig >/dev/null; echo $?;
9

Penolakan

Ini jelas hanya akan berfungsi jika server DNS Anda duduk di jaringan penyedia, yaitu di "Internet" (karena jaringan penyedia Anda biasanya merupakan bagian dari itu), atau jika sistem Anda menggunakan server DNS publik (seperti 8.8.8.8 dari Google, yang menggunakan sistem berbasis Android), karena jika tidak, Anda bisa mendapatkan salinan cache dari server LAN lokal (atau localhost).

Tapi saya berasumsi ini tidak melanggar aturan , karena jelas ada lebih dari satu sistem di mana ini berfungsi sebagaimana dimaksud.

Metode Pure-HTTP juga dapat memberikan hasil positif palsu, karena proxy caching perantara, dan tidak dijamin untuk bekerja di mana-mana, sehingga bukan sesuatu yang unik untuk metode ini.

Versi yang sedikit lebih andal, 8 byte

dig +tra

(sedikit upeti ke @ Dig ital Tra uma!)

Mengaktifkan "mode jejak", yang akan memaksa penggalian untuk melakukan pencarian rekursif dengan sendirinya (lihat https://serverfault.com/a/778830 ), menghindari masalah cache.

zeppelin
sumber
Kutipan dari man dig: Kecuali diminta untuk menanyakan server nama tertentu, gali akan mencoba setiap server yang terdaftar di /etc/resolv.conf . Jika tidak ada alamat server yang dapat digunakan ditemukan, dig akan mengirimkan permintaan ke host lokal .
Titus
@ Titus, ya itu benar, lihat bagian "disclaimer" dari jawaban saya, tetapi selama server DNS Anda (sebagaimana ditentukan dalam resolv.conf Anda) ada di pihak penyedia Anda, itu berfungsi dengan baik.
zeppelin
Solusi Anda tergantung pada pemasangan yang tidak standar; Saya akan mempertimbangkan bahwa mengeksploitasi celah. Anda masih bisa menang dengan dua byte tambahan.
Titus
1
> Solusi Anda tergantung pada instalasi non-default Tidak, ini persis cara kerjanya di komputer saya (dan itu sudah cukup menurut Meta). Selain itu, menggunakan server DNS penyedia Anda, memang merupakan pengaturan yang cukup umum (dan biasanya juga akan ada di resolv.conf Anda).
zeppelin
2
settual defualt tergantung pada pengaturan apa yang Anda gunakan pada waktu instalasi jika Anda mengkonfigurasi jaringan menggunakan DHCP kemudian resolv.conf mungkin menunjuk pada router Anda. jika Anda mengkonfigurasi jaringan secara manual, itu akan memiliki server DNS apa pun yang Anda pilih.
Jasen
19

Utilitas Bash + GNU, 8

  • 5 byte disimpan berkat @Muzer.
wget to.

Shell yang lain menjawab memeriksa kode kembali dan mengulangi beberapa keluaran status yang sesuai. Ini tidak perlu. Kode pengembalian shell sudah menjadi kode Truthy / Falsey yang dapat digunakan dan dapat diakses di $?parameter yang idiomatis untuk bash. Kode pengembalian 0 berarti Benar. Kode pengembalian> 0 berarti Salah.

Digunakan:

ubuntu@ubuntu:~$ wget to.
--2017-01-13 09:10:51--  http://to./
Resolving to. (to.)... 216.74.32.107, 216.74.32.107
Connecting to to. (to.)|216.74.32.107|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 11510 (11K) [text/html]
Saving to: index.html.6

index.html.6        100%[===================>]  11.24K  --.-KB/s    in 0.04s   

2017-01-13 09:10:51 (285 KB/s) - index.html.6 saved [11510/11510]

ubuntu@ubuntu:~$ echo $?
0
ubuntu@ubuntu:~$ sudo ifconfig ens33 down
ubuntu@ubuntu:~$ wget to.
--2017-01-13 09:11:00--  http://to./
Resolving to. (to.)... failed: Temporary failure in name resolution.
wget: unable to resolve host address to.’
ubuntu@ubuntu:~$ echo $?
4
ubuntu@ubuntu:~$ sudo ifconfig ens33 up
ubuntu@ubuntu:~$ # Local network up, upstream link down
ubuntu@ubuntu:~$ wget to.
--2017-01-13 09:11:34--  http://to./
Resolving to. (to.)... failed: Name or service not known.
wget: unable to resolve host address to.’
ubuntu@ubuntu:~$ echo $?
4
ubuntu@ubuntu:~$ 
Trauma Digital
sumber
2
Gunakan domain seperti to.bukan 8.8.8.8, untuk menyimpan cukup banyak.
Muzer
@Muzer ya - terima kasih
Digital Trauma
2
@Muzer kecuali ada lokal toyang resolver dikonfigurasi untuk menemukan, itu masih akan pergi ke yang benar (dan mungkin bisa ping lokal tosudah cukup terhubung ke internet )
Christian Sievers
2
@Muzer OK, toterkadang berfungsi dan kadang tidak. Saya kira beberapa caching terjadi. Saya akan gunakan to.hanya untuk keamanan.
Trauma Digital
4
Mengapa itu domain yang valid?
Kos
9

Batch, 8 byte

ping to.

pingakan diatur ERRORLEVELke 1jika alamat tidak dapat diselesaikan atau dicapai.

Neil
sumber
7

05AB1E , 11 9 byte

Disimpan 2 byte pada "ke." milik ev3commander

…to..wgX›

Cek apakah panjang konten di http: // hingga . lebih besar dari 1.
.wmengembalikan 0 pada kesalahan.

Emigna
sumber
1
Selalu diberi +1 untuk jawaban
05AB1E
@WorseDoughnut Dan mengapa begitu?
mbomb007
3
@ mbomb007 Hanya penggemar berat bahasa sejak Adnan mulai mengerjakannya dan mempostingnya di sini; jelas merupakan bahasa yang menarik untuk dipelajari.
WorseDoughnut
1
@ WorseDoughnut Sudah ada hyperlink dalam jawabannya.
mbomb007
Tidak bisakah Anda terhubung ke? untuk menyimpan byte?
ev3commander
5

MATL , 15 14 byte

Satu byte diselamatkan berkat Kevin Cruijssen saran 's

'http://to.'Xi

Output melalui STDOUT. Ini menampilkan string tidak kosong yang berisi karakter bukan nol (yang benar) jika ada koneksi Internet; dan tidak menampilkan apa pun (yang palsu) jika tidak ada koneksi.

Ini tidak dapat diuji secara online karena Xitidak diperbolehkan dalam juru bahasa online.

Penjelasan

'http://to.'  % Push this string
Xi            % Return contents of that URL as a string. If there is no Internet
              % connection this gives an error, with no output on STDOUT
Luis Mendo
sumber
Apakah Anda akan menganggapnya urlread('http://g.gl')sebagai jawaban yang oke? Ini akan membuat kesalahan dan membiarkan ruang kerja kosong jika koneksi terputus. Ini akan menampilkan pesan kesalahan, tetapi secara teknis itu untuk STDERR ...? Saya pikir itu sedikit peregangan, jadi saya melakukannya dengan cara ini . Tetapi melewatkan trysepertinya memberikan hasil yang sama dengan kode Anda, atau? Anda meninggalkan tumpukan kosong juga bukan? Ngomong-ngomong, jawaban yang bagus ... :)
Stewie Griffin
@StewieGriffin Terima kasih! Ya, saya pikir urlread('http://g.gl')ini valid (dan sama dengan kode saya), karena STDERR diabaikan secara default, dan STDOUT yang kosong palsu di MATLAB
Luis Mendo
1
apakah ini akan bekerja dengan - ftpbukannya httpmenyimpan byte lain?
Floris
1
@ Floris Senang melihatmu juga di sini! Sayangnya ftpsepertinya tidak berfungsi untuk situs itu
Luis Mendo
1
Halo @LuisMendo ya saya terkadang mencari-cari situs lain ... sayang sekali ftp tidak berfungsi!
Floris
5

Bash 66 62 21 byte

ping -c1 g.gl echo $?

Terima kasih @Alex L. untuk tip pemendek URL.

Versi tidak disatukan:

r=$(ping -c1 g.gl)
if [ $? -ne 0 ];
 then echo "0"
else echo "1"
fi

Ini adalah jawaban pertama saya di Bash, saya tidak yakin saya telah memperpendek skrip.

Abel Tom
sumber
Saya pikir Anda dapat menggunakan URL yang lebih pendek daripada google.com, yang memungkinkan Anda untuk mempersingkat kodenya. Sesuatu seperti g.gl.
HyperNeutrino
3
Anda juga harus bisa hanya echo $?pernyataan itu jika keseluruhan.
SomethingDark
4
Anda melewatkan "beberapa" ;di garis golf.
Ipor Sircer
@IporSircer Terima kasih. :) @SomethingDark Halo, echo $? mencetak 0jika berhasil, atau yang dikembalikan 2dalam kasus ini. Saya belum melihat ke dalam kode sumber dari implementasi pingtetapi saya berasumsi, ada kode pengembalian yang berbeda tergantung pada perhitungan. Karenanya, saya menggunakan if elsestrategi.
Abel Tom
@ BelTom - bisa dikatakan bahwa 0 adalah benar dan non-0 adalah palsu.
SomethingDark
5

R, 20 byte

curl::has_internet()

Ada fungsi untuk tugas ini dalam curlpaket.

Billywob
sumber
1
+1 penemuan yang bagus. Bagi mereka yang penasaran seperti saya, fungsi ini diimplementasikan sebagai:function() !is.null(nslookup("r-project.org", error = FALSE))
plannapus
Hitungan Setara: httr::url_ok('g.gl')(meskipun sudah usang).
Jonathan Carroll
5

Java, 72 byte

a->new java.net.InetSocketAddress("to.",80).getAddress().isReachable(9);
Huntro
sumber
3
Anda harus menentukan nama yang sepenuhnya memenuhi syaratjava.net.InetSocketAddress
4

Perl, 15 byte

print`curl to.`

Jalankan dengan:

perl -e 'print`curl to.`' 2> /dev/null

curlmenampilkan barang STDERR, jangan pedulikan mereka. Jika komputer memiliki akses ke internet, ia akan mencetak beberapa baris html (benar), jika tidak, ia tidak akan mencetak apa pun (falsy).

Disimpan 1 byte dengan menggunakan to.(bukan milik saya sebelumnya b.io) berkat @Kevin Cruijssen.

Dada
sumber
Tidak bisakah Anda beralih ke bash dan menghapus print?
BlueRaja - Danny Pflughoeft
1
@ BlueRaja-DannyPflughoeft Yup, itu akan berhasil (sudah ada jawaban di bash meskipun (mereka menggunakan wgetbukan curltapi itu hal yang sama)).
Dada
4

C #, 87 byte

_=>{try{new System.Net.WebClient().OpenRead("http://g.gl");return 1;}catch{return 0;}};

Jika pengecualian dianggap falsey, yang menurut saya tidak, maka ini adalah 65 byte:

_=>new System.Net.WebClient().OpenRead("http://g.gl").ReadByte();

Saya juga mencoba menggunakan tautan http://to.seperti yang dinyatakan oleh @KevinCruijssen tetapi tampaknya tidak berhasil.

TheLethalCoder
sumber
4

8 , 23 21 byte

Dua byte disimpan berkat saran Kevin Cruijssen dan penemuan saya:http: // tampaknya berfungsi jugahttp: // ke . (menyimpan byte lain)

"http://to" net:get .

Jika situs http: // dapat dijangkau, maka situs tersebut akan dicetak true. Kalau tidak mencetak false. Itu meninggalkan data yang diambil di stack.

Kekacauan Manor
sumber
1
TOS berarti t op o f s taktik. Saya pikir maksud Anda hanya meninggalkan data di stack.
Roman Gräf
Tepat sekali. Saya meningkatkan penjelasan saya. Terima kasih.
Chaos Manor
@ ev3commander Sudahkah Anda mencoba dengan http: // to ? Ini berfungsi dalam kasus saya (saya melihat Halaman Default Apache2 Ubuntu). Tampaknya tidak perlu menambahkan '.' atau '/'
Chaos Manor
3

MATLAB, 32 22 byte

urlread('http://g.gl')

Penjelasan:

Jika koneksi internet naik, ini akan menghasilkan ans(variabel default) menjadi string dengan seluruh kode-html dalam teks biasa (yang benar dalam MATLAB).

Jika koneksi internet mati, ini akan menulis pesan kesalahan ke STDERR dan membiarkan ruang kerja kosong (yang salah di MATLAB).

Sayangnya, urlreadmemerlukan url-address lengkap , jadi g.gltidak cukup. Oleh karena itu 11 dari 22 byte hanyalah alamat-url.


Pendekatan alternatif:

Solusi yang menangkap kesalahan dan meninggalkan 0 (juga salah ) di ruang kerja jika koneksi terputus:

0;try urlread('http://g.gl'),end

0;menginisialisasi variabel default ansmenjadi 0, yang ada falsedi MATLAB. Kemudian kita trymembaca url. Ini akan memberikan kesalahan jika koneksi internet turun, atau array karakter jika tidak (yang ada truedi MATLAB).

Kita tidak perlu menangkap apa pun, jadi kita berakhir saja. Jika panggilan urlread berhasil, maka ansakan menjadi string panjang dengan konten situs web, jika tidak ans=0.

Stewie Griffin
sumber
3

Bash, 39 byte

exec 4<>/dev/tcp/to./80&&echo 1||echo 0
GB
sumber
1
! exec 4<>/dev/tcp/to./80;echo $?
Jasen
atau jika Anda tidak perlu mencetak benar / salah tetapi hanya dapat mengembalikannya,exec 4<>/dev/tcp/to./80
Jasen
3

JavaScript ES6, 71 43 byte

fetch``.then(a=>alert(1)).catch(a=>alert``)

Lansiran 1 jika online, beri tahu string kosong jika offline. Terima kasih kepada Patrick Roberts karena membantu saya mencukur beberapa byte

Versi lama

_=>fetch('http://enable-cors.org').then(a=>alert(a)).catch(a=>alert(0))

Lansiran [object Reponse]jika online, lansiran 0jika offline

Menghapus cuplikan kode, tidak berfungsi karena memuat dari domain lain tanpa CORS, tetapi bekerja di konsol browser

Zanchi
sumber
Hmm. Ini dengan benar mencetak "benar" ketika saya terhubung, tetapi tidak mencetak apa pun jika saya memutuskan sambungan dan menjalankannya di browser saya. Di browser / OS apa Anda mengujinya? Saya menggunakan chrome-win7
DJMcMayhem
@DJMcMayhem Bagaimana cache Anda?
Ismael Miguel
@DJMcMayhem Saya diuji di Chrome, Win10. Cache dinonaktifkan dari tab jaringan dan diperiksa Offline untuk menguji offline / online
Zanchi
Ini bisa menjadi program lengkap dalam 52 byte:fetch('://to.').then(a=>alert(1)).catch(a=>alert(0))
Patrick Roberts
2

JavaScript ES6, 90 81 Bytes

f=a=>{i=new Image();i.src="//placehold.it/1x1";i.onload=b=>a(1);i.onerror=c=>a()}

JavaScript ES6, 22 21 byte (Tidak Valid)

Beberapa browser tidak sepenuhnya mendukung, atau menghasilkan hasil yang diharapkan saat menggunakan navigator.onLine.

f=a=>navigator.onLine
Tom
sumber
2
Jawaban ini menyiratkan bahwa ini tidak akan selalu kembali salah ketika tidak terhubung ke internet
Blue
Anda dapat menyimpan byte dengan menambahkan parameter ke lambda, seperti:f=a=>
XavCo7
1
Meskipun jawaban Anda tampaknya masih tidak valid, Anda dapat menyingkirkannya f=.
Mama Fun Roll
1
78 byte: a=>{with(new Image()){src="//placehold.it/1x1";onload=b=>a(1);onerror=c=>a()}}´ (got rid of f = `dan digunakan with(){})
Ismael Miguel
2

Scala, 54 byte

x=>(Runtime.getRuntime exec "ping -c 1 ai."waitFor)<1

Cukup mudah; mengeksekusi perintah ping http://ai./, dan mengembalikan true jika keluar dengan 0, atau false sebaliknya.

corvus_192
sumber
2

Brainfuck (tidak bersaing) 21 byte

++++++[>++++++++<-]>.

Brainfuck tidak dapat terhubung ke internet (sejauh yang saya ketahui), jadi karena program ini tidak dapat terhubung, jawabannya selalu 0

Non-bersaing karena tampaknya berada di bawah celah standar keluaran hard-coded , meskipun program ini secara teknis tepat untuk tantangan.

Cody
sumber
Brainfuck tidak dapat terhubung, tetapi komputer yang saya gunakan ini masih dapat terhubung ke internet (atau tidak). Solusi brainfuck yang tepat adalah program yang selalu merespons "Saya tidak tahu"
Kos
2
@Kos "Aku tidak tahu" tidak benar / falsey
Restioson
Itu bukan "Aku tidak tahu", itu "Aku tidak bisa karena itu jawabannya tidak"
Cody
mungkin hanya mencetak byte '\ 0' karena ini juga 0. Anda akan memiliki kode hanya 1 byte
12431234123412341234123
2

Powershell, 64 26 23 byte

Disimpan 38 byte, terima kasih kepada Shawn Esterman

Disimpan 3 byte, dan skrip diperbaiki, terima kasih kepada briantist

Test-Connection -q g.gl
Horváth Dávid
sumber
Uji-Koneksi -Tenang ke.
Shawn Esterman
PowerShell tidak dapat menyelesaikannya to., Anda harus menggunakannya g.gl. Selain itu Anda dapat mempersingkat Test-Connection -q g.gl.
briantis
2

PHP, 23 PHP + Curl, 14

Menggunakan operator backtick PHP:

<?=`curl to.`;

Jawaban orisinal:

Saya akan mencoba memulai:

<?=file('http://x.gl');

Ini menghasilkan apa-apa jika x.gl tidak dapat dijangkau dan Arrayjika itu.

Versi lain di mana saya tidak yakin apakah mereka cocok:

<?=getmxrr('x.gl',$a);  // 22 chars
Christoph
sumber
4
Kembali "adalah celah itu", saya pikir konsensus normal adalah bahwa itu dianggap sebagai dialek bahasa (jadi jawabannya adalah PHP + Curl, 15 byte ).
Apakah array dianggap benar? Saya akan membiarkannya bersaing, karena itu adalah pertanyaan saya. Hanya karena ketertarikan.
Restioson
@Restioson php mengubah array ke string "Array"ketika Anda mencoba mencetaknya ( <?=) dan boolean false akan dikonversi menjadi "". Jadi nilai pengembalian sebenarnya bukan array tetapi string yang tidak kosong atau string kosong.
Christoph
@Cristoph Saya tidak berpikir "Array" dianggap benar atau salah
Restioson
@Restioson Ini adalah string yang secara implisit mengkonversi ke boolean true. Sebuah cabang if ("Array") echo 'thruthy';akan karena itu diambil itu truthy . String kosong tidak akan mengambil cabang dan karena itu falsey.
Christoph
2

Python 3 + permintaan, 59 55 53 byte

Harus ada jawaban permintaan, kan?

from requests import*
try:get("http://to.")
except:Z

Status keluar adalah 0 untuk internet, 1 untuk tidak ada internet. Contoh:

$ python inet.py 
$ echo $?
0
$ # Remove ethernet cable
$ python inet.py 
$ echo $?
1

Changelog:

  • -4 byte (terima kasih Mego)
matsjoyce
sumber
Anda dapat mempersingkat ini dengan menggunakan protokol yang berbeda ( ftp, mungkin), dan melakukan except:0/0.
Mego
@Mego Saya pikir permintaan hanya tidak http (s). Saya telah menambahkan 0/0.
matsjoyce
1

Elixir, 33 byte

{:ok,_}=:inet.getaddr('to',:inet)

0 jika terhubung, 1 sebaliknya.

movsx
sumber
1

PowerShell , 12 byte

!!(irm g.gl)
briantis
sumber
1

Mathematica 10 Bytes

Dengan asumsi Anda memiliki salinan Mathematica yang valid, dan masuk kredensial di user.wolfram.com

CloudPut@1

akan menulis nilai 1 ke cloud. Truthy: CloudObject [""] Falsey: $ Failed

CloudGet@%

Akan mengembalikan nilai 1 yang diunggah ke cloud.

Kelly Lowder
sumber
1
Perhatikan bahwa, secara default, cuplikan REPL tidak diizinkan. Masukkan &setelahnya untuk membuatnya menjadi fungsi yang tidak disebutkan namanya.
LegionMammal978
Bisakah Anda mengarahkan saya ke tautan?
Kelly Lowder
1
Menurut pendapat saya, ini adalah jawaban terbaik di sini. Tetapi apakah objek Cloud dianggap sebagai kebenaran? Saya akan mengatakan bahwa 1 di awan itu benar. Jawaban bagus!
Restioson
@ LegionMammal978, saya dapat meletakkan kode, seperti, dalam file paket .wl dan menjalankannya sebagai "program" sebagaimana diizinkan per pertanyaan awal. Biasanya pertanyaan semacam ini membutuhkan fungsi dengan input; tidak diperlukan input pengguna. Lebih jauh lagi, pengujian kebenaran / salah saya sebagai suatu fungsi berfungsi baik dengan atau tanpa & Dalam CloudPut@1&===$Failed& sama sekali tidak ada perbedaan. Terakhir, program mengembalikan dan mencetak hasilnya, jadi sebenarnya bukan potongan REPL seperti yang Anda sarankan.
Kelly Lowder
1

Python 2.7, 70 77 Bytes

from urllib import*
a=1
try:urlopen('http://to.')
except:a=0
print a

import urllib as l
try: 
 l.urlopen('http://a.uk')
 print 1
except:
 print 0

Gunakan 1 untuk truey, 0 untuk falsy. a.uk dialihkan ke perusahaan pakaian sepeda motor. Disimpan 3 byte dengan menetapkan ke variabel dan mencetaknya. Dan satu lagi untuk "untuk." trik (dikonfirmasi untuk bekerja dengan urllib), dua untuk menghilangkan indentasi sial.

Chris H.
sumber
Saya pikir from urllib import*bisa menyelamatkan char (dan drop l.saja).
Nick T
@NickT Saya lupa Anda bisa menjatuhkan ruang antara importdan *jadi saya pikir Anda benar tapi saya sedang mobile dan saya akan memperbaikinya nanti
Chris H
1

Julia + Bash (dengan dnsutils), 10 byte

run(`dig`)

`command`di julia menciptakan cmdobjek yang bisa dijalankan run.

Rɪᴋᴇʀ
sumber
0

Clojure, 49 byte

#(try(slurp"http://to.")1(catch Exception _ nil))

Kembali 1jika dapat terhubung, dan nilsebaliknya.

Hanya mencoba ke slurphalaman; melempar NoRouteToHostExceptionpengecualian pada kegagalan, yang tertangkap.

Sayangnya, protokol dan titik tampaknya wajib.

Carcigenicate
sumber
0

Javascript (Nashorn), 61 byte

print(new java.net.InetSocketAddress("to.",80).getAddress())

Berdasarkan jawaban Java Huntro.

SuperJedi224
sumber