Linux下常用的命令记录
本文章记录我在linux系统下常用或有用的系统级命令,包括软硬件查看、修改命令,有CPU、内存、硬盘、网络、系统管理等命令。但本文不打算介绍生僻命令,也不介绍各个linux发行版下的特有命令,且以后会持续更新。
说明,我是在一个Centos 6.4 64位的虚拟机系统进行测试。本文介绍的命令都会在此Centos下运行验证(也有部分命令会在我的suse/ubuntu系统里测试的,会做特明说明),但运行结果就不再列出了。
硬件篇
- 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包,这样直接安装
Linux下常用的命令记录的更多相关文章
- linux下常用FTP命令
linux下常用FTP命令 1. 连接ftp服务器 1. 连接ftp服务器格式:ftp [hostname| ip-address]a)在linux命令行下输入: ftp 192.168.1.1b)服 ...
- linux下常用FTP命令 上传下载文件【转】
1. 连接ftp服务器 格式:ftp [hostname| ip-address]a)在linux命令行下输入: ftp 192.168.1.1 b)服务器询问你用户名和密码,分别输入用户名和相应密码 ...
- linux下常用关机命令
linux下常用的关机命令有:shutdown.halt.poweroff.init:重启命令有:reboot.下面本文就主要介绍一些常用的关机命令以及各种关机命令之间的区别和具体用法. 首先来看一下 ...
- linux下常用FTP命令 1. 连接ftp服务器
1. 连接ftp服务器 格式:ftp [hostname| ip-address] a)在linux命令行下输入: ftp 192.168.1.1 b)服务器询问你用户名和密码,分别输入用户名和相应密 ...
- linux下常用FTP命令 1. 连接ftp服务器[转]
1. 连接ftp服务器 格式:ftp [hostname| ip-address]a)在linux命令行下输入: ftp 192.168.1.1 b)服务器询问你用户名和密码,分别输入用户名和相应密码 ...
- Linux下常用SVN命令
1.将文件checkout到本地目录 svn checkout path(path是服务器上的目录) 例如:svn checkout svn://192.168.1.1/pro/domain --u ...
- Linux下常用yum命令
linux各发行版有多种包管理机制,下面介绍基于RedHat系的yum包管理命令: yum -y install xxx 无需询 ...
- linux下常用的命令
一. tomcat tail -f ../logs/catalina.out 最新更新的日志(tomcat) cat ../logs/catalina ...
- Linux下常用mysql命令【2】
1.开启和关闭 1.1.开启 systemctl start mysqld 1.2.关闭 systemctl stop mysqld 1.3.重启 systemctl restart mysqld 回 ...
随机推荐
- 解决使用Application Loader上传ipa提示“上传appstore失败”
试了好多次使用Application Loader上传ipa,一直提示上传失败,用其他mac电脑却可以,那就是环境有问题,笔者试过重装xcode,都无法解决问题, 查看日志类似是jdk版本问题,换了所 ...
- C++ 容器与继承
如果容器类型定义为基类类型,那么虽然可以把派生类装进容器中,但是不能通过容器访问派生类自己的public成员,派生类将会倍切掉,只保留派生类的基类部分: 如果把容器定义为派生类类型,那么不能把基类类型 ...
- ABC108C - Triangular Relationship(打表)
题意 给出$n, k$,求出满足$a+b, b + c, c + a$都是$k$的倍数的三元组$a, b, c$的个数,$1 \leqslant a, b, c \leqslant N$ $n \le ...
- 一、Shell 教程
Shell 教程 Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁.Shell 既是一种命令语言,又是一种程序设计语言. Shell 是指一种应用程序,这个应用程序提供了一个 ...
- Python 正则表达式 贪心匹配和非贪心匹配
Python的正则表达式默认是“贪心匹配”,即在有第二义的情况下,尽可能匹配最长的字符串,在正则表达式的花括号后面跟上问号,可以变为非贪心模式 >>> >>> ha ...
- jQuery具体实例介绍什么时候用ajax,ajax应该在什么地方使用
网站开发时,ajax是一个非常方便的工具,它具有和表单相同的功能完成前端和后台之间的交互!它起到局部刷新的功能!那什么时候用ajax呢?下面给大家介绍几个实例,首先应该分为两类: 一.在用表单和aj ...
- 笔记-python-standard library-19.2 json
笔记-python-standard library-19.2 json 1. JSON简介 JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级 ...
- Tomcat之web.xml中的<url-pattern>标签
关于web.xml配置中的<url-pattern> 标签<url-pattern> <url-pattern>是我们用Servlet做Web项目时需要经常配置的标 ...
- Java面向对象---方法递归调用
递归调用是一种特殊的调用形式,即方法自己调用自己 public int method(int num){ if(num==1){ return 1; } else { return num+metho ...
- TCP/IP网络编程之多播与广播
多播 多播方式的数据传输是基于UDP完成的,因此,与UDP服务端/客户端的实现非常接近.区别在于,UDP数据传输以单一目标进行,而多播数据同时传递到加入(注册)特定组的大量主机.换言之,采用多播方式时 ...