Skip to content

Linux常用命令

版本:Centos7

一. 基本命令

  • cd 切换目录
  • ll 查看文件夹内的文件和目录详细信息
  • ls 查看文件夹内的文件和目录名称
  • su 切换用户
    • 从管理员root账号切换到普通用户可直接切换,#代表root账户
    • 从 普通用户切换到root账户要输密码,$代表普通用户
  • ifconfig查看 IP此地
  • ping 拼别人的IP
  • clear清屏
  • pwd打印当前所在路径

二. 文件和文件夹操作

  • mkdir xx在当前路径下创建一个文件夹
  • mkdir -p xx/yy的好处就是一次可以创建多级文件夹,若xx文件夹不存在,则先创建xx文件夹,然后在xx文件夹下创建yy文件夹
  • mv
    • 移动文件 mv ./a.txt /usr/local/demo (将当前目录下的a.txt文件移动到demo目录)
    • 移动并重命名 mv ./a.txt /usr/local/demo/a1.txt (将当前目录下的a.txt文件移动到demo目录,并改名字为a1.txt)
  • touch xx.txt 在当前路径下创建一个xx.txt文件
  • rm删除文件
    • -r 移除文件,同时删除该文件夹下的所有文件和子文件夹
    • -f 强制删除文件
    • -rf 强制删除文件夹
  • cp(copy)复制文件 cp ./a.txt /usr/local/demo (将当前目录下的a.txt文件复制到demo目录)

注意: linux没有回收站,一旦删除后就无法恢复

三. 文件内容操作

1. 创建或者编辑文件

  • 创建
    • touch fileName.[ext] 创建一个文件
    • vim xxx 创建一个空白文件,进入编辑界面,若文件已存在,则直接进入该文件的编辑界面 ---------但是得保存退出,文件才能被创建(没有文件的情况下)
      • vi 命令也可以,但是更推荐vim

2. 文件三种模式

  • 一般模式

    • i 键进入编辑模式

      • a 键或者 o 键也都可以进入编辑模式,只是进去口光标所处位置不同而已,a进入的光标会在定位的后一格,o进入后,光标会在定位行换行后的新行.
    • 复制一行 按 yy 键, 会复制当前光标所在行的内容

    • 粘贴复制的内容 按 p 键,会粘贴刚刚复制的内容

    • 删除一行 按 dd 会删除当前光标所处的这一行

    • 跳转到指定行号 按 :n或者 nG 光标会跳转到第n行

    • gg 光标会跳转到文件第一行

    • G 光标会移动到文件最后一行

    • 撤销 按 u 键会撤销刚刚的所有操作

    • 反撤销 按 ctrl + r 组合键可以反撤销

  • 编辑模式

    • ESC 键退出编辑模式--------进入了一般模式
      • 接着输入 :wq 键保存文件并退出
      • 输入 :q! 键不保存文件 并退出
  • 底行模式

    • 一般模式下,按 : 键就进入底行模式
    • 显示行号 输入 :set number 会显示文件的行号
    • 取消行号 输入 :set nonumber 会取消文件的行号

3. 仅查看文件

  • 输入命令 cat xxx 直接查看文件的所有内容
  • 输入 cat xxx -n 直接查看文件并显示文件的行号
  • 输入 tail -f xxx 可用于查看日志,有新内容进来,可以动态看到,,按 ctrl + c可以退出查看
  • 输入 more xxx 键,,可用于查看大文件时候,可以一页页往下翻 按 space(空格)键往下翻页,按 q 键可退出
  • 输入 nl xxx 键,文件会从最后一行开始显示,并显示行号(倒着展示,只是光标)
    • nl -ba xxx 表示不论是否为空行,也同样显示行号
    • nl -bt xxx 表示若有空行,空的那一行不要列出行号(默认)

4. 文件搜索和替换

搜索

  • 进入文件后, 按 /要搜索的内容 回车后,会将文件中搜索出来的内容全部高亮, 按 n 键可以来回切换搜索出来的内容,
  • 搜索出来后,若是保存并退出, 你每次进入文件都会高亮上一次搜索出来的内容, 按 :noh 键可以进行取消高亮

替换

  • 表达式为 :n,$s/旧内容/新内容/g
    • n 表示开始的行号为第n行
    • $s 表示最后一行
    • /g 表示全局替换

5. 文件压缩和解压

针对tar

tar [选项] 打包或解压的文件名 待打包文件1 待打包文件2 ...

  • 解压
    • tar -zcf xxxx.tar.gz
  • 压缩
    • tar -zxf xxxx.tar.gz a.txt b.txt c.txt....
  • 选项
    • -c 创建一个打包文件
    • -x 解开一个打包文件
    • -z 使用gzip压缩文件
    • -j 使用bzip2压缩文件
    • -v 压缩或解压过程中显示文件
    • -f 使用文档名称

针对zip

安装 ​ 1. 安装zip: yum -y install zip
​ 2. 安装unzip yum -y install unzip

  • 解压

    • unzip 压缩包名称.zip
  • 打包

    • zip 压缩包名称 a.txt b.txt 目录1 目录2 ...

四. 用户和用户组操作

1. Linux用户的分类

  • 超级用户 root uid=0
  • 普通用户 uid=500~60000
  • 伪用户 uid=1~499
    • 伪用户就是不能登录系统,也不会在home下创建相应的文件夹,主要是执行一些系统命令

2. Linux用户组

  • 每个用户组可以包含多个用户
  • 每个用户至少属于一个用户组

3. 用户相关的配置信息

  • /etc/passwd 用户信息文件
  • /etc/shadow 保存密码信息
  • /etc/group 用户组信息
  • /etc/gshadow 用户组密码信息

4. Linux用户组的操作

  • 创建用户组 groupadd 组名
  • 修改用户组名 groupmod -n 新组名 旧组名
  • 删除用户组 groupdel 组名
  • 显示用户所在的组 groups

5. Linux用户的操作

  • 添加用户
    • useradd [选项] 用户名 创建成功后,会在/home下自动创建一个用户的目录
    • 选项
      • -g 设置用户组
      • G 设置用户组列表, 多个用户组用 , 隔开
      • -u 手动指定用户uid, 必须唯一且大于499
      • -p 为新用户指定密码,但是该密码需要设置为MD5加密后的密文,创建用户时候可以先不设置
  • 修改用户
    • usermod [选项] 用户名
  • 删除用户
    • userdel [选项] 用户名
  • 设置用户密码
    • passwd 用户名
    • 注意: 会提示无效的密码,密码至少少于8位.可以不用理,继续操作,会成功

五. 权限的操作

1. 理解含义

  • 第一位
    • d 代表 目录 -代表 文件
  • 后面的三位为一组,每一组都有如下含义
    • w代表写权限 r为度权限 x为有执行权限 -为 没有权限

六. 其他命令

1. 关机

  • poweroff

2. 重启

  • reboot

3. 进程管理

查看当前系统瞬间进程状态

  • ps -ef|grep xxx

停止进程

  • kill [-9] pid 例如 kill -9 123
    • 根据pid杀死进程
    • -9表示强制终止

4. curl

  • curl www.baidu.com 会返回百度的页面html字符串.用于检测部署的网址是否正常

七. linux服务管理

1. 什么是Linux服务

linux服务本质就是进程,只是该进程运行在后台,比如sshd, mysql,防火墙等

2. 服务的操作命令

  • systemctl [start|stop|restart|reload|status] 服务名

3. 查看系统命令

4. 设置服务的开机自启

5. 防火墙的相关操作

6. 查看端口是否被占用

会显示所有端口和所有对应的程序,用grep管道可以过滤出想要的关键字段。

shell
netstat -tunlp |grep <port>

有关22端口占用的程序:netstat -tunlp |grep 22 image.png

查看某一端口的占用情况: lsof -i:端口号

shell
lsof -i:6379 // 查看redis是否再运行

image.png

这里显示出21号端口正在被pure-ftpd使用,状态是listen。

八. 软件的安装

Centos7安装mysql8.0图文教程 https://blog.csdn.net/qq_38570633/article/details/109257430

Centos7安装redis图文教程 https://www.cnblogs.com/heqiuyong/p/10463334.html

1. yum方式安装

2. npm方式安装

3. 源码安装方式安装