博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux常用的一些命令
阅读量:5313 次
发布时间:2019-06-14

本文共 11278 字,大约阅读时间需要 37 分钟。

Linux常用的一些命令

cd : 切换目录

cd /  切换到根目录cd ~  切换到home目录cd ../切换到父目录

ls 或 ll : 显示当前目录下的文件以及目录

ls  显示当前目录下的文件以及目录的简略信息ll 显示当前目录下的文件以及目录的详细信息

pwd : 查看当前目录的绝对路径信息

 

df 可以查看一级文件夹大小、使用比例、档案系统及其挂入点,但对文件却无能为力。

du 可以查看文件及文件夹的大小。

df -h  : 查看内存以及磁盘使用情况# 如果当前目录下文件和文件夹很多,使用不带参数du的命令,可以循环列出所有文件和文件夹所使用的空间。#这对查看究竟是那个地方过大是不利的,所以得指定深入目录的层数,参数:--max-depth=du -sh :系统只显示当前文件夹所占用的总空间du -h --max-depth=1 / du -h --max-depth=1 /*

 

ps 查看进程

ps命令查找与进程相关的PID号:    ps a 显示现行终端机下的所有程序,包括其他用户的程序。    ps -A 显示所有程序。    ps c 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。    ps -e 此参数的效果和指定"A"参数相同。    ps e 列出程序时,显示每个程序所使用的环境变量。    ps f 用ASCII字符显示树状结构,表达程序间的相互关系。    ps -H 显示树状结构,表示程序间的相互关系。    ps -N 显示所有的程序,除了执行ps指令终端机下的程序之外。    ps s 采用程序信号的格式显示程序状况。    ps S 列出程序时,包括已中断的子程序资料。    ps -t
<终端机编号>
指定终端机编号,并列出属于该终端机的程序的状况。 ps u 以用户为主的格式来显示程序状况。 ps x 显示所有程序,不以终端机来区分。 最常用的方法是ps aux,然后再通过管道使用grep命令过滤查找特定的进程,然后再对特定的进程进行操作。 ps aux | grep program_filter_word,ps -ef |grep tomcatps -ef|grep java|grep -v grep 显示出所有的java进程,去处掉当前的grep进程。

结果:

[root@cetc102 ~]# ps  PID TTY          TIME CMD 7535 pts/1    00:00:00 bash 7843 pts/1    00:00:00 ps[root@cetc102 ~]# ps -auxUSER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMANDroot         1  0.1  0.1 193848  6964 ?        Ss   10:30   0:02 /usr/lib/systemd/systemd --switched-root --system --deserialize 22root         2  0.0  0.0      0     0 ?        S    10:30   0:00 [kthreadd]root         3  0.0  0.0      0     0 ?        S    10:30   0:00 [ksoftirqd/0]root         5  0.0  0.0      0     0 ?        S<   10:30   0:00 [kworker/0:0H]root         7  0.0  0.0      0     0 ?        S    10:30   0:00 [migration/0]root         8  0.0  0.0      0     0 ?        S    10:30   0:00 [rcu_bh]root         9  0.0  0.0      0     0 ?        S    10:30   0:00 [rcu_sched]root        10  0.0  0.0      0     0 ?        S<   10:30   0:00 [lru-add-drain][root@cetc102 ~]# ps -efUID        PID  PPID  C STIME TTY          TIME CMDroot         1     0  0 10:30 ?        00:00:02 /usr/lib/systemd/systemd --switched-root --system --deserialize 22root         2     0  0 10:30 ?        00:00:00 [kthreadd]root         3     2  0 10:30 ?        00:00:00 [ksoftirqd/0]root         5     2  0 10:30 ?        00:00:00 [kworker/0:0H]root         7     2  0 10:30 ?        00:00:00 [migration/0]root         8     2  0 10:30 ?        00:00:00 [rcu_bh]root         9     2  0 10:30 ?        00:00:00 [rcu_sched]root        10     2  0 10:30 ?        00:00:00 [lru-add-drain]

 

kill : 结束进程命令

使用kill命令结束进程:kill pid   常用:kill-9 pid ,是强制结束进程  ,其中pid是进程号Linux下还提供了一个killall命令,可以直接使用进程的名字而不是进程标识号,例如:# killall -9 NAME

 

查看端口占用情况

CentOS下可以用netstat或者lsof查看,Windows下也可以用netstat查看,不过参数会不同

Linux:netstat -nap #会列出所有正在使用的端口及关联的进程/应用lsof -i :portnumber #portnumber要用具体的端口号代替,可以直接列出该端口听使用进程/应用一、检查端口被哪个进程占用netstat -lnp|grep 88   #80为端口号 netstat -nap|grep :22  #22为端口号二、查看进程的详细信息  ps 1777  #1777为pid三、杀掉进程kill -9 1777   #杀掉编号为1777的进程(请根据实际情况输入)Windows系统:netstat -nao #会列出端口关联的的进程号,可以通过任务管理器查看是哪个任务最后一列为程序PID,再通过tasklist命令:tasklist | findstr 2724再通过任务管理结束掉这个程序就可以了

netstat -nap  查看进程端口占用情况,结果如下所示

[root@cetc102 ~]# netstat -napActive Internet connections (servers and established)Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      1/systemd           tcp        0      0 0.0.0.0:6000            0.0.0.0:*               LISTEN      5476/X              tcp        0      0 192.168.122.1:53        0.0.0.0:*               LISTEN      5447/dnsmasq        tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      4995/sshd           tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      4994/cupsd          tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      5516/master         tcp        0      0 127.0.0.1:6010          0.0.0.0:*               LISTEN      7523/sshd: root@pts tcp        0     52 192.168.3.147:22        192.168.3.78:50737      ESTABLISHED 7523/sshd: root@pts tcp6       0      0 :::111                  :::*                    LISTEN      1/systemd           tcp6       0      0 :::6000                 :::*                    LISTEN      5476/X              tcp6       0      0 :::22                   :::*                    LISTEN      4995/sshd           tcp6       0      0 ::1:631                 :::*                    LISTEN      4994/cupsd          tcp6       0      0 ::1:25                  :::*                    LISTEN      5516/master         tcp6       0      0 ::1:6010                :::*                    LISTEN      7523/sshd: root@pts udp        0      0 0.0.0.0:5353            0.0.0.0:*                           4383/avahi-daemon:  udp        0      0 0.0.0.0:55007           0.0.0.0:*                           4383/avahi-daemon:  udp        0      0 192.168.122.1:53        0.0.0.0:*                           5447/dnsmasq        udp        0      0 0.0.0.0:67              0.0.0.0:*                           5447/dnsmasq        udp        0      0 0.0.0.0:111             0.0.0.0:*                           1/systemd           udp        0      0 0.0.0.0:723             0.0.0.0:*                           4365/rpcbind        udp6       0      0 :::111                  :::*                                1/systemd           udp6       0      0 :::723                  :::*                                4365/rpcbind        raw6       0      0 :::58                   :::*                    7           4483/NetworkManager Active UNIX domain sockets (servers and established)Proto RefCnt Flags       Type       State         I-Node   PID/Program name     Pathunix  3      [ ]         DGRAM                    10499    1/systemd            /run/systemd/notifyunix  2      [ ]         DGRAM                    10501    1/systemd            /run/systemd/cgroups-agentunix  2      [ ACC ]     STREAM     LISTENING     19465    1/systemd            /run/lvm/lvmetad.socketunix  2      [ ACC ]     STREAM     LISTENING     44510    5993/gnome-session-  @/tmp/.ICE-unix/5993unix  2      [ ACC ]     STREAM     LISTENING     43793    6183/ssh-agent       /tmp/ssh-aaJZT5QqWRLP/agent.5993unix  2      [ ACC ]     STREAM     LISTENING     10510    1/systemd            /run/systemd/journal/stdoutunix  5      [ ]         DGRAM                    10513    1/systemd            /run/systemd/journal/socket

 

查看端口是否放开:telnet、nc(netcat)

telnet只能测试TCPtelnet SERVER_IP portexample:telnet localhost 80nc测试TCP:nc -z SERVER_IP portexample:nc -z 192.192.193.211 22nc测试UDPnc -uz SERVER_IP portexample:nc -uz 192.192.193.211 22

 

查看进程、内存、CPU占用情况:

1.命令行输入top回车,然后按下大写M按照memory排序,按下大写P按照CPU排序。[root@cetc102 ~]# toptop - 11:23:47 up 53 min,  3 users,  load average: 0.01, 0.03, 0.05Tasks: 245 total,   1 running, 244 sleeping,   0 stopped,   0 zombie%Cpu(s):  0.2 us,  0.2 sy,  0.0 ni, 99.6 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 stKiB Mem :  3762336 total,   912940 free,   903752 used,  1945644 buff/cacheKiB Swap:  3932156 total,  3932156 free,        0 used.  2326104 avail Mem   PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                                             7430 cetc      20   0  759136  38708  24312 S   1.0  1.0   0:41.21 gnome-system-mo                                                                                     8151 root      20   0  162140   2404   1584 R   0.7  0.1   0:00.36 top                                                                                                    9 root      20   0       0      0      0 S   0.3  0.0   0:01.28 rcu_sched                                                                                              1 root      20   0  193848   6964   4208 S   0.0  0.2   0:02.09 systemd                                                                                                2 root      20   0       0      0      0 S   0.0  0.0   0:00.00 kthreadd                                                                                               3 root      20   0       0      0      0 S   0.0  0.0   0:00.04 ksoftirqd/0                                                                                            5 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kworker/0:0H                                                                                           7 root      rt   0       0      0      0 S   0.0  0.0   0:00.01 migration/0                                                                                            8 root      20   0       0      0      0 S   0.0  0.0   0:00.00 rcu_bh                                                                                                10 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 lru-add-drain                                                                                      2. ps -ef | grep "进程名"    ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid' | grep 进程名例如:# ps -ef | grep mongodb | grep -v greproot     18512     1  8 Feb28 ?        11:25:23 mongod -f mongodb.conf# ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid' | grep 18512 | grep -v grep18512 mongod          mongod -f mongodb.conf       8.0 6243952 7924496 Feb28 root      0 备注: pid:进程的IDvsz:进程占用的虚拟内存rsz:进程占用的物理内存[root@cetc102 ~]# ps -ef | grep sleep | grep -v greproot      8194  4470  0 11:26 ?        00:00:00 sleep 603. top -d 1 -p pid例如:# top -d 1 -p 18512top - 13:18:41 up 9 days, 19:53,  3 users,  load average: 0.00, 0.00, 0.00Tasks:   1 total,   0 running,   1 sleeping,   0 stopped,   0 zombieCpu(s):  0.3%us,  0.3%sy,  0.0%ni, 99.2%id,  0.0%wa,  0.0%hi,  0.3%si,  0.0%stMem:   8191244k total,  7929432k used,   261812k free,   122160k buffersSwap: 20479996k total,    16232k used, 20463764k free,  1316248k cached  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                       18512 root      20   0 7738m 6.0g 5472 S  1.0 76.3 685:26.98 mongodb     4. pmap -x pid例如:# pmap -x 1851218512:   mongod -f mongodb.confAddress           Kbytes     RSS   Dirty Mode   Mapping0000192c8d4c8000  655360       0       0 -----    [ anon ]00007f9228ae4000       4       0       0 -----    [ anon ] pmap -d pid 5.可以使用以下命令查使用内存最多的K个进程 方法1:ps -aux | sort -k4nr | head -K  如果是10个进程,K=10,如果是最高的三个,K=3  说明:ps -aux中(a指代all——所有的进程,u指代userid——执行该进程的用户id,x指代显示所有程序,不以终端机来区分) sort -k4nr中(k代表从第几个位置开始,后面的数字4即是其开始位置,结束位置如果没有,则默认到最后;n指代numberic sort,根据其数值排序;r指代reverse,这里是指反向比较结果,输出时默认从小到大,反向后从大到小。)。本例中,可以看到%MEM在第4个位置,根据%MEM的数值进行由大到小的排序。 head -K(K指代行数,即输出前几位的结果) |为管道符号,将查询出的结果导到下面的命令中进行下一步的操作。

  方法2-0:top (然后按下M,注意大写)

  方法2-1:top (然后按下m,注意小写) 

 

6. 可以使用下面命令查使用CPU最多的K个进程  

  方法1:ps -aux | sort -k3nr | head -K 

  方法2:top (然后按下P,注意大写)

查看内存使用情况:free -m

查看cpu使用情况: top看进程运行情况

查看磁盘以及分区情况: df -

查看网络情况: ifconfig

查看端口使用情况

#1.方法一    lsof -i:端口号    #2.方法二 netstat -apn|grep 端口号

服务器排查以及优化:

清理内存:#1.【推荐】释放网页缓存(To free pagecache),syncecho 1 > /proc/sys/vm/drop_caches#2.释放目录项和索引(To free dentries and inodes)syncecho 2 > /proc/sys/vm/drop_caches#3.释放网页缓存,目录项和索引(To free pagecache, dentries and inodes):syncecho 3 > /proc/sys/vm/drop_caches
 

查看网络使用情况:

 

转载于:https://www.cnblogs.com/zhangchao0515/p/11262983.html

你可能感兴趣的文章
【python】--迭代器生成器装饰器
查看>>
Pow(x, n)
查看>>
安卓当中的线程和每秒刷一次
查看>>
每日一库:Modernizr.js,es5-shim.js,es5-safe.js
查看>>
ajax连接服务器框架
查看>>
wpf样式绑定 行为绑定 事件关联 路由事件实例
查看>>
利用maven管理项目之POM文件配置
查看>>
TCL:表格(xls)中写入数据
查看>>
Oracle事务
查看>>
String类中的equals方法总结(转载)
查看>>
属性动画
查看>>
标识符
查看>>
给大家分享一张CSS选择器优选级图谱 !
查看>>
Win7中不能调试windows service
查看>>
通过httplib2 探索的学习的最佳方式
查看>>
快来熟练使用 Mac 编程
查看>>
Node.js 入门:Express + Mongoose 基础使用
查看>>
一步步教你轻松学奇异值分解SVD降维算法
查看>>
使用pager进行分页
查看>>
UVA - 1592 Database
查看>>