Q:

What is the linux command to find out the number of socket currently open?

I use that :
sudo watch lsof -i -4 -a -P

and it returns a list.
how to get the count?
I tried this but doesn't work.
sudo watch lsof -i -4 -a -P | wc -l

A:

I agree, this should probably be on ServerFault.
But, until then:
The issue with what you are doing is the watch command.  Watch repeats a command so that you can see the output again and again over time.
My lsof doesn't accept a -4 argument, but if yours does, then
sudo lsof -i -4 -a -P | wc -l

Works for me.

