I am trying to use netcat to send a simple message over TCP, e.g. I want to send the digit 1.

So I understood that I write the following in the terminal, after installing netcat

netcat [ip-address] [port]

But how do I specify the message to be sent? i.e. where to I write "1" ?


Create file something.txt, content of file is 1

netcat [ip-address] [port] <something.txt

At destination you must have something to listen to this.



netcat -l -p [port]

to listen to the connection


netcat [server-ip-address] [port]

After connection is establish on cilent simple type 1 and hit enter

  • Submitted an edit changing the useless cat command to redirection to echo. I use this method to send string data to remote machines that are operating as one for greater bash multi-tasking.
    – Yokai
    Nov 14 '17 at 8:27
  • +1 for the server tip! That's very cool, thanx!
    – j.c
    Feb 26 '18 at 14:31
  • thnks, this is working for me Jul 11 '18 at 4:52

I use:

echo text | netcat host port

So you would just need to run this:

echo 1 | netcat localhost 12345
  • 11
    or netcat <host> <port> <<< 1 Aug 23 '18 at 18:24

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.