不断的总结工作中常用的Linux命令
1.查看端口被哪个进程占用
通过这个命令可以得到占用8085端口的进程号,然后通过ps -ef|grep 进程号得到进程的详细信息
netstat -anp | grep 8085
察看进程ID对应的进程占用的端口号
netstat -anp | grep 进程ID
察看进程名称对应的进程占用的端口号
netstat -anp | grep 进程名称
Window上查看端口号被哪个进程占用:
netstat -anp 80
2. 查看本机当前端口的使用情况
netstat -tln | less
分页列出本机当前占用了哪些端口
3. 在指定目录下的指定文件中查找指定字符串
find . - name "*.java" | xargs grep "main"
本例的作用是在当前目录下的所有java文件中搜索包含main的文件
4.建立软连接
ln -s 真实文件路径 软连接
ln -s lrwxrwxrwx /usr/jdks/jdk1.7.0_67/bin/java java
本例的作用是在当前目录下建立一个软连接文件java,它指向/usr/jdks/jdk1.7.0_67/bin/java
5. SSH远程copy
scp /home/tom/Hello.java [email protected]:/data/sourcecode
本例的作用是把本机的/home/tom/Hello.java远程copy至9.1.2.3的/data/sourcecode目录下。
scp /home/tom/*.java [email protected]:/data/sourcecode
本例的作用是把本机的/home/tom目录下的Java文件远程copy至9.1.2.3的/data/sourcecode目录下,sourcecode目录下的同名文件将被覆盖
6. tar命令
tar -cvzf mytar.tar.gz 文件或者目录 tar -xzvf mytar.tar.gz
7. 显示行号
cat -n Hello.java grep -n main Hello.java vi命令在命令下输入:set nu
8.ssh登录到另一台机器
a.从A机器登录到B机器,那么A机器需要得到B机器的授权
b.A机器生成ssh公钥和私钥
c.将A的生成的公钥保存到B机器的~/.ssh/authorized_keys文件中
d. ssh B的IP,那么登录是A使用公钥请求B的认证,因为B中的已授权Key中包含了A的公钥,授权通过
9.磁盘容量相关操作
a. 获得某个目录的磁盘容量
du -skh
b. 获得目录下文件和目录的大小
du -skh * //s表示summary,也就是不会进入目录的子目录
du -skh * --exclude=data --exclude=mnt --max-depth=0 //排除data和mnt目录
c. 查看分区容量情况
df -h
10.查看Linux版本
cat /proc/version
cat /etc/issue
11.根据毫秒数计算时间
date -d @时间秒数
12. 目录复制创建
a. cp -r dir1 dir2
说明:递归复制dir1到dir2目录,如果dir2不存在,那么相当于首先创建dir2,然后把dir1下的内容复制到dir2目录下;如果dir2已存在,那么dir1将复制到dir2目录底下
b. mkdir -p dir1/dir2/dir3
依次创建dir/dir2/dir3目录,层次关系
13.文本中显示每行重复数
sort data.txt | uniq -c
14. find命令
a. 查找当前及其子目录下所有的以.log结尾的文件
find . -name "*.log" | xargs -i ls -l {}
b. 查找当前及其子目录下所有的大小超过5M文件
find . -type f -size +50M | xargs -i ls -lh {}
c. 查找当前及其子目录下所有包含main的java文件
find . -name "*.java" | xargs -i grep main {}
15. 查看本地某个端口有几个Active的连接
netstat -an | sed '/^.*:11211[ ][ ]*ESTABLISHED.*/!d' | wc -l
16.jar中查找某个类是否存在
find . -name "*.jar" | xargs -i jar vtf {} | grep Parquet
17. 对文件进行排序
sort -r 文件名 | less
为文件中的行按照字典序排序,-r表示降序排列
18. 删除指定n天前的文件(如下是两天前的)
find . -mtime +2 -type f | xargs rm -rf
19. 下载
sz -b 文件 安装sz和rz: yum search sz yum install lrzsz
20. 查看CPU个数
物理CPU个数
cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l
逻辑CPU个数
cat /proc/cpuinfo | grep "processor" | wc -l
每个物理CPU的内核数
cat /proc/cpuinfo | grep "cpu cores" | wc -l
21.内存容量
命令:
free -m
结果:
total used free shared buffers cached Mem: 31883 1631 30251 0 160 727 -/+ buffers/cache: 744 31138 Swap: 4095 0 4095
22. 查看内存总容量以及空闲容量
grep MemTotal /proc/meminfo | awk '{print $2}' grep MemFree /proc/meminfo | awk '{print $2}'
23. 域名与所有绑定的IP的映射
nslookup 域名