linux常用命令

Linux 世界里,一切皆文件

结构图
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 关机重启
    shutdown
    shutdown -h now : 表示立即关机
    shutdown -h 1 : 表示 1 分钟后关机
    shutdown -r now: 立即重启
    hlaf
    直接关机 等效于上面的关机
    sync
    把内存的数据同步到磁盘,好比常规的windows关机不直接按开关按钮关机
    reboot 重启系统

  • touch 文件名 //创建一个文件

  • vi 编辑
    :w //保存不退出
    :w 新文件名 //把文件另存为新文件
    :q 不保存退出
    :wq 保存退出
    :! 强制
    :q! 强制不保存退出,用于修改文件之后,不保存数据退出。
    :wq! 强制保存退出,当文件的所有者或者 root 用户,对文件没有写权限的时候,强制写入数据使用

  • 复制删除

  1. yy 复制 p粘贴
  2. 数字+yy 复制下面的多少行,例如5yy,复制当前光标下的5行
  3. dd 删除
  4. 数字+dd
  • 查找
    /关键字
    n 切换到下一个搜索到的关键字

  • 设置行号
    set nu
    set nonu 取消行号
    在这里插入图片描述

  • 快速到达末尾和首行,正常模式下,非编辑模式
    G 末尾
    gg 首行

  • 撤销,回到上一步,相比windows下的ctrl+z
    u 正常模式下按u

  • 跳到指定的行
    先设置行数 :setnu
    按想跳到的行数数字
    然后shit+g
    在这里插入图片描述

  • 用户登录注销
    logout 注销 只在远程连接生效(xshell连接注销)
    在这里插入图片描述
    useradd 用户名
    1.添加一个用户,(当创建用户成功后,会自动的创建和用户同名的家目录)
    2.useradd -d 指定目录 新的用户名
    给新创建的用户指定家目录
    在这里插入图片描述
    3.pw 用户名
    设置密码
    4.userdel 用户名
    删除用户
    or
    userdel -r 用户名
    删除用户以及主目录
    ** 一般我们不会删除主目录
    5.su 用户名
    切换用户

  • 查询用户信息
    1.id 用户名
    用户信息
    2.groupadd 组名
    添加组
    3.useradd -g 组名 用户名
    创建用户时指定组
    4.groupdel 组名
    删除组
    5.usermod -g 用户组 用户名
    修改用户的组

  • /etc/passwd 文件
    用户(user)的配置文件,记录用户的各种信息
    每行的含义:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录 Shell
    在这里插入图片描述

  • /etc/shadow 文件
    口令的配置文件
    每行的含义:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志

  • /etc/group 文件
    组(group)的配置文件,记录 Linux 包含的组的信息每行含义:组名:口令:组标识号:组内用户列表
    在这里插入图片描述

  • linux运行级别示意图(/etc/inittab)系统运行级别配置文件
    在这里插入图片描述

  • init切换不同的运行级别,linux默认的级别是5

  • 经典的问题
    如何找回 root 密码,如果我们不小心,忘记 root 密码,怎么找回。
    思路: 进入到 单用户模式,然后修改 root 密码。因为进入单用户模式,root 不需要密码就可以登录。
    centos7以下步骤:
    开机->在引导时输入 回车键-> 看到一个界面输入 e -> 看到一个新的界面,选中第二行(编辑内核)在输入 e-> 在这行最后输入 1 ,再输入 回车键->再次输入 b ,这时就会进入到单用户模式。
    这时,我们就进入到单用户模式,使用 passwd 指令来修改 root 密码。
    centos7修改步骤:
    步骤链接

  • 请设置我们的 运行级别,linux 运行后,直接进入到 命令行界面,即进入到 3 运行级别
    vim /etc/inittab
    将 id:5:initdefault:这一行中的数字, 5 这个数字改成对应的运行级别即可。

  • 帮助指令
    当我们对某个指令不熟悉时,可以使用帮助指令
    语法:man 命令或配置文件
    例如:man ls

  • 文件目录指令
    1.pwd
    显示文件绝对路径
    在这里插入图片描述

2.ls
以列表的形式显示文件和目录
在这里插入图片描述
ls -a
列表的形式显示文件和目录以及信息以及隐藏文件
在这里插入图片描述
ls -al
同上多显示了显示隐藏的内容
在这里插入图片描述

  • 目录切换
    1.cd …
    上一级目录
    cd ~
    直接到家目录

  • 目录创建
    1.mkdir 要创建的目录
    例子:mkdir /home/mydir
    只能创建一级目录,不能多级创建目录,例:mkdir /home/mydir/mydir1
    可以使用
    mkdir -p 要创建的目录

  • 目录删除
    1.rmdir 要删除的目录
    只能删除空目录
    2.rm -rf 要删除的目录
    可以删除非空目录(切忽rm -rf /* 删库跑路,违法)

  • 拷贝文件
    1.cp 源文件的位置 目标位置
    拷贝当前文件到目标位置
    2.递归拷贝 -r,将文件下的所有文件都拷贝到目标位置
    cp -r 源文件的位置 目标位置
    如果文件有重复 可以在前面加个\ 表示强制覆盖
    在这里插入图片描述

  • rm删除指令
    1.rm 目标文件文件或目录
    2.rm -r
    递归删除文件下的所有内容
    3.rm -f
    强势删除,无提示是否确认删除

  • mv指令
    1.重命名(本质就是移动)
    mv oldFileName newFileName
    2.移动文件
    mv /home/a.txt  root/
    移动到root目录下,如果root目录下没有a.txt这个文件,有则确认是否覆盖

  • cat指令
    1.cat 文件名
    查看文件内容,(前提是文件要有内容)
    在这里插入图片描述
    2.cat -n 文件名
    带行号查看
    通常会结合 | more 使用
    cat -n 文件名 | more
    分页显示

  • less指令,比more更强大,显示内容时只加载需要显示的内容,并不是一次性加载,效率更高
    1.less 要查看的文件
    查看大型的文件,用less

  • >指令 和 >>指令
    1.ls -l > 文件,ls -l >> 文件 这个是追加不覆盖
    讲显示的内容写入到文件中,如果不存文件在创建文件,覆盖性写入
    在这里插入图片描述
    3.echo “内容“ > 文件
    将内容两个字写入到文件中

  • echo指令,输出内容到控制台
    1.echo $PATH
    输出环境变量
    在这里插入图片描述

  • head指令,用于显示文件开头的内容,默认显示10行
    1.head 文件
    2.head -n 5
    显示内容5行,可以是任意行数

  • tail 用于输出文件尾部的内容
    tail -f 文件
    实时追踪文档的所有更新
    在这里插入图片描述
    在这里插入图片描述

  • In指令,软链接也叫符号链接,类似于windows里面的快捷方式,主要存放了链接其他文件的路径
    1.in -s 源文件或目录 软连接名(自定义的)
    in -s /root mylink
    2.rm -rf 软连接名
    删除软连接

  • history指令,查看已经执行过的历史命令
    1.history
    在这里插入图片描述
    2.history 数字
    显示多少条

3.!行数
调用指定的历史指令

  • date指令,时间日期类
    在这里插入图片描述
    2.date -s 日期时间
    设置日期
  • find指令
    find 搜索范围 选项
    在这里插入图片描述
    在这里插入图片描述
    案例 3:查找整个 linux 系统下大于 20m 的文件(+n 大于 -n 小于 n 等于)
    在这里插入图片描述
  • locate指令
    locaate 指令可以快速定位文件路径。locate 指令利用事先建立的系统中所有文件名称及路径的locate 数据库实现快速定位给定的文件。Locate 指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确度,管理员必须定期更新 locate 时刻。
    由于 locate 指令基于数据库进行查询,所以第一次运行前,必须使用 updatedb 指令创建 locate 数据库。
    •应用实例
    案例 1: 请使用 locate 指令快速定位 hello.txt 文件所在
    在这里插入图片描述
  • grep 通常和管道符 | 配合使用
  • | 管道符,前一个命令的处理结果输出传递给后面的命令处理
    案例:
    请在 hello.txt 文件中,查找 “yes” 所在行,并且显示行号
    在这里插入图片描述
  • gzip指令(当我们对文件压缩只会不会保留原先的文件)
    1.gzip 文件名
    压缩
    2.gunzip 文件名
    解压
  • zip压缩/unzip解压指令
    zip 文件名
    unzip 文件名
    参数:-r ,递归压缩
              -d 路径 压缩文件,将文件解压到指定路径
    例子:
    在这里插入图片描述
  • tar打包指令
    1.tar [选项] XXX.tar.gz 打包的内容
    2.tar 【选项】 解压文件
    参数:-C,解压到指定目录
    在这里插入图片描述
    案例 1: 压缩多个文件,将 /home/a1.txt 和 /home/a2.txt 压缩成 a.tar.gz
    在这里插入图片描述
    案例 2: 将/home 的文件夹 压缩成 myhome.tar.gz
    在这里插入图片描述
    案例 3: 将 a.tar.gz 解压到当前目录
    在这里插入图片描述
    案 例 4: 将 myhome.tar.gz 解压到 /opt/ 目录下
    在这里插入图片描述

linux命令2

  • ls -ahl 查看文件的所有者,和ls -al 基本相同
  • 指令chown 用户名 文件名(修改文件的所有者)
    1.chown -R 用户名 文件名(递归修改目录下的所有文件)
    在这里插入图片描述
  • 修改文件所在组
  1. chgrp 组名 需要改变的文件名(改变文件的组)
    在这里插入图片描述
  • 权限
    在这里插入图片描述
    在这里插入图片描述
  • chmod 修改文件或目录的权限

在这里插入图片描述
1.代表给文件的拥有者添加读写执行的权限,文件拥有者所在组的用户有读写的能力,不与文件拥有者同组的其他用户只能执行
2.给不与文件拥有者同组的其他用户增加一个写的能力
3.给所有的用户减去一个执行的权限

写法二:
规则:r=4 w=2 x=1
chmod u=rwx,g=rx,o=x 文件目录名
等价于 chmod 751 文件目录名

案例:
要求:将 /home/abc.txt 文件的权限修改成 rwxr-xr-x, 使用给数字的方式实现:
rwx = 4+2+1 = 7
r-x = 4+1=5
r-x = 4+1 =5
指令:chmod 755 /home/abc.txt
注意:涉及到修改权限后要注销重新登录才能生效

  • crond任务调度,定时任务,例如备份mysql数据库
    任务调度:是指系统在某个时间执行的特定的命令或程序。
    任务调度分类:
    1.系统工作:有些重要的工作必须周而复始地执行。如病毒扫描等
    在这里插入图片描述
  • crontab指令
    在这里插入图片描述
    1.任务的要求(设置一个任务的时候必要要有文件的可执行权才能执行)
    设置任务调度文件:/etc/crontab
    设置个人任务调度。执行 crontab –e 命令。接着输入任务到调度文件
    如:*/1 * * * * ls –l /etc/ > /tmp/to.txt
    意思说每小时的每分钟执行 ls –l /etc/ > /tmp/to.txt 命令
    在这里插入图片描述
    在这里插入图片描述
    2.脚本文件的调度
    案例 2:每隔 1 分钟, 将当前日期追加到 /abc 文件
    1.touch abc 创建abc文件
    2.编写.sh脚本
    date >> /abc
    3.修改脚本的可执行权限
    chmod 744 /my.sh
    4.crontab -e 进入编辑任务
    */1 * * * * /my.sh

磁盘分区管理

在这里插入图片描述

  1. lsblk和lsblk -f 命令 ,查看分区的挂载情况
    硬盘说明
    1)Linux 硬盘分 IDE 硬盘和 SCSI 硬盘,目前基本上是 SCSI 硬盘
    2)对于 IDE 硬盘,驱动器标识符为“hdx~”,其中“hd”表明分区所在设备的类型,这里是指 IDE 硬盘了。“x”为盘号(a 为基本盘,b 为基本从属盘,c 为辅助主盘,d 为辅助从属盘),“~”代表分区,前四个分区用数字 1 到 4 表示,它们是主分区或扩展分区,从 5 开始就是逻辑分区。例,hda3 表示为第一个 IDE 硬盘上的第三个主分区或扩展分区,hdb2 表示为第二个 IDE 硬盘上的第二个主分区或扩展分区。
    3)对于 SCSI 硬盘则标识为“sdx~”,SCSI 硬盘是用“sd”来表示分区所在设备的类型的,其余则和 IDE 硬盘的表示方法一样。

挂载的经典案例
需求是给我们的 Linux 系统增加一个新的硬盘,并且挂载到/home/newdisk
在这里插入图片描述
如何增加一块硬盘
1)虚拟机添加硬盘
2)分区 fdisk /dev/sdb 3) 格式化 mkfs -t ext4 /dev/sdb1
4)挂载 先创建一个 /home/newdisk , 挂 载 mount /dev/sdb1 /home/newdisk
5)设置可以自动挂载(永久挂载,当你重启系统,仍然可以挂载到 /home/newdisk) 。
vim /etc/fstab
/dev/sdb1 /home/newdisk ext4 defaults 0 0

具体的操作步骤整理
在【虚拟机】菜单中,选择【设置】,然后设备列表里添加硬盘,然后一路【下一步】,中间只有选择磁盘大小的地方需要修改,至到完成。然后重启系统(才能识别)!
在这里插入图片描述
虚拟机增加硬盘步骤2
分区命令 fdisk /dev/sdb
开始对/sdb 分区
•m 显示命令列表
•p 显示磁盘分区 同 fdisk –l
•n 新增分区
•d 删除分区
•w 写入并退出
说明: 开始分区后输入 n,新增分区,然后选择 p ,分区类型为主分区。两次回车默认剩余全部空间。最后输入 w 写入分区并退出,若不保存退出输入 q。
在这里插入图片描述
虚拟机增加硬盘步骤 3
格式化磁盘
分区命令:mkfs -t ext4 /dev/sdb1
其中 ext4 是分区类型
虚拟机增加硬盘步骤 4
挂载: 将一个分区与一个目录联系起来,
•mount 设备名称 挂载目录
•例如: mount /dev/sdb1 /newdisk
•umount 设备名称 或者 挂载目录
•例如: umount /dev/sdb1 或 者 umount /newdisk
12.4.5虚拟机增加硬盘步骤 5
永久挂载: 通过修改/etc/fstab 实现挂载添加完成后 执行 mount –a 即刻生效
在这里插入图片描述

查看磁盘容量

基本语法
df -h
查询系统整体磁盘使用情况
在这里插入图片描述

查询指定目录的磁盘占用情况

•基本语法
du -h /目录
查询指定目录的磁盘占用情况,默认为当前目录
-s 指定目录占用大小汇总
-h 带计量单位
-a 含文件
–max-depth=1 子目录深度
-c 列出明细的同时,增加汇总值

•应用实例
查询 /opt 目录的磁盘占用情况,深度为 1
在这里插入图片描述

磁盘情况-工作实用指令

wc -l 统计指令,^以什么开头

  • 统计/home 文件夹下文件的个数
    在这里插入图片描述
  • 统计/home 文件夹下目录的个数
    在这里插入图片描述
  • 统计/home 文件夹下文件的个数,包括子文件夹里的
    在这里插入图片描述
  • 统计文件夹下目录的个数,包括子文件夹里的
    在这里插入图片描述

linux网络配置

在这里插入图片描述

  • 指定固定的ip
    直 接 修 改 配 置 文 件 来 指 定 IP, 并 可 以 连 接 到 外 网 ( 程 序 员 推 荐 ) , 编 辑 vi
    /etc/sysconfig/network-scripts/ifcfg-eth0
    要求:将 ip 地址配置的静态的,ip 地址为 192.168.184.130

进程管理

ps aux 查看所有进程
ps aux | grep 过滤条件
ps ef 查看父进程

  • 显示系统执行的进程
    在这里插入图片描述
    在这里插入图片描述

  • ps 指令详解
    •System V 展示风格
    •USER:用户名称
    •PID:进程号
    •%CPU:进程占用 CPU 的百分比
    •%MEM:进程占用物理内存的百分比
    •TT:终端名称,缩写 .
    •STAT:进程状态,其中 S-睡眠,s-表示该进程是会话的先导进程,N-表示进程拥有比普通优先级更低的优先级,R-正在运行,D-短期等待,Z-僵死进程,T-被跟踪或者被停止等等
    •STARTED:进程的启动时间
    •TIME:CPU 时间,即进程使用 CPU 的总时间
    •COMMAND:启动进程所用的命令和参数,如果过长会被截断显示
    •VSZ:进程占用的虚拟内存大小(单位:KB)
    •RSS:进程占用的物理内存大小(单位:KB)

  • 终止进程 kill 和 killall
    kill [选项] 进程号(功能描述:通过进程号杀死进程)
    killall 进程名称(功能描述:通过进程名称杀死进程,也支持通配符,这在系统因负载过大而变得很慢时很有用)
    kill -9 进程
    强制杀死指定的进程

服务管理

centos7以下

centos7
防火墙(firewalld)
临时关闭防火墙
systemctl stop firewalld
永久防火墙开机自关闭
systemctl disable firewalld
临时打开防火墙
systemctl start firewalld
防火墙开机启动
systemctl enable firewalld
查看防火墙状态
systemctl status firewalld

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值