Ketika saya mencoba menjalankan perintah berikut:
echo -e "GET / HTTP/1.1\n\n" | /dev/tcp/74.125.225.19/80
Saya mendapatkan pesan kesalahan berikut:
bash: /dev/tcp/74.125.225.19/80: No such file or directory
Perintah berikut berfungsi dengan baik, jadi masalahnya melibatkan bagaimana saya menggunakan /dev/tcp
:
echo -e "GET / HTTP/1.1\n\n" | nc 74.125.225.19 80
Saya di Ubuntu 13.04, jadi kemampuannya harus ada di sistem saya. Apa yang saya lakukan salah? Apa aturan untuk menggunakan /dev/tcp
dengan benar?
Jawaban:
Anda harus menggunakannya dalam pengalihan :
Begitu:
adalah cara yang tepat untuk menggunakannya.
Ketika Anda menggunakan
/dev/tcp/74.125.225.19/80
pipa,bash
mencoba menjalankan perintah yang bernama/dev/tcp/74.125.225.19/80
dan melaporkan kesalahan karena file itu tidak ada.Kemampuan untuk menangani
/dev/tcp/host/port
dan/dev/udp/host/port
mengarahkan ulang ditambahkan kebash
dalam versi 2.04.Anda perlu dikompilasi
bash
dengan--enable-net-redirections
opsi.sumber
/dev/tcp
diperlakukan sebagai "file" dan bukan skrip.