Linux常用的shell命令汇总

简介:

今天我们一起来看看Linux系统下常用的系统级命令,包括软硬件查看、修改命令,有CPU、内存、硬盘、网络、系统管理等命令。


说明:所有命令是在Centos 6.4 64位的虚拟机系统进行测试的。这些命令是需要大家深深的记在脑海里的哦


硬件篇



CPU相关


lscpu            

#查看的是cpu的统计信息.


cat /proc/cpuinfo      

#查看CPU信息详细信息,如每个CPU的型号,主频等


内存相关


free -m              

#概要查看内存情况  这里的单位是MB


cat /proc/meminfo      

#查看内存详细信息


磁盘相关


lsblk              

#查看硬盘和分区分布,显示很直观


df -h              

#查看各分区使用情况


cat /proc/partitions      

#查看硬盘和分区


mount | column -t        

#查看挂接的分区状态


网卡相关


lspci | grep -i 'eth'      

#查看网卡硬件信息


ifconfig -a            

#查看系统的所有网络接口


ethtool eth0          

#如果要查看某个网络接口的详细信息,例如eth0的详细参数和指标


软件篇



内核相关


uname -a                

#查看版本当前操作系统内核信息


cat /proc/version          

#查看当前操作系统版本信息


cat /etc/issue          

#查看版本当前操作系统发行版信息


cat /etc/redhat-release      

#同上


cat /etc/SuSE-release        

#suse系统下才可使用


lsb_release -a            

#用来查看linux兼容性的发行版信息


lsmod                

#列出加载的内核模块


网络


ifconfig                

#查看所有网络接口的属性


iptables -L              

#查看防火墙设置


service iptables status      

#查看防火墙状态


service iptables stop      

#关闭防火墙


route -n                

#查看路由表


netstat -lntp            

#查看所有监听端口


netstat -antp            

#查看所有已经建立的连接


netstat -s              

#查看网络统计信息进程


netstat -at              

#列出所有tcp端口


netstat -au              

#列出所有udp端口


netstat -lt            

#只列出所有监听tcp端口


系统管理


top                    

#查看系统所有进程的详细信息,比如CPU、内存等,信息很多!


df -lh                

#查看硬盘大小及使用率


mount                  

#挂接远程目录、NFS、本地共享目录到linux下


hostname              

#查看/修改计算机名


w                      

#查看活动用户


id                    

#查看指定用户信息


last                  

#查看用户登录日志


cut -d: -f1 /etc/passwd      

#查看系统所有用户


cut -d: -f1 /etc/group      

#查看系统所有组


crontab -l              

#查看当前用户的计划任务服务


chkconfig –list        

#列出所有系统服务


chkconfig –list | grep on    

#列出所有启动的系统服务程序


rpm -qa                

#查看所有安装的软件包


uptime                  

#查看系统运行时间、用户数、负载


/sbin/chkconfig --list      

#查看系统自动启动列表


/sbin/chkconfig –add mysql    

#把MySQL添加到系统的启动服务组里面


文件相关


ls -lht                

#列出一个文件夹下所有文件及大小、访问权限


du -sh <dir>            

#查看指定目录的大小


du -lh <dir>          

#查看指定目录及各文件的大小


ln -s                  

#建立软链接


进程相关


pstree -p pid          

#查看一个进程下的所有线程


pstree  -a              

#显示所有进程的所有详细信息,遇到相同的进程名可以压缩显示。


ps -ef                

#查看所有进程


kill -9 pid            

#杀死进程


kill all test          

#杀死进程


kill -9 `pgrep test`    

#杀死进程


./test.sh &            

#使程序在后台运行


nohup ./test.sh &      

#使程序在后台运行


压缩解压缩


zip -r dir.zip dir file  

#将目录dir、文件file等压缩到zip包,


zip -re dir.zip dir file

#创建zip包,且加密


unzip dir.zip            

#解压


tar -zcvf dir.tar.gz dir file    

#将目录dir、文件file等压缩到tar包


tar -xf dir.tar.gz      

#解压


screen命令


screen命令组最大的好处就是当你的shell退出或关闭后,你运行的服务不会关系,也就是说,我们可以在screen里开启一组服务,且不受终端断开的影响。


screen -S test          

#创建一个名字为test的screen


screen -r test          

#打开名字为test的screen


screen -r pid          

#打开进程号为pid的screen


screen -ls              

#列出所有的screen


ctrl + a,d              

#当在一个screen时,退出screen


ctrl + a,n              

#当在一个screen时,切换到下一个窗口


ctrl + a,c            

#当在一个screen时,创建一个新的窗口


scp命令


scp local_file remote_username@remote_ip:remote_dir    

#拷贝本地文件到远程机器上


scp -r local_dir remote_username@remote_ip:remote_dir  

#拷贝本地整个目录到远程机器上


软件包安装管理命令


假设你想要安装的软件包叫做app,注意,这里的命令通常需要sudo或者root权限。


//centos系统、redhat系统

rpm -qa | grep app      

#查找本机是否安装了app;


rpm -ivh app.rpm        

#假设你有app的rpm包,这样直接安装


sudo yum install app  

#否则就在线安装


yum update app          

#更新app


rpm -e app              

#删除已安装的app包


//suse、opensuse系统

zypper search app      

#查找本机是否安装了app;


zypper install app    

#安装


zypper update app      

#更新


zypper remove app    

#删除


zypper lr              

#列出所有已定义的安装源。


zypper    ar            

#添加新安装源。


zypper    rr            

#删除指定的安装源


zypper    mr          

#修改指定的安装源


//ubuntu系统

apt-get install app    

#安装


apt-get update app    

#更新


apt-get remove app      

#删除


apt-cache search app  

#搜索软件包


dpkg -i app.deb        

#假设你有app的deb包,这样直接安装



本文转自 维度2018 51CTO博客,原文链接:http://blog.51cto.com/xinsz08/1794730,如需转载请自行联系原作者

相关文章
|
6天前
|
安全 网络协议 Linux
linux必学的60个命令
Linux是一个功能强大的操作系统,提供了许多常用的命令行工具,用于管理文件、目录、进程、网络和系统配置等。以下是Linux必学的60个命令的概览,但请注意,这里可能无法列出所有命令的完整语法和选项,仅作为参考
380 2
|
1天前
|
运维 关系型数据库 MySQL
day03-Linux运维-Xshell优化和Linux系统命令入门(2)
day03-Linux运维-Xshell优化和Linux系统命令入门(2)
day03-Linux运维-Xshell优化和Linux系统命令入门(2)
|
1天前
|
运维 Linux Shell
day03-Linux运维-Xshell优化和Linux系统命令入门(1)
day03-Linux运维-Xshell优化和Linux系统命令入门(1)
day03-Linux运维-Xshell优化和Linux系统命令入门(1)
|
1天前
|
运维 Linux Shell
day02-Linux运维-系统介绍与环境搭建_硬件 系统核心 解释器shell 外围操作系统
day02-Linux运维-系统介绍与环境搭建_硬件 系统核心 解释器shell 外围操作系统
|
1天前
|
运维 程序员 Linux
运维最全Linux 基本防火墙设置和开放端口命令,2024年最新程序员如何自我学习和成长
运维最全Linux 基本防火墙设置和开放端口命令,2024年最新程序员如何自我学习和成长
|
1天前
|
运维 Ubuntu 安全
运维最全linux 命令行操作串口_linux串口命令(2),2024年最新Linux运维源码的Binder权限是如何控制
运维最全linux 命令行操作串口_linux串口命令(2),2024年最新Linux运维源码的Binder权限是如何控制
运维最全linux 命令行操作串口_linux串口命令(2),2024年最新Linux运维源码的Binder权限是如何控制
|
1天前
|
运维 Linux Perl
运维最全linux 命令行操作串口_linux串口命令(1),21年Linux运维面经分享
运维最全linux 命令行操作串口_linux串口命令(1),21年Linux运维面经分享
运维最全linux 命令行操作串口_linux串口命令(1),21年Linux运维面经分享
|
1天前
|
消息中间件 运维 Linux
运维最全Linux 命令大全之scp命令_linux scp 指令(1),2024年最新从消息中间件看分布式系统的多种套路
运维最全Linux 命令大全之scp命令_linux scp 指令(1),2024年最新从消息中间件看分布式系统的多种套路
|
1天前
|
Linux Shell
Linux下su与su -命令的本质区别_6、用su命令和su -切换账户时,两个命令有什么区别 (1)
Linux下su与su -命令的本质区别_6、用su命令和su -切换账户时,两个命令有什么区别 (1)
Linux下su与su -命令的本质区别_6、用su命令和su -切换账户时,两个命令有什么区别 (1)
|
1天前
|
Linux Shell C语言
linux下configure,make(makefile),cmake命令详解-makefile和CMakeList
linux下configure,make(makefile),cmake命令详解-makefile和CMakeList