Введение: я создал функцию bash, которая может проверять, доступен ли порт, и увеличивает его на 1, если false до определенного максимального номера порта. Например, если порт 500 недоступен, то наличие 501 будет проверяться до 550.
Цель: чтобы протестировать эту функцию bash, мне нужно создать диапазон портов, которые находятся в состоянии LISTEN.
Попытки: В Windows можно создать порт LISTEN, используя следующие команды PowerShell :
PS C:\Users\u> netstat -nat | grep 1234
PS C:\Users\u> $listener = [System.Net.Sockets.TcpListener]1234
PS C:\Users\u> $listener.Start();
PS C:\Users\u> netstat -nat | grep 1234
TCP 0.0.0.0:1234 0.0.0.0:0 LISTENING InHost
PS C:\Users\u> $listener.Stop();
PS C:\Users\u> netstat -nat | grep 1234
PS C:\Users\u>
Исходя из этого, я пытался придумать команду, которая могла бы сделать то же самое в CentOS, но я не знаю почему, и я начал работать с Google, не найдя решения, которое решает эту проблему.
Ожидаемый ответ : Я приму и подтвердлю ответ, который содержит команду, которая может создать порт LISTEN, и после выполнения команды порт должен оставаться в состоянии LISTEN, то есть:
[user@host ~]$ ss -nat | grep 500
LISTEN 0 128 *:500 *:*
netstat -an --tcp | awk '/LISTEN/ {sub(".*:", "", $4); print $4}' | sort -nu
. На * BSD:netstat -an -f inet -p tcp | awk '/LISTEN/ {sub(".*\\.", "", $4); print $4}' | sort -nu
.