×
成都创新互联公司是一家专注于成都做网站、网站设计与策划设计,衡水网站建设哪家好?成都创新互联公司做网站,专注于网站建设10余年,网设计领域的专业建站公司;建站业务涵盖:衡水等地区。衡水做网站价格咨询:18982081108
loading..
资讯 |
安全 |
论坛 |
下载 |
读书 |
程序开发 |
数据库 |
系统 |
网络 |
电子书 |
站长学院 |
源码 |
QQ |
专栏 |
考试 |
手册 |
Linux|
Windows|
Dos命令行|
浏览器|
虚拟机|
其他|
首页 系统 Linux 正文
Linux下查看端口占用情况
2012-10-29 11:05:47 我来说两句 作者:samjavaeye
收藏
我要投稿
Linux下查看端口占用情况
用启动服务的账号登录,然后运行命令:
lsof -i:端口号
例如:
Linux代码
[root@SonarServer1 user0]# lsof -i:80
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 19408 root 144u IPv6 183572842 0t0 TCP *:http (LISTEN)
也可使用命令:
netstat -apn|grep 端口号
例如:
Linux代码
[root@SonarServer1 user0]# netstat -apn|grep 80
tcp 0 0 :::80 :::* LISTEN 19408/java
找到进程号以后,再使用以下命令查看详细信息:
ps -aux|grep 进程号
Linux代码
[root@SonarServer1 user0]# ps -aux|grep 19408
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ
root 19408 3.8 2.2 2520992 357368 ? Sl 10:29 0:27
java -Djava.awt.headless=true -XX:MaxPermSize=128m -Xms256m -Xmx512m
-Djava.library.path=./lib -classpath
../../lib/servlet-api-2.5-20081211.jar:../../lib/jetty-util-6.1.25.jar:../../lib/activation-1.1.jar:../../lib/geronimo-spec-jta-1.0-M1.jar:../../lib/wrapper-3.2.3.jar:../../lib/commons-io-2.0.1.jar:../../lib/jetty-6.1.25.jar:../../lib/sonar-application-3.2.jar:../../lib/jetty-naming-6.1.25.jar:../../lib/jetty-plus-6.1.25.jar:../../:../../extensions/jdbc-driver/mysql/mysql-connector-java-5.1.18.jar:../../extensions/jdbc-driver/postgresql/postgresql-9.0-801.jdbc3.jar:../../extensions/jdbc-driver/mssql/jtds-1.2.4.jar
-Dwrapper.key=n24m_l80HqD33MJi -Dwrapper.port=32000
-Dwrapper.jvm.port.min=31000 -Dwrapper.jvm.port.max=31999
-Dwrapper.pid=19406 -Dwrapper.version=3.2.3
-Dwrapper.native_library=wrapper -Dwrapper.service=TRUE
-Dwrapper.cpu.timeout=10 -Dwrapper.jvmid=1
org.tanukisoftware.wrapper.WrapperSimpleApp
org.sonar.application.StartServer
root 19460 0.0 0.0 105476 948 pts/5 S+ 10:41 0:00 grep 19408
1.列出文件清单命令:ls
ls命令能够列出当前目录下的所有内容。ls 命令的执行方式为:
# ls [-选项] [文件名或者目录名]
进入到Linux命令行中后,我们至少要知道当前所处的位置有哪些内容,这些信息就可以使用ls命令来获得。
在Linux中,ls命令是最常使用的命令之一,因为在命令行下要随时查看目录内容。如果不加任何选项的话,ls命令仅列出当前目录下的文件和目录名,例如,想要查看/etc目录下的内容,可以使用下列命令:
# ls /etc
如果想要列出当前目录下所有文件,则可以使用下列命令:
# ls -a
2、cat命令
功能:在标准输出上显示文件。
语法:cat [-vTEuAte] 文件
例子: cat example.txt
cat -A exam2.txt
cat file1 file2 file2
3、more命令
功能:在终端屏幕按屏显示文本文件。
语法: more [-pcdls] 文件
例子: more example.c
more -dc example.c
more -c -10 example.c
4、less命令
less命令的功能几乎和more命令一样,也是用来按页显示文件,不同之处在于less命令在显示文件时允许用户既
可以向前又可以向后翻阅文件。
5、head命令
功能:显示指定文件的前若干行。缺省设置为显示10行
语法:head [-n] 文件
例子: head example.c
head -3 example.c
6、tail命令
功能:显示指定文件的末尾若干行。缺省设置为显示10行
语法:tail [+ / - num ] [参数] 文件
+num 从第num行以后开始显示。- num 从距文件尾num行处开始显示。
例子: tail example.c
tail -4 example.c
7、grep、fgrep和egrep命令
功能:
这组命令以指定模式搜索文件,并通知用户在什么文件中搜索到与指定的模式匹配的字符串,并打印出所有包含该字符串的文本行,在该文本行的最前面是该行所在的文件名。grep命令一次只能搜索一个指定的模式;egrep命令检索扩展的正则表达式(包括表达式组和可选项);fgrep命令检索固定字符串,它不识别正则表达式,是快速搜索命令。
语法:
grep [-EFbcihlnvxef] [查找模式] [文件名1,文件名2,……]
egrep [选项] [查找模式] [文件名1,文件名2,……]
fgrep [选项] [查找模式] [文件名1,文件名2,……]
例子: grep "text file" example
grep data *
grep goto *.c
在很多人学习Linux命令行,会经常遇到command not found 错误,出现上述错误主要有以下几种情况:
命令书写错误,如有些人将Windows命令与Linux命令搞错,如查看ip相关信息,Linux命令行应该为ifconfig
环境变量没有配置好,这里一般有两种解决方法,第一,可以切换到root用户执行命令,第二种,就是配置用户的环境变量,其指令如下:
export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
----------------------------分割线----------------------------
Linux命令找不到?(找不到命令)
这个问题其实很简单,如果你在终端输入一个命令,而系统提示你说命令没有找到(Command not found)的话,要么是因为你没有装相应的软件包,要么就是因为路径设置的问题。如果是因为软件包的问题,那没有别的好说的,安装相应的软件包就好了。而另外一种情况,则需要对用户的路径进行设置。这里针对普通用户和超级用户分开介绍,以 RedHat 些列为例。
一、普通用乎如果一些程序没有安装在系统默认的路径(ie /bin/, /usr/bin, /usr/local/bin/ )里面,这个时候普通用户想要调用这些命令,必须设定路径。方法很简单:以普通用户登录,然后在终端输入:
vi ~/.bash_profile
会出现如下的内容:# .bash_profile
export PATH此时,只要在export PATH前面加入自己的路径即可,例如我的修改后如下:[ @localhost bin]$ cat ~/.bash_profile# .bash_profile# Get the aliases and functionsif [ -f ~/.bashrc ]; then . ~/.bashrcfi# User specific environment and startup programsPATH=$PATH:/usr/local/programs/crosstool/gcc-4.0.2-glibc-2.3.6/arm-linux-gnu/bin/export PATH
二、超级用户这里主要是一些用在系统管理上的命令,例如ifconfig, route等等, 他们位于/sbin, 或/usr/sbin/下。其实这些命令本身就没有任何问题,软件包早已安装完毕,路径设置也没有丝毫问题。而出现Command not found的原因在于:在终端使用su变成超级用户的时候没有将root的路径(环境)一起切换过来,从而导致身份虽然已经是root,但是工作的环境和路径依旧是普通用户的。这种问题的解决方法有两个,其一是按照(一)里面提到的,对普通用户的工作路径进行修改,但是这样比较麻烦。其二则简单的多,只要在使用su的时候在其后家上一个空格和”-“ ,即将su改为 su - 。这样就可以在成为root的同时将root的工作路径也一起切换过来了。如果你已经使用su变成了root,那也没有关系,只要在输入一下su - 就好了。
原文地址: