Кажется, существует некоторый беспорядок вокруг Оболочки Bourne. Оболочка Bourne была оболочкой Unix несколько десятилетий назад в дни предPOSIX. В наше время "sh" является реализацией или другой из оболочки, которая реализует спецификацию POSIX, среди которой у нас есть удар, pdksh, AT&T ksh, более новые оболочки Almquist и их производные, которые были сделаны совместимым POSIX (включая "sh" некоторого BSDs, другой BSDs sh бывший основанный pdksh и пепел Debian (тире)). Даже zsh имеет режим, в котором это - главным образом совместимый POSIX.
Оболочка Bourne не является совместимым POSIX, и не может быть найдена на многих систему в наше время. Где Оболочка Bourne найдена или где это не, всегда будет "sh", который является совместимым POSIX (и не будет Оболочка Bourne), обычно в /bin
в то время как известным (раздражающим) исключением является Солярис.
Обратите внимание, что перед Оболочкой Bourne, и который мы обсуждаем 30 лет назад, "sh" был оболочкой Thompson. Мы не пишем сценарии, совместимые с оболочкой Thompson больше. Точно так же мы должны прекратить думать о "sh" как об Оболочке Bourne.
Теперь "sh" является спецификацией, не многими когда-то несовместимые варианты реализации. Это делает намного легче записать портативные сценарии. Просто следуйте за спецификацией.
Это идет для "sh" и всех стандартных утилит (sed, сокращение, TR...)
Вы могли попробовать sudo lsof -i :8080
. Это перечислит процессы, делающие что-либо с Вашим портом.
Лучше использовать:
netstat -ant | egrep :8080
Но его параметры:
-a : all
-t TCP protocol
-n numeric, don't use name
внимание к моему примеру для порта 80:
tcp 0 1 192.168.1.7:57511 182.50.136.239:80 SYN_SENT
tcp 0 1 192.168.1.7:57547 182.50.136.239:80 SYN_SENT
tcp 0 1 192.168.1.7:57512 182.50.136.239:80 SYN_SENT
tcp 0 1 192.168.1.7:57514 182.50.136.239:80 SYN_SENT
tcp 0 1 192.168.1.7:57562 182.50.136.239:80 SYN_SENT
tcp 0 1 192.168.1.7:57565 182.50.136.239:80 SYN_SENT
tcp 0 1 192.168.1.7:57513 182.50.136.239:80 SYN_SENT
tcp 0 0 192.168.1.7:39191 198.252.206.25:80 ESTABLISHED
tcp 0 1 192.168.1.7:57563 182.50.136.239:80 SYN_SENT
tcp 0 1 192.168.1.7:57545 182.50.136.239:80 SYN_SENT
tcp 0 0 192.168.1.7:39205 198.252.206.25:80 ESTABLISHED
tcp 0 1 192.168.1.7:57546 182.50.136.239:80 SYN_SENT
tcp 0 1 192.168.1.7:57564 182.50.136.239:80 SYN_SENT
tcp 0 0 192.168.1.7:49217 198.252.206.16:80 ESTABLISHED
tcp 0 0 192.168.1.7:39247 198.252.206.25:80 ESTABLISHED
tcp 957 0 192.168.1.7:42327 198.252.206.25:80 ESTABLISHED
Первый столбец является протоколом, во-вторых: очередь rec (числовая), 3th: отправьте очередь (числовую), 4-ю: локальный адрес + порт, 5-й: внешний host:port, 6-й: квитирование указывает те, которые СЛУШАЮТ, SYN и так далее.
Даже можно использовать:
netstat -antp |egrep tomcat
Я пример mysql для Вас:
root@debian:/home/mohsen# netstat -antp |egrep mysql
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 24783/mysqld
Новый столбец был добавлен, да pid/porgram
.