• linux常用命令


    linux常用命令(centos)

    网络命令

    ifconfig

    网卡显示和临时配置

    ifconfig eth0 192.168.0.105
    
    • 1

    mail

    #格式 mail [用户名]
    mail root
    
    • 1
    • 2

    ping

    连通测试

    ping www.baidu.com
    
    • 1

    traceroute

    数据包到服务主机之间的路径

    traceroute www.baidu.com
    
    • 1

    netstat

    #netstat [选项]
    #-t TCP 
    #-u UDP 
    #-l 监听 
    #-r 路由
    #-n 端口
    #查看tcp端口信息
    netstat -tn
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    setup(redhat)

    一个redhat系列Linux的网络配置工具

    setup
    
    • 1

    压缩解压

    gzip

    .gz的压缩命令

    #压缩(只能压文件,不保留源文件)
    gzip /tmp/xxx.txt
    #解压
    gzip -d xxx.gz
    
    • 1
    • 2
    • 3
    • 4

    gunzip

    解压.gz压缩包

    #解压
    gunzip xxx.gz
    
    • 1
    • 2

    tar

    打包命令

    #-c打包 -x解包 -v打包信息 -f指定文件名 -z压缩(或解压)
    #压缩(会保留被压缩的目录)
    tar -zcf myzip.tar.gz /tmp/mydir
    #解压
    tar -zxf myzip.tar.gz
    
    • 1
    • 2
    • 3
    • 4
    • 5

    zip

    压缩.zip文件

    #压缩(-r递归,用于压缩目录)
    zip -r myzip.zip /tmp/mydir
    
    • 1
    • 2

    unzip

    解压.zip文件

    #解压
    unzip myzip.zip
    
    • 1
    • 2

    bzip

    压缩.bz2文件

    #压缩
    bzip -k /tmp/text.txt
    
    • 1
    • 2

    unbzip

    #解压
    unbzip text.bz2
    
    • 1
    • 2

    通用

    ls

    ls用于打印Linux文件。

    #显示当前目录下文件
    ls
    #显示当前目录下文件,包括隐藏文件
    ls -a
    #显示指定目录下文件
    ls /root
    #显示详细文件信息(权限,引用数,所属用户,所属组,容量(字节),时间,文件名)
    ls -l
    #人性化显示,信息打印人性化
    ls -h
    #显示目录信息(目录属性),而非是目录下文件信息
    ls -d
    #显示文件名和其iNode(文件标识)
    ls -i
    #组合显示,(同时使用a和l的功能)
    ls -la
    #显示文件信息以及文件的安全上下文(selinux会用到)
    ls -lz
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18

    mkdir

    用于目录创建

    #创建一个目录
    mkdir /tmp/mydir
    #递归创建
    mkdir -p /tmp/mydir/test
    #同时创建
    mkdir /tmp/mydir/test2 /tmp/mydir/test3
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    rmdir

    删除空目录

    #删除空目录
    rmdir /tmp/mydir/test
    
    • 1
    • 2

    cd

    目录切换

    #目录切换
    cd /tmp
    #回到上一级目录
    cd ..
    
    • 1
    • 2
    • 3
    • 4

    pwd

    获取当前目录名称

    #显示当前目录
    pwd
    
    • 1
    • 2

    cp

    复制文件或目录

    #格式(注意:当目标目录不存在时,重命名)
    cp [源目录或文件] [目标目录]
    #复制文件
    cp /etc/profile.conf /tmp
    #复制目录(r代表递归)
    cp -r /tmp/mydir /root
    #复制文件,包含描述信息(时间等)(p代表preserve保留)
    cp -p /etc/profile.conf /tmp
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    mv

    #剪切(当目标目录不存在时,重命名)
    mv /tmp/mydir/test /root
    #改名(同目录下移动==改名)
    mv /tmp/mydir/test /tmp/mydir/xxx
    
    • 1
    • 2
    • 3
    • 4

    rm

    删除文件或目录

    #删除文件(有提示)
    rm /tmp/mydir/text.txt
    #删除文件(无提示)
    rm -f /tmp/mydir/text.txt
    #删除目录(无提示)
    rm -rf /tmp/mydir
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    文件命令

    touch

    创建文件

    #创建文件
    touch /tmp/text.txt
    #创建多个文件
    touch text1.txt text2.txt
    
    • 1
    • 2
    • 3
    • 4

    cat

    显示文件数据

    #显示文件
    cat text.txt
    #显示指定行数
    cat -n 100 text.txt
    
    • 1
    • 2
    • 3
    • 4

    tac

    倒序显示文件数据

    #显示文件
    tac text.txt
    
    • 1
    • 2

    more

    分页显示文件数据

    #显示文件(分页显示,f或者空格换页,回车换行,q推出)
    more text.txt
    
    • 1
    • 2

    less

    分页显示文件数据

    #显示文件(分页显示,f或者空格换页,回车换行浏览,q推出,↑往上换行浏览)
    #支持单词搜索(/+搜索关键词,n查找下一个)
    more text.txt
    
    • 1
    • 2
    • 3

    head

    查看文件前若干行

    #查看前100行
    head -n 100 text.txt
    
    • 1
    • 2

    tail

    查看文件后若干行

    #查看前50行
    tail -n 50 text.txt
    #动态显示
    tail -f text.txt
    
    • 1
    • 2
    • 3
    • 4

    ln

    生成链接

    #生成软链接
    ln -s text.txt /tem/text.txt
    #生成硬链接(硬链接等于cp -p +同步更新)(硬链接跟源文件拥有相同的iNode)(硬链接不能跨分区)
    ln text.txt /tem/text.txt
    
    • 1
    • 2
    • 3
    • 4

    文件系统管理

    df

    #展示文件系统信息
    #-a 显示所有信息
    #-T 显示文件系统类型
    #-h 使用习惯单位显示容量
    df -a
    #显示挂载点/下面的文件系统
    df -hT /
    
    #测试
    root@ubuntu:/# df -hT /
    Filesystem     Type  Size  Used Avail Use% Mounted on
    /dev/sda5      ext4   39G  8.2G   29G  23% /
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    du

    #计算当前文件夹的总磁盘占用量
    du -sh
    
    • 1
    • 2

    mount

    #显示已经挂载的设备
    mount -l
    
    #显示sda设备的挂载情况(测试使用)
    root@ubuntu:/# mount -l | grep sda
    /dev/sda5 on / type ext4 (rw,relatime,errors=remount-ro)
    /dev/sda1 on /boot/efi type vfat (rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro)
    
    
    #mount [-t 系统类型] [-L 卷标名] [-o 特殊选项] [-n] 设备文件名 挂载点
    mount -t ext4 /dev/sda5 /mnt/sda5
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    umount

    #卸载挂载的文件系统
    #umount 挂载点
    umount /mnt/sda5
    
    • 1
    • 2
    • 3

    fdisk

    1. gdisk可以对2T以上的磁盘进行操作,fdisk不行
    2. fdisk只能用于MBR分区,gdisk可以用于GPT分区
    #对sda设备进行分区
    fdisk /dev/sda
    
    
    #查看分区信息
    fdisk -l
    #部分结果
    Disk /dev/sda: 40 GiB, 42949672960 bytes, 83886080 sectors
    Disk model: VMware Virtual S
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disklabel type: dos
    Disk identifier: 0x71758328
    
    Device     Boot   Start      End  Sectors  Size Id Type
    /dev/sda1  *       2048  1050623  1048576  512M  b W95 FAT32
    /dev/sda2       1052670 83884031 82831362 39.5G  5 Extended       #(扩展分区)
    /dev/sda5       1052672 83884031 82831360 39.5G 83 Linux          #(扩展分区中的逻辑分区)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    gdisk

    GPT分区,优点是支持2TB以上的大硬盘;每个磁盘的分区个数几乎没有限制,分区大小也几乎没有限制。

    #对sda设备进行分区
    gdisk /dev/sda
    
    • 1
    • 2

    mkfs

    #格式化分区,并创建ext4文件系统
    mkfs -t ext4 /dev/sda1
    
    • 1
    • 2

    dumpe2fs

    #查看设备分区文件系统详细信息
    dumpe2fs [-h] 设备分区文件
    
    #测试
    root@ubuntu:/# dumpe2fs -h /dev/sda5
    dumpe2fs 1.45.5 (07-Jan-2020)
    Filesystem volume name:   <none>
    Last mounted on:          /      #挂载点
    Filesystem UUID:          4c252a64-50de-4d0a-b7fb-b693058bb957
    Filesystem magic number:  0xEF53
    Filesystem revision #:    1 (dynamic)
    Filesystem features:      has_journal ext_attr resize_inode dir_index filetype needs_recovery extent 64bit flex_bg sparse_super large_file huge_file dir_nlink extra_isize metadata_csum
    Filesystem flags:         signed_directory_hash 
    Default mount options:    user_xattr acl   #挂载选项 这里开启了acl
    Filesystem state:         clean
    Errors behavior:          Continue
    Filesystem OS type:       Linux     #文件系统的操作系统类型
    Inode count:              2588672   #文件数
    Block count:              10353920   #数据块数
    Reserved block count:     517696
    Free blocks:              8182717   #可用的数据块数
    Free inodes:              2425818   #可用的文件数
    First block:              0
    Block size:               4096      #块大小(字节)4KB
    Fragment size:            4096
    Group descriptor size:    64
    Reserved GDT blocks:      1024
    Blocks per group:         32768
    Fragments per group:      32768
    Inodes per group:         8192
    Inode blocks per group:   512
    Flex block group size:    16
    Filesystem created:       Thu Dec 30 05:29:39 2021
    Last mount time:          Sun Jun 12 10:08:18 2022
    Last write time:          Sun Jun 12 10:08:17 2022
    Mount count:              3
    Maximum mount count:      -1
    Last checked:             Thu Dec 30 05:29:39 2021
    Check interval:           0 (<none>)
    Lifetime writes:          11 GB
    Reserved blocks uid:      0 (user root)
    Reserved blocks gid:      0 (group root)
    First inode:              11
    Inode size:	          256
    Required extra isize:     32
    Desired extra isize:      32
    Journal inode:            8
    First orphan inode:       528233
    Default directory hash:   half_md4
    Directory Hash Seed:      c251ed7e-ceb5-4dbb-aaa2-3b45810f81cc
    Journal backup:           inode blocks
    Checksum type:            crc32c
    Checksum:                 0x869e84ca
    Journal features:         journal_incompat_revoke journal_64bit journal_checksum_v3
    Journal size:             256M
    Journal length:           65536
    Journal sequence:         0x00002ece
    Journal start:            50458
    Journal checksum type:    crc32c
    Journal checksum:         0xc8fb3de7
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60

    partprobe

    #重新读取分区表信息(配置生效)
    partprobe
    
    • 1
    • 2

    磁盘配额管理

    xfs_quota

    xfs类型文件系统的quota

    #xfs_quota -x -c "指令" [挂载点]
    #列出目前系统的各的文件系统
    xfs_quota -x -c "print"
    #列出 / 这个支持 quota 的载点文件系统使用情况
    xfs_quota -x -c "df -h" /
    #列出挂载点 / 的所有用户的quota限制值
    xfs_quota -x -c "report -ubih" /
    #查看当前支持quota的文件系统是否开启quota功能
    xfs_quota -x -c "state"
    #给user1用户对挂载点 / 设置break limit sofr限制250M hard限制300M
    xfs_quota -x -c "limit -u bsoft=250M bhard=300M user1" /
    #给myquotagrp用户组对挂载点 / 设置限制
    xfs_quota -x -c "limit -g bsoft=950M bhard=1G myquotagrp" /
    #设置grace time
    xfs_quota -x -c "timer -ug -b 14days" /
    #关闭xfs的quota限制功能
    xfs_quota -x -c "disable -up" /
    #重新启动 quota 限制
    xfs_quota -x -c "enable -up" /
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    磁盘阵列

    mdadm

    #使用vda{5,6,7,8,9}生成软件磁盘阵列md0
    #--level 磁盘阵列等级0,1,5,6
    #--chunk 块大小 
    #--raid-devices=N  使用几个磁盘 (partition) 作为磁盘阵列的设备
    #--spare-devices=N  备用设备数
    mdadm --create /dev/md0 --auto=yes --level=5 --chunk=256K  --raid-devices=4 --spare-devices=1 /dev/vda{5,6,7,8,9}
    
    #关闭RAID
    mdadm --stop /dev/md0
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    LVM管理

    pvcreate

    #将分区创建成PV
    pvcreate /dev/vda{5,6,7,8}
    
    • 1
    • 2

    pvscan

    #搜寻目前系统里面任何具有 PV 的磁盘
    pvscan
    
    • 1
    • 2

    pvdisplay

    #显示出目前系统上面的 PV 状态
    pvdisplay /dev/vda5
    
    • 1
    • 2

    vgcreate

    #创建VG,多个PV组成VG
    vgcreate -s 16M vgdev /dev/vda{5,6,7}
    
    • 1
    • 2

    vgscan

    #列举系统上存在的VG
    vgscan
    
    • 1
    • 2

    vgdisplay

    #展示名为vgdev的VG的状态信息
    vgdisplay vgdev
    
    • 1
    • 2

    vgextend

    #往VG内添加PV(先将/dev/vda8变成PV)
    vgextend vgdev /dev/vda8
    
    • 1
    • 2

    vgreduce

    #在VG内移除PV
    vgreduce vgdev /dev/sdb2
    
    • 1
    • 2

    lvcreate

    #lvcreate [-L N[mgt]] [-n LV名称] VG名称
    #-L 大小
    #-n LV名称
    #-s 代表是 snapshot
    lvcreate -L 2G -n vldev vgdev
    
    • 1
    • 2
    • 3
    • 4
    • 5

    lvscan

    #扫描当前存在的LV
    lvscan
    
    • 1
    • 2

    lvresize

    • lvextend :在 LV 里面增加容量
    • lvreduce :在 LV 里面减少容量
    • lvresize:LV 进行容量大小的调整
    #对 LV 进行容量大小的调整(+1G)
    lvresize -L +1G /dev/lvdev
    
    • 1
    • 2

    工作管理

    jobs

    #观察当前shell背景工作状态
    jobs -l
    
    • 1
    • 2

    fg

    #将指定shell后景工作拉回前台
    fg %jobnumber
    
    • 1
    • 2

    bg

    #启动一个shell后景工作
    #(ctrl+z,将一个前景工作暂停放到后景)
    bg %jobnumber
    
    • 1
    • 2
    • 3

    进程管理

    ps

    #观察进程信息(某一时间节点)
    #-A 显示所有的process
    #-a 显示于terminal无关的process
    #l 详细信息
    #u
    #常用查询
    ps -l
    #F S   UID   PID  PPID  C PRI  NI ADDR SZ WCHAN  TTY TIME CMD
    #F 旗标
    #S 状态
    #UID PID PPID
    #C CPU使用率
    #PRI(优先值) NI(用户设置优先值波动) PRI = PRI + NI,最终的 PRI 仍是要经过系统分析
    #ADDR SZ WCHAN(内核有关function) 
    #TTY 终端机位置 
    #TIME 使用掉CPU时间 
    #CMD 触发指令
    #常用查询
    ps aux
    #常用查询(查询所有进程)
    ps -lA
    #常用查询(查询进程树)
    ps axjf
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23

    top

    #动态获取进程信息
    #每2秒获取一次
    top -d 2
    
    • 1
    • 2
    • 3

    pstree

    #-A 树之间的连接以ASCII字符链接
    #-p 显示PID
    #-u 显示进程所属账号
    #获取进程信息,以树形构造
    pstree -Aup
    
    • 1
    • 2
    • 3
    • 4
    • 5

    fuser

    #查看有哪些进程才使用/目录下的文件
    fuser -uv /
    
    • 1
    • 2

    nice

    #进程赋予新的NI值
    nice [-n 数字] command
    
    • 1
    • 2

    renice

    #重新跳转新的NI值
    renice [number] PID
    
    • 1
    • 2

    free

    #显示当前系统内存使用
    free -h
    
    • 1
    • 2

    kill

    #kill -signal PID
    #-l  列出目前 kill 能够使用的讯号有哪些?
    #  -1 重新读取一次参数的配置文件;
    #  -2 代表与由键盘输入 [ctrl]-c 同样的动作;
    #  -9 立刻强制删除一个工作;
    #  -15以正常的程序方式终止一项工作。
    #杀死一个进程
    kill -9 PID
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    nohup

    #后台运行
    nohup
    
    • 1
    • 2

    系统管理

    dmesg

    #输出核心开机时的信息,信息很多,使用more分页
    dmesg | more
    
    • 1
    • 2

    vmstat

    #侦测系统资源变化
    #vmstat [-a] [延迟 [总计侦测次数]]
    #-fs 内存相关
    #-a cpu/内存等信息
    #-d 磁盘(设备)
    #-p 磁盘(分区)
    #打印cpu状态信息,打印3次,每秒一次
    vmstat 1 3
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    SELinux管理

    getenforce

    #查看当前SELinux模式,如过没安装SELinux,该命令将无法使用
    getenforce
    
    • 1
    • 2

    setenforce

    #将 SELinux 在 Enforcing 与 permissive 之间切换
    #0 : 转成permissive 宽容模式
    #1 : 转成Enforcing 强制模式
    #切换为宽容模式
    setenforce 0
    
    • 1
    • 2
    • 3
    • 4
    • 5

    sestatus

    #列出目前SELinux信息
    sestatus
    
    • 1
    • 2

    getsebool

    #查看selinux规则情况
    getsebool -a
    
    • 1
    • 2

    seinfo

    #列出SELinux在当前政策选择下的统计数据
    seinfo [-Atrub]
    
    • 1
    • 2

    sesearch

    #sesearch [-a] [-s 主体类型] [-t 目标类型] [-b 布尔值]
    #以crond_t这个主体类型读取SELinux type的情况
    sesearch -A -s crond_t
    
    • 1
    • 2
    • 3

    restorecon

    #使用 restorecon 让文件恢复正确的 SELinux type
    restorecon [-Rv] 文件或目录
    
    • 1
    • 2

    权限管理命令

    chmod

    权限修改

    #格式chmod [{ugoa} {+-=} {rwx}]
    #第一位文件类型,前1-4拥有者权限,5-7组权限,8-10其他用户权限
    #给所有者加执行权限(r读,w写,x执行)
    chmod u+x text.txt
    #mod方式修改权限(r4,w2,x1),下面对应drwxr_xr_x
    chmod 755 /tmp
    #递归修改
    chmod 755 /tmp -R
    #给执行文件加SUID权限(执行文件)
    chmod u+s /tmp/ex
    #给文件加SGID权限(执行文件和目录)
    chmod g+s /tmp/ex
    #给目录加SBIT粘着位(目录)
    chmod o+t /tmp
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    chown

    所有者修改

    #格式 chown [用户][文件或目录]
    chown yao text.txt
    
    • 1
    • 2

    chgrp

    #格式 chgrp [用户组][文件或目录]
    chgrp yao text.txt
    
    • 1
    • 2

    umask

    显示修改缺省(默认)权限

    #以rwx方式显示
    umask -S
    #修改默认权限(那么创建的文件权限是600(文件创建是默认不给执行的),目录是700)
    umask 077
    
    • 1
    • 2
    • 3
    • 4

    sudo

    #赋予普通用户使用root的命令权限
    #权限控制文件在/etc/sudoers
    sudo shutdown
    
    • 1
    • 2
    • 3

    ACL管理

    getfacl

    #获取目录的acl信息
    getfacle /tmp/testdir
    
    • 1
    • 2

    setfacl

    #设置acl权限
    #-m 设定acl权限
    #-b 删除所有ACL权限
    #-R 递归
    #设置用户user1 rx权限
    setfacl -m u:user1:rx /tmp/testdir
    #修改mask最大权限
    setfacl -m m:rx /tmp/testdir
    #删除所有ACL权限
    setfacl -b /tmp/testdir
    #设置默认ACL权限
    setfacl -m d:u:user1:rx /tmp/testdir
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    文件属性管理

    chattr

    改变文件属性,用于修改ext2文件系统上的文件或目录属性

    #i 不得更改文件或目录
    #s 保密性删除文件或目录
    #S 即时更新文件或目录
    #u 预防意外删除
    chattr +i /etc/xxx.conf
    
    • 1
    • 2
    • 3
    • 4
    • 5

    lsattr

    #展示权限
    lsattr -a /etc
    
    • 1
    • 2

    用户管理

    adduser

    添加用户

    #添加用户yao
    #-u UDI
    #-
    adduser user1
    
    • 1
    • 2
    • 3
    • 4

    passwd

    修改用户密码

    #修改用户密码(root)
    passwd user1
    #修改用户密码(用户自身)
    passwd
    #锁定用户
    passwd -l user1
    #解锁用户
    passwd -u user1
    #给用户user1设置密码(shell脚本中批量设置用户密码,注:不安全,history中会查到密码)
    echo "新密码" | passwd --stdin user1
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    usermod

    #格式usermod [选项] 用户名
    #-u UID
    #-c 用户说明
    #-G 组名
    #-L 锁定用户
    #-U 解锁用户
    usermod -L user1
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    chage

    修改用户密码状态

    #chage [选项] 用户名
    #-l  列出用户状态
    #-d 用户修改日期(shadow文件中第三个字段)
    #用户登录时就要修改密码
    chage -d 0 user1
    
    • 1
    • 2
    • 3
    • 4
    • 5

    userdel

    #userdel [-r] 用户名
    #-r 删除用户同时删除用户家目录
    userdel -r user1
    
    • 1
    • 2
    • 3

    gpasswd

    #把用户加入组
    gpasswd -a user1 usergroup
    #把用户从组中移除
    gpasswd -d user1 usergroup
    
    • 1
    • 2
    • 3
    • 4

    id

    #查看用户id
    id user1
    
    • 1
    • 2

    su

    #用户切换
    su root
    #不切root借root,执行useradd user1命令
    su -root -c "useradd user1"
    
    • 1
    • 2
    • 3
    • 4

    who

    查看当前登录用户信息

    who
    
    • 1

    查找

    find

    #格式 find [查找目录] [选项] [查找名]
    #查找名为init的文件或目录
    find /etc -name init
    #不区分大小写查找
    find /etc -iname init
    #查找文件大于100MB的文件(+大于 -小于  等于)
    #按数据块换算 1数据块=512字节=0.5KB
    find /etc -size +204800
    #根据所有者查找
    find /etc -user root
    #根据所有组查找
    find /etc -group root
    #根据最近访问时间查找(5分钟)
    find /etc -amin 5
    #根据最近修改文件属性的查找(change)
    find /etc -cmin 5
    #根据最近修改文件内容查找(modify)
    find /etc -mmin 5
    #根据文件类型(f文件 d目录 l软连接)
    find /etc -type f
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    locate

    快速搜索,文件库进行搜索(非实时查找)

    #搜索文件(不找/tmp)
    locate text.txt
    #不区分大小写查找
    locate -i text.txt
    #升级资料库
    updatedb
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    which

    查找命令

    #查找命令的路径
    which ls
    
    • 1
    • 2

    whereis

    查找命令以及其帮助文档

    whereis ls
    
    • 1

    grep

    内容查找

    #指定内容,查找文件中的某一行
    grep mysql /root/install.log
    #排除指定字符串(排除#开头的所有行)
    grep -v ^# /etc/inittab
    #通过管道符查找安装了httpd rpm包
    rpm -qa | grep httpd
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    查找帮助信息

    man

    查看配置文件帮助信息或者命令的帮助信息

    #格式 man [命令或配置文件]
    man ls
    
    • 1
    • 2

    whatis

    显示命令的简介信息

    #查看ls命令的简介
    whatis ls
    
    • 1
    • 2

    help

    查看shell命令的帮助信息

    #查看cd的帮助信息(cd属于shell命令)
    help cd
    
    • 1
    • 2

    其他

    runlevel

    查看当前系统运行级别

    runlevel
    
    • 1

    登出

    logout

    用户登出

    logout
    
    • 1

    rpm包安装

    rpm

    rpm包用于redhat系列Linux

    #格式rpm [选项] 包名
    #-i 安装
    #-v 显示详细信息
    #-h 显示进度
    #-U 升级
    #-e 卸载(只需包名)
    #-q 查询已安装包信息(只需包名)
    #-p 未安装包信息
    #-l list展示(文件展示)
    #-f 通过文件反向查找包名
    #-R 查询软件包依赖性
    #-V 校验
    #安装
    rpm -ivh xxx.rpm
    #查询已经安装的包的文件列表信息
    rpm -ql httpd
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    rpm2cpio

    将rpm包转换为cpio格式的命令

    #修复rpm
    rpm2cpio xxx.rpm | cpio -idv [还原文件路径]
    
    • 1
    • 2

    yum安装

    yum线上服务安装rpm包

    #安装httpd
    #-y 自动yes
    #安装gcc
    yum -y install gcc
    #跟新gcc
    yum -y update gcc
    #卸载
    yum -y remove gcc
    #软件包组安装
    yum groupinstall [软件包组]
    #软件包组卸载
    yum groupremove [软件包组]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    变量

    set

    #查看所有变量
    set
    
    • 1
    • 2

    unset

    #删除变量name
    unset name
    
    • 1
    • 2

    export

    #定义环境变量
    export name=zs
    
    • 1
    • 2

    env

    #查询环境变量
    env
    
    • 1
    • 2

    ,查找文件中的某一行
    grep mysql /root/install.log
    #排除指定字符串(排除#开头的所有行)
    grep -v ^# /etc/inittab
    #通过管道符查找安装了httpd rpm包
    rpm -qa | grep httpd

    
    
    
    ### 查找帮助信息
    
    #### man
    
    查看配置文件帮助信息或者命令的帮助信息
    
    ```shell
    #格式 man [命令或配置文件]
    man ls
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    whatis

    显示命令的简介信息

    #查看ls命令的简介
    whatis ls
    
    • 1
    • 2

    help

    查看shell命令的帮助信息

    #查看cd的帮助信息(cd属于shell命令)
    help cd
    
    • 1
    • 2

    其他

    runlevel

    查看当前系统运行级别

    runlevel
    
    • 1

    登出

    logout

    用户登出

    logout
    
    • 1

    rpm包安装

    rpm

    rpm包用于redhat系列Linux

    #格式rpm [选项] 包名
    #-i 安装
    #-v 显示详细信息
    #-h 显示进度
    #-U 升级
    #-e 卸载(只需包名)
    #-q 查询已安装包信息(只需包名)
    #-p 未安装包信息
    #-l list展示(文件展示)
    #-f 通过文件反向查找包名
    #-R 查询软件包依赖性
    #-V 校验
    #安装
    rpm -ivh xxx.rpm
    #查询已经安装的包的文件列表信息
    rpm -ql httpd
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    rpm2cpio

    将rpm包转换为cpio格式的命令

    #修复rpm
    rpm2cpio xxx.rpm | cpio -idv [还原文件路径]
    
    • 1
    • 2

    yum安装

    yum线上服务安装rpm包

    #安装httpd
    #-y 自动yes
    #安装gcc
    yum -y install gcc
    #跟新gcc
    yum -y update gcc
    #卸载
    yum -y remove gcc
    #软件包组安装
    yum groupinstall [软件包组]
    #软件包组卸载
    yum groupremove [软件包组]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    变量

    set

    #查看所有变量
    set
    
    • 1
    • 2

    unset

    #删除变量name
    unset name
    
    • 1
    • 2

    export

    #定义环境变量
    export name=zs
    
    • 1
    • 2

    env

    #查询环境变量
    env
    
    • 1
    • 2
  • 相关阅读:
    【Linux】共享内存
    Python数据分析-4
    Spring 七大模块介绍
    quarkus实战之一:准备工作
    【elasticsearch】记录ES查询数据结果为空的问题(单个字搜索可以,词语搜索为空)
    Flink-SQL join 优化 -- MiniBatch + local-global
    DP动态规划2
    OpenCV图像处理学习十三,图像金字塔——高斯金字塔和拉普拉斯金字塔
    大数据开发(Hadoop面试真题-卷九)
    连接虚拟机报错 Could not connect to ‘192.168.xxx.xxx‘ (port 22): Connection failed.
  • 原文地址:https://blog.csdn.net/qq_43203949/article/details/125512204