前提

由于经常忘记命令,所以就想着自己整理一份,以便日后方便查看。本文会陆续更新,更新顺便不按任何顺序,都是使用到啥就记录啥。

常用命令

系统操作

命令 说明
reboot 重启
halt 立刻关机
poweroff 立刻关机
shutdown -r now 立刻重启(root用户使用)
shutdown -r 10 过10分钟自动重启(root用户使用)
shutdown -r 20:35 在时间为20:35时候重启(root用户使用)
ip addr ip查询
ifconfig ip信息
systemctl start firewalld 打开防火墙
systemctl stop firewalld 关闭防火墙
systemctl status firewalld 查看防火墙状态
firewall-cmd —add-port=123/tcp —permanent 添加指定需要开放的端口
firewall-cmd —reload 重载入添加的端口
firewall-cmd —query-port=123/tcp 查看想开的端口是否已开
netstat -lnp|grep 123 查看端口占用情况
kill 123 关闭端口,-9 强制关闭

文件与目录操作

命令 说明
cd 进入目录
ls 查看目录下的文件
ls -a 显示隐藏文件
ls -l 显示详细信息
pwd 显示工作路径
mkdir 创建目录
mv 移动/重命名一个目录/文件
cp 复制一个目录/文件
rm 删除目录/文件
rm -rf 删除目录及其子目录内容
cat 查看文件内容
head -2 查看一个文件的前两行
more 查看一个长文件的内容
tac 从最后一行开始反向查看一个文件的内容
tail -3 查看一个文件的最后三行
vi/vim 编辑文件,i-进入编辑,Esc-退出编辑,:w-保存,:wq-退出并保存,:q!-退出保存

开发者必备Linux常用命令,掌握这些命令绝对够了,基于CenterOS7.6。

系统服务管理

systemctl

  • 输出系统中各个服务的状态:

    1. systemctl list-units --type=service复制代码

    Centos 7.6 命令整理 - 图1

  • 查看服务的运行状态:

    1. systemctl status firewalld复制代码

    Centos 7.6 命令整理 - 图2

  • 关闭服务:

    1. systemctl stop firewalld复制代码

    Centos 7.6 命令整理 - 图3

  • 启动服务:

    1. systemctl start firewalld复制代码

    Centos 7.6 命令整理 - 图4

  • 重新启动服务(不管当前服务是启动还是关闭):

    1. systemctl restart firewalld复制代码
  • 重新载入配置信息而不中断服务:

    1. systemctl reload firewalld复制代码
  • 禁止服务开机自启动:

    1. systemctl disable firewalld复制代码

    Centos 7.6 命令整理 - 图5

  • 设置服务开机自启动:

    1. systemctl enable firewalld复制代码

    Centos 7.6 命令整理 - 图6

    文件管理

    ls

    列出当前目录(/)下的所有文件:

    1. ls -l /复制代码

    Centos 7.6 命令整理 - 图7

    pwd

    获取目前所在工作目录的绝对路径
    Centos 7.6 命令整理 - 图8

    cd

    改变当前工作目录:

    1. cd /usr/local复制代码

    Centos 7.6 命令整理 - 图9

    date

    显示或修改系统时间与日期;

    1. date '+%Y-%m-%d %H:%M:%S'复制代码

    Centos 7.6 命令整理 - 图10

    passwd

    用于设置用户密码:

    1. passwd root复制代码

    Centos 7.6 命令整理 - 图11

    su

    改变用户身份(切换到超级用户):

    1. su -复制代码

    clear

    用于清除屏幕信息

    man

    显示指定命令的帮助信息:

    1. man ls复制代码

    who

  • 查询系统处于什么运行级别:

    1. who -r复制代码

    Centos 7.6 命令整理 - 图12

  • 显示目前登录到系统的用户:

    1. who -buT复制代码

    Centos 7.6 命令整理 - 图13

    free

    显示系统内存状态(单位MB):

    1. free -m复制代码

    Centos 7.6 命令整理 - 图14

    ps

    显示系统进程运行动态:

    1. ps -ef复制代码

    查看sshd进程的运行动态:

    1. ps -ef | grep sshd复制代码

    Centos 7.6 命令整理 - 图15

    top

    查看即时活跃的进程,类似Windows的任务管理器
    Centos 7.6 命令整理 - 图16

    mkdir

    创建目录
    Centos 7.6 命令整理 - 图17

    more

    用于文件过长时分页查看文件内容 每页10行查看boot.log文件

    1. more -c -10 /var/log/boot.log复制代码

    Centos 7.6 命令整理 - 图18

    cat

    查看Linux启动日志文件文件,并标明行号:

    1. cat -Ab /var/log/boot.log复制代码

    Centos 7.6 命令整理 - 图19

    touch

    创建text.txt文件:

    1. touch text.txt复制代码

    Centos 7.6 命令整理 - 图20

    rm

  • 删除文件:

    1. rm text.txt复制代码
  • 强制删除某个目录及其子目录:

    1. rm -rf testdir/复制代码

    Centos 7.6 命令整理 - 图21

    cp

    将test1目录复制到test2目录

    1. cp -r /mydata/tes1 /mydata/test2复制代码

    mv

    移动或覆盖文件:

    1. mv text.txt text2.txt复制代码

    压缩与解压

    tar

  • 将/etc文件夹中的文件归档到文件etc.tar(并不会进行压缩):

    1. tar -cvf /mydata/etc.tar /etc复制代码
  • 用gzip压缩文件夹/etc中的文件到文件etc.tar.gz:

    1. tar -zcvf /mydata/etc.tar.gz /etc复制代码
  • 用bzip2压缩文件夹/etc到文件/etc.tar.bz2:

    1. tar -jcvf /mydata/etc.tar.bz2 /etc复制代码

    Centos 7.6 命令整理 - 图22

  • 分页查看压缩包中内容(gzip):

    1. tar -ztvf /mydata/etc.tar.gz |more -c -10复制代码

    Centos 7.6 命令整理 - 图23

  • 解压文件到当前目录(gzip):

    1. tar -zxvf /mydata/etc.tar.gz复制代码

    磁盘和网络管理

    df

    查看磁盘空间占用情况:

    1. df -hT复制代码

    Centos 7.6 命令整理 - 图24

    dh

    查看当前目录下的文件及文件夹所占大小:

    1. du -h --max-depth=1 ./*复制代码

    Centos 7.6 命令整理 - 图25

    ifconfig

    显示当前网络接口状态
    Centos 7.6 命令整理 - 图26

    netstat

  • 查看当前路由信息:

    1. netstat -rn复制代码

    Centos 7.6 命令整理 - 图27

  • 查看所有有效TCP连接:

    1. netstat -an复制代码
  • 查看系统中启动的监听服务:

    1. netstat -tulnp复制代码

    Centos 7.6 命令整理 - 图28

  • 查看处于连接状态的系统资源信息:

    1. netstat -atunp复制代码

    wget

    从网络上下载文件
    Centos 7.6 命令整理 - 图29

    软件的安装与管理

    rpm

  • 安装软件包:rpm -ivh nginx-1.12.2-2.el7.x86_64.rpm

  • 模糊搜索软件包:rpm -qa | grep nginx
  • 精确查找软件包:rpm -qa nginx
  • 查询软件包的安装路径:rpm -ql nginx-1.12.2-2.el7.x86_64
  • 查看软件包的概要信息:rpm -qi nginx-1.12.2-2.el7.x86_64
  • 验证软件包内容和安装文件是否一致:rpm -V nginx-1.12.2-2.el7.x86_64
  • 更新软件包:rpm -Uvh nginx-1.12.2-2.el7.x86_64
  • 删除软件包:rpm -e nginx-1.12.2-2.el7.x86_64

    yum

  • 安装软件包: yum install nginx

  • 检查可以更新的软件包:yum check-update
  • 更新指定的软件包:yum update nginx
  • 在资源库中查找软件包信息:yum info nginx*
  • 列出已经安装的所有软件包:yum info installed
  • 列出软件包名称:yum list nginx*
  • 模糊搜索软件包:yum search nginx
  • 升级系统:yum update