千家信息网

linux中经典命令有哪些

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章给大家分享的是有关linux中经典命令有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1.删除0字节文件find -type f -size 0 -exec r
千家信息网最后更新 2026年11月02日linux中经典命令有哪些

这篇文章给大家分享的是有关linux中经典命令有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

1.删除0字节文件
find -type f -size 0 -exec rm -rf {} \;

2.查看进程
按内存从大到小排列
ps -e -o "%C : %p : %z : %a"|sort -k5 -nr

3.按cpu利用率从大到小排列
ps -e -o "%C : %p : %z : %a"|sort -nr

4.打印说cache里的URL
grep -r -a jpg /data/cache/* | strings | grep "http:" | awk -F'http:' '{print "http:"$2;}'

5.查看http的并发请求数及其TCP连接状态:
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'


6. sed -i '/Root/s/no/yes/' /etc/ssh/sshd_config sed在这个文里Root的一行,匹配Root一行,将no替换成yes.

7.1.如何杀掉mysql进程:
ps aux|grep mysql|grep -v grep|awk '{print $2}'|xargs kill -9 (从中了解到awk的用途)
pgrep mysql |xargs kill -9 [网友:&FROST]

killall -TERM mysqld

kill -9 `cat /usr/local/apache2/logs/httpd.pid` 试试查杀进程PID


8.显示运行3级别开启的服务:
ls /etc/rc3.d/S* |cut -c 15- (从中了解到cut的用途,截取数据)

9.如何在编写SHELL显示多个信息,用EOF
cat << EOF
+--------------------------------------------------------------+
| === Welcome to Tunoff services === |
+--------------------------------------------------------------+
EOF

10. for 的巧用(如给mysql建软链接)
cd /usr/local/mysql/bin
for i in *
do ln /usr/local/mysql/bin/$i /usr/bin/$i
done

11. 取IP地址:
ifconfig eth0 |grep "inet addr:" |awk '{print $2}'|cut -c 6- 或者

ifconfig | grep 'inet addr:'| grep -v '127.0.0.1' | cut -d: -f2 | awk '{ print $1}'

12.内存的大小:
free -m |grep "Mem" | awk '{print $2}'


13.
netstat -an -t | grep ":80" | grep ESTABLISHED | awk '{printf "%s %s\n",$5,$6}' | sort

14.查看Apache的并发请求数及其TCP连接状态:
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

15.因为同事要统计一下服务器下面所有的jpg的文件的大小,写了个shell给他来统计.原来用xargs实现,但他一次处理一部分,搞的有多个总和....,下面的命令就能解决啦.
find / -name *.jpg -exec wc -c {} \;|awk '{print $1}'|awk '{a+=$1}END{print a}'


CPU的数量(多核算多个CPU,cat /proc/cpuinfo |grep -c processor)越多,系统负载越低,每秒能处理的请求数也越多。

--------------------------------------------------------------------------------------------------------------------
16 CPU负载 # cat /proc/loadavg
检查前三个输出值是否超过了系统逻辑CPU的4倍。

18 CPU负载 #mpstat 1 1
检查%idle是否过低(比如小于5%)

19 内存空间 # free
检查free值是否过低 也可以用 # cat /proc/meminfo

20 swap空间 # free
检查swap used值是否过高 如果swap used值过高,进一步检查swap动作是否频繁:
# vmstat 1 5
观察si和so值是否较大

21 磁盘空间 # df -h
检查是否有分区使用率(Use%)过高(比如超过90%) 如发现某个分区空间接近用尽,可以进入该分区的挂载点,用以下命令找出占用空间最多的文件或目录:
# du -cks * | sort -rn | head -n 10

22 磁盘I/O负载 # iostat -x 1 2
检查I/O使用率(%util)是否超过100%

23 网络负载 # sar -n DEV
检查网络流量(rxbyt/s, txbyt/s)是否过高

24 网络错误 # netstat -i
检查是否有网络错误(drop fifo colls carrier) 也可以用命令:# cat /proc/net/dev

25 网络连接数目 # netstat -an | grep -E "^(tcp)" | cut -c 68- | sort | uniq -c | sort -n

26 进程总数 # ps aux | wc -l
检查进程个数是否正常 (比如超过250)

27 可运行进程数目 # vmwtat 1 5
列给出的是可运行进程的数目,检查其是否超过系统逻辑CPU的4倍


28 进程 # top -id 1
观察是否有异常进程出现

29 网络状态 检查DNS, 网关等是否可以正常连通

30 用户 # who | wc -l
检查登录用户是否过多 (比如超过50个) 也可以用命令:# uptime

31 系统日志 # cat /var/log/rflogview/*errors
检查是否有异常错误记录 也可以搜寻一些异常关键字,例如:
# grep -i error /var/log/messages
# grep -i fail /var/log/messages
# egrep -i 'error|warn' /var/log/messages 查看系统异常
32 核心日志 # dmesg
检查是否有异常错误记录

33 系统时间 # date
检查系统时间是否正确

34 打开文件数目 # lsof | wc -l
检查打开文件总数是否过多

35 日志 # logwatch -print 配置/etc/log.d/logwatch.conf,将 Mailto 设置为自己的email 地址,启动mail服务 (sendmail或者postfix),这样就可以每天收到日志报告了。
缺省logwatch只报告昨天的日志,可以用# logwatch -print -range all 获得所有的日志分析结果。
可以用# logwatch -print -detail high 获得更具体的日志分析结果(而不仅仅是出错日志)。

36.杀掉80端口相关的进程
lsof -i :80|grep -v "PID"|awk '{print "kill -9",$2}'|sh

37.清除僵死进程。
ps -eal | awk '{ if ($2 == "Z") {print $4}}' | kill -9

38.tcpdump 抓包 ,用来防止80端口被人***时可以分析数据
# tcpdump -c 10000 -i eth0 -n dst port 80 > /root/pkts

39.然后检查IP的重复数 并从小到大排序 注意 "-t\ +0" 中间是两个空格
# less pkts | awk {'printf $3"\n"'} | cut -d. -f 1-4 | sort | uniq -c | awk {'printf $1" "$2"\n"'} | sort -n -t\ +0

40.查看有多少个活动的 php-cgi进程
netstat -anp | grep php-cgi | grep ^tcp | wc -l

41.利用iptables对应简单***
netstat -an | grep -v LISTEN | awk '{print $5}' |grep -v 127.0.0.1|grep -v 本机ip|sed "s/::ffff://g"|awk 'BEGIN { FS=":" } { Num[$1]++ } END { for(i in Num) if(Num>8) { print i} }' |grep '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}'| xargs -i[] iptables -I INPUT -s [] -j DROP

Num>8部分设定值为阀值,这条句子会自动将netstat -an 中查到的来自同一IP的超过一定量的连接的列入禁止范围。本机ip改成你的服务器的ip地址


查看软件xxx安装内容

dpkg -L xxx


查找软件

apt-cache search 正则表达式

查找文件属于哪个包


dpkg -S filename

查询软件xxx依赖哪些包


apt-cache depends xxx

查询软件xxx被哪些包依赖


apt-cache rdepends xxx

增加一个光盘源


sudo apt-cdrom add

系统升级


sudo apt-get updatesudo apt-get dist-upgrade

清除所以删除包的残余配置文件


dpkg -l |grep ^rc|awk '{print $2}' |tr ["\n"] [" "]|sudo xargs dpkg -P -

系统

查看内核


uname -a

查看Ubuntu版本


cat /etc/issue

查看内核加载的模块


lsmod

查看PCI设备


lspci

查看USB设备


lsusb

查看网卡状态


sudo ethtool eth0

查看CPU信息


cat /proc/cpuinfo

显示当前硬件信息


lshw

硬盘

查看硬盘的分区


sudo fdisk -l

查看硬盘剩余空间


df -h df -H

查看目录占用空间


du -hs 目录名

优盘没法卸载


syncfuser -km /media/usbdisk

内存

查看当前的内存使用情况


free -l

进程

查看当前有哪些进程


ps -A

杀死一个进程


kill 进程号(就是ps -A中的第一列的数字)或者 killall 进程名

强制杀死一个进程(在上面的杀死进程不成功的时候使用)


kill -9 进程号或者 killall -9 进程名

查看当前进程的实时状况


top

查看进程打开的文件


lsof -p

ADSL

配置 ADSL


sudo pppoeconf

ADSL手工拨号


sudo pon dsl-provider

激活 ADSL


sudo /etc/ppp/pppoe_on_boot

断开 ADSL


sudo poff

查看拨号日志


sudo plog

网络

根据IP查网卡地址


arping IP地址

查看当前IP地址


sudo ifconfig eth0 |awk '/inet addr/ {split($2,x,":");print x[2]}'

查看当前外网的IP地址


w3m -no-cookie -dump ip.loveroot.com |grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}'

查看当前监听80端口的程序


lsof -i :80

查看当前网卡的物理地址


sudo arp -a | awk '{print $4}'sudo ifconfig eth0 | head -1 | awk '{print $5}'

立即让网络支持nat


sudo echo 1 > /proc/sys/net/ipv4/ip_forwardsudo iptables -t nat -I POSTROUTING -j MASQUERADE

查看路由信息


netstat -rnsudo route -n

手工增加删除一条路由


sudo route add -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1sudo route del -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1

修改网卡MAC地址的方法


sudo ifconfig eth0 down #关闭网卡sudo ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE #然后改地址sudo ifconfig eth0 up #然后启动网卡

服务

添加一个服务


sudo update-rc.d 服务名 defaults 99

删除一个服务


sudo update-rc.d 服务名 remove

临时重启一个服务


/etc/init.d/服务名 restart

临时关闭一个服务


/etc/init.d/服务名 stop

临时启动一个服务


/etc/init.d/服务名 start

设置

配置默认Java使用哪个


sudo update-alternatives --config java

修改用户资料


sudo chfn userid

给apt设置代理


export http_proxy=http://xx.xx.xx.xx:xxx

修改系统登录信息


sudo vim /etc/motd

中文

转换文件名由GBK为UTF8


sudo apt-get install convmv convmv -r -f cp936 -t utf8 --notest --nosmart *

转换文件内容由GBK为UTF8


iconv -f gbk -t utf8 $i > newfile

文件

快速查找某个文件


whereis filenamefind 目录 -name 文件名

查看文件类型


file filename

显示xxx文件倒数6行的内容


tail -n 6 xxx

查找包含xxx字符串的文件


grep -l -r xxx .

查找关于xxx的命令


apropos xxxman -k xxx

通过ssh传输文件


scp -rp /path/filename username@remoteIP:/path #将本地文件拷贝到服务器上scp -rp username@remoteIP:/path/filename /path #将远程文件从服务器下载到本地

查看某个文件被哪些应用程序读写


lsof 文件名

压缩

解压缩 xxx.tar.gz


tar -zxvf xxx.tar.gz

解压缩 xxx.tar.bz2


tar -jxvf xxx.tar.bz2

压缩aaa bbb目录为xxx.tar.gz


tar -zcvf xxx.tar.gz aaa bbb

压缩aaa bbb目录为xxx.tar.bz2


tar -jcvf xxx.tar.bz2 aaa bbb

Nautilus

显示隐藏文件


Ctrl+h

显示地址栏


Ctrl+l

特殊 URI 地址


* computer:/// - 全部挂载的设备和网络* network:/// - 浏览可用的网络* burn:/// - 一个刻录 CDs/DVDs 的数据虚拟目录* smb:/// - 可用的 windows/samba 网络资源* x-nautilus-desktop:/// - 桌面项目和图标* file:/// - 本地文件* trash:/// - 本地回收站目录* ftp:// - FTP 文件夹* ssh:// - SSH 文件夹

查看已安装字体


在nautilus的地址栏里输入"fonts:///",就可以查看本机所有的fonts

程序

详细显示程序的运行信息


strace -f -F -o outfile

日期和时间

设置日期


#date -s mm/dd/yy

设置时间


#date -s HH:MM

将时间写入CMOS


hwclock --systohc

读取CMOS时间


hwclock --hctosys

控制台

不同控制台间切换


Ctrl + ALT + ←Ctrl + ALT + →

指定控制台切换


Ctrl + ALT + Fn(n:1~7)

控制台下滚屏


SHIFT + pageUp/pageDown

控制台抓图


setterm -dump n(n:1~7)

数据库

mysql的数据库存放在地方


/var/lib/mysql

从mysql中导出和导入数据


mysqldump 数据库名 > 文件名 #导出数据库mysqladmin create 数据库名 #建立数据库mysql 数据库名 < 文件名 #导入数据库

忘了mysql的root口令怎么办


sudo /etc/init.d/mysql stopsudo mysqld_safe --skip-grant-tables &sudo mysqladmin -u user password 'newpassword''sudo mysqladmin flush-privileges

修改mysql的root口令


sudo mysqladmin -uroot -p password '你的新密码'

其它

下载网站文档


wget -r -p -np -k http://www.21cn.com· -r:在本机建立服务器端目录结构;· -p: 下载显示HTML文件的所有图片;· -np:只下载目标站点指定目录及其子目录的内容;· -k: 转换非相对链接为相对链接。

感谢各位的阅读!关于"linux中经典命令有哪些"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

文件 进程 服务 检查 地址 数据 网络 目录 系统 日志 命令 数据库 空间 信息 内容 时间 网卡 内存 文件名 服务器 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技图片 蓝思科技飞鸽互联网 互联网和科技技术 互联网是不是新科技 狮子座互联网科技 互联网与新科技 安徽鑫晟辉互联网科技 佩信高科技互联网 恒生科技互联网指数分析 富国互联网科技创新基金 成都玖崟互联网科技有限公司乐商圈怎么样 互联网科技创新服务 昊天互联网科技有限公司 语蝶互联网科技有限公司 赶超互联网科技 微信多开 健康食品互联网创新科技园项目 国大互联网教育科技有限公司工作 锡山区互联网智能科技产品供应 新氧科技和美国互联网有关系吗 中国新注册互联网科技 山东特亿宝互联网科技有限公司 苏州找大状互联网科技有限公司 朗新科技与工业互联网 一五八零互联网科技 互联网科技公司做什么 互联网系的金融科技公司 河南住房之家互联网科技 互联网公司黑科技创始人 半导体是互联网高科技吗 互联网科技职业技能培训学校
0