Linux: Find Port Number Used by Process with CAT and ECHO
In this post, I'll show how to find the port number used by a process when you know its PID, using two native Linux commands: cat and echo in bash.
1. Pick a Random PID
List the contents of /proc to see running process IDs:
ls /proc
Example output:
1 33 asound cgroups consoles devices driver ...
2. Print Process TCP Connection Info
Display TCP connections for a specific process by replacing $PID with your process ID:
cat /proc/$PID/net/tcp
For example, with PID 33:
cat /proc/33/net/tcp
Sample output:
sl local_address rem_address st tx_queue rx_queue tr tm->when retrnsmt uid timeout inode
0: 00000000:0050 00000000:0000 0A 00000000:00000000 00:00000000 00000000 0 0 2078133 1 000000002283b263 100 0 0 10 0
Look for the local_address column. The port number is the value after the colon (:), here it's 0050.
3. Convert the Port Number from Hex to Decimal
The port number (0050) is in hexadecimal. Convert it to decimal with:
echo $((16#0050))
Output:
80
Now you know how to find which port a process is using by its PID!