• 四、Centos7基础应用命令


    一、Centos7基础应用命令

    1、系统操作命令

    1)系统相关运行命令
    系统关机:
        halt 立刻关机
       2、poweroff 立刻关机
       3、shutdown -h now 立刻关机(root用户使用)
       4、shutdown -h 10 10分钟后自动关机
       shutdown -c命令取消重启
    系统重启:
        reboot 普通重启
       2、shutdown -r now 立刻重启(root用户使用)
       3、shutdown -r 10 过10分钟自动重启(root用户使用)
       4、shutdown -r 20:35 在时间为20:35时候重启(root用户使用)
       shutdown -c命令取消重启


    2)目录路径相关命令
    ls (list) 打印当前目录文件
      -l      打印当前详细文件列表
      -a    打印当前所有文件(包含隐藏文件)
      -d     ls -ld /tmp 只查看指定tmp目录自身信息,不查看tmp目录里面的文件信息
        例:ls /tmp -la 打印/tmp目录下所有文件详细文件列表
        例:[root@localhost ~]# ls /tmp/aa.txt
        ls: cannot access /tmp/aa.txt: No such file or directory 当前目录下没有该文件
      ls -ltr /etc/   -- 按照时间进行排序显示数据信息,并且是反向排序
    mkdir(make directory) 创建目录
      -p 递归创建多个目录
      例:mkdir /tmp/centos 在/tmp目录下创建centos目录
      例:[root@localhost tmp]# mkdir /tmp/centos
      mkdir: cannot create directory ‘/tmp/centos’: File exists #当前目录己存在
      例: [root@localhost tmp]# mkdir /tmp/centos/aa/bb/cc -p
    cd   切换目录
    cd    /tmp 切换到/tmp目录
    pwd   查看当前所在路径

    绝对路径与相对路径
    相对路径 如:cd .. 回到上级目录,cd ~ 进入家目录,cd - 返回进入此目录之前所在的目录
    绝对路径 如:cd /tmp/centos


    3)编辑文件的相关命 令
    touch 创建文件
      如:touch /tmp/a.txt
    vi 或 vim 编辑文件内容
      如:vi /tmp/a.txt 进入编辑窗口
      第一步:vi /tmp/a.txt 第二步:按键盘a键进入编辑状态 第三步:
      编辑完后按键盘ESC键退出编辑模式, 然后输入:wq 保存并退出,
      如果不想保存,可以按键盘ESC键退出编辑模式, 然后输入:q! 直接退出,
    echo   在屏幕打印内容 echo "hello world"
    >         标准输出重定向符号 echo "hello world" > /tmp/a.txt 先清空文件内容再添加新的信息
    >>       echo "hello world" > /tmp/a.txt 不清空文件内容,把新的内容追加到文件最后一行


    4)查看文件内容的命令
    cat     查看文件内容 如: cat /tmp/a.txt
      cat文件生成用法:
      方法一:
      [root@dingjian tmp]# cat>>cc<<EOF
      > i am studying linux
      > EOF
      方法二:
      [root@dingjian tmp]# cat>cc.txt
      I am studying linux
      回车
      ctrl+c退出
      more 查看文件内容 如: cat /tmp/a.txt


    5)复制保存文件命令
    copy
      用法:cp 要复制的数据信息 复制到哪个目录
      复制文件 cp /tmp/a.txt /tmp/centos/
      cp /tmp/a.txt /tmp/centos/ 在cp命令前加符号,强行复制并覆盖目录下相同的文件
      复制目录 cp -r /etc /tmp/centos/


    6)删除移动数据命令
    rm  删除文件或目录
      rm -f /tmp/a.txt 强行删除文件
      rm -r /tmp/centos 删除目录
      rm -rf /tmp/centos 强行删除目录及目录里的数据
    mv 移动文件或目录
      mv /etc/redhat.txt /tmp/ 移动文件
      mv -f a.txt /tmp/ 强行复制文件
      mv /etc /tmp/ 移动目录
      mv /tmp/a.txt /tmp/b.txt 修改文件名称

    6)查看磁盘使用情况

    df  查看磁盘使用情况

    [root@mrxiong ~]# df -h
    Filesystem      Size  Used Avail Use% Mounted on
    /dev/sda3        36G  1.2G   34G   4% /
    devtmpfs        1.9G     0  1.9G   0% /dev
    tmpfs           1.9G     0  1.9G   0% /dev/shm
    tmpfs           1.9G   12M  1.9G   1% /run
    tmpfs           1.9G     0  1.9G   0% /sys/fs/cgroup
    /dev/sda1      1014M  138M  877M  14% /boot
    tmpfs           378M     0  378M   0% /run/user/0

    8)系统帮助
    --help    如:查看mkdir命令的帮助 mkdir --help
    man     如:查看mkdir命令的帮助 man mkdir

    [root@localhost ~]# man mkdir
    NAME #命令的作用说明
        mkdir - make directories
    
    SYNOPSIS #命令的使用方法
        mkdir [OPTION]... DIRECTORY...
    
    DESCRIPTION #命令的参数解译
        Create the DIRECTORY(ies), if they do not already exist.
    
        Mandatory arguments to long options are mandatory for short options too.
    
        -m, --mode=MODE
        set file mode (as in chmod), not a=rwx - umask

    9)快捷方式的使用方法
    ctrl+a 将光标快速移动到行首
    ctrl+e 将光标快速移动到行尾
    ctrl+?? ?? 将光标按单词快速左右移动
    ctrl+w 将空格分隔的一个字符串整体进行删除(剪切)
    ctrl+u 将光标所在位置到行首内容进行删除(剪切)
    ctrl+k 将光标所在位置到行尾内容进行删除(剪切)
    ctrl+y 粘贴剪切的内容
    ctrl+s xshell进入到了锁定状态 suo锁
    ctrl+q 解除锁定状态 quit推出锁定状态

    10)查看远程服务没有开启 

    服务端进行测试
    systemctl status sshd
    ss == netstat

    [root@mrxiong ~]# ss -lntup
    Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port 
    udp UNCONN 0 0 127.0.0.1:323 *:* users:(("chronyd",pid=908,fd=1))
    udp UNCONN 0 0 ::1:323 :::* users:(("chronyd",pid=908,fd=2))
    tcp LISTEN 0 128 *:22 *:* users:(("sshd",pid=2540,fd=3))
    tcp LISTEN 0 100 127.0.0.1:25 *:* users:(("master",pid=1433,fd=13))
    tcp LISTEN 0 128 :::22 :::* 

    -l list --- 列表显示网络服务信息
    -n number --- 以数字方式进行显示
    -t tcp --- 网络协议
    -u udp --- 网络协议
    -p process --- 显示服务进程信息
    面试题:
    1. 已知一个服务的名称,请告知服务的端口号是什么
    2. 已知一个服务的端口,请给出端口号对应服务进程信息

    如何有netstat命令
    yum install -y net-tools

    [root@mrxiong  ~]# netstat -lntup
    Active Internet connections (only servers)
    Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name 
    tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 3365/sshd 
    tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1433/master 
    tcp6 0 0 :::22 :::* LISTEN 3365/sshd 
    tcp6 0 0 ::1:25 :::* LISTEN 1433/master 
    udp 0 0 127.0.0.1:323 0.0.0.0:* 908/chronyd 
    udp6 0 0 ::1:323 :::* 908/chronyd

    只检查有22端口的信息

    [root@mrxiong  ~]# ss -lntup|grep "22"
    tcp LISTEN 0 128 *:22 *:* users:(("sshd",pid=3365,fd=3))
    tcp LISTEN 0 128 :::22 :::* users:(("sshd",pid=3365,fd=4))

    11). 查看文件信息方法
    1) 查看文件或者目录的属性信息
    命令: ls查看数据信息
    [root@centosdu ~]# ls /mrxiong --- 查看目录中有什么数据信息
    mrxiong01 mrxiong.txt oldgirl.txt
    [root@centosdu ~]# ls /mrxiong/mrxiong.txt --- 查看目录中文件信息是否存在
    /mrxiong/mrxiong.txt
    [root@centosdu ~]# ls -l /mrxiong/mrxiong.txt --- 查看文件属性信息
    -rw-r--r--. 1 root root 50 Apr 1 10:24 /mrxiong/mrxiong.txt
    [root@centosdu ~]# ls -ld /mrxiong/ --- 查看目录属性信息
    drwxr-xr-x. 3 root root 59 Apr 11 10:23 /mrxiong/
    [root@centosdu ~]# ls -la /mrxiong/ --- 查看目录中所有数据信息,包含隐藏文件
    total 8
    drwxr-xr-x. 3 root root 59 Apr 11 10:23 .
    dr-xr-xr-x. 21 root root 282 Mar 29 16:21 ..
    drwxr-xr-x. 3 root root 100 Apr 1 11:00 mrxiong01
    -rw-r--r--. 1 root root 50 Apr 1 10:24 mrxiong.txt
    -rw-r--r--. 1 root root 18 Apr 11 10:23 oldgirl.txt

    企业工作的一个问题:
    多个运维人员维护服务器,下班着急回家,交代:将mrxiong目录中最新的数据文件需要继续编辑好
    ls -ltr /etc/ -- 按照时间进行排序显示数据信息,并且是反向排序

    2) 查看文件内容信息方法
    命令: cat
    [root@centosdu ~]# cat /mrxiong/mrxiong.txt --- 查看单个文件
    hello world
    mrxiong shenzhen 01
    mrxiong shenzhen 02
    [root@centosdu ~]# cat /mrxiong/mrxiong.txt /mrxiong/oldgirl.txt --- 查看多个文件
    hello world
    mrxiong shenzhen 01
    mrxiong shenzhen 02
    mrxiong01
    mrxiong02
    [root@centosdu ~]# cat -n /mrxiong/mrxiong.txt --- 查看文件时,显示每行的行号
    1 hello world
    2 mrxiong shenzhen 01
    3 mrxiong shenzhen 02
    命令: less/more

    less /etc/service --- 类似于看书,一点点查看文件内容
    向下逐行显示: 回车
    向下逐页显示: 空格
    向上逐行显示: 方向键上
    向上逐页显示: 字母b
    搜索信息: /搜索的字符串信息
    [root@centosdu ~]# less -N /etc/services
    1 # /etc/services:
    2 # $Id: services,v 1.55 2013/04/14 ovasik Exp $
    3 #
    4 # Network services, Internet style
    5 # IANA services version: last updated 2013-04-10
    按q结束查看

    more /etc/service --- 类似于看书,一点点查看文件内容
    向下逐行显示: 回车
    向下逐页显示: 空格
    向上逐行显示: 字母f/b

    head 前几行
    tail 后几行

    04. 直接编辑文件命令方法
    a 如何直接在文件中添加单行内容
    echo "mrxiong" >>/mrxiong/mrxiong.txt
    补充: echo命令用法说明:
    01. 请在屏幕上输出 centosdu.com信息
    02. 请在屏幕上输出 1 2 3 .... 100 的数字信息
    输出序列信息
    a 显示连续的序列

    [root@centosdu ~]# echo {1..100}
    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 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
    [root@centosdu ~]# echo {01..100}
    001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 018 019 020 021 022 023 024 025 026 027 028 029 030 031 032 033 034 035 036 037 038 039 040 041 042 043 044 045 046 047 048 049 050 051 052 053 054 055 056 057 058 059 060 061 062 063 064 065 066 067 068 069 070 071 072 073 074 075 076 077 078 079 080 081 082 083 084 085 086 087 088 089 090 091 092 093 094 095 096 097 098 099 100

    b 显示不连续的序列
    a 不连续有规律的序列
    问题:
    显示1..10 的奇数信息 1 3 5 7 9
    显示1..10 的偶数信息
    [root@centosdu ~]# echo {01..10..2}
    01 03 05 07 09
    [root@centosdu ~]# echo {02..10..2}
    02 04 06 08 10
    b 不连续无规律的序列

    mkdir -p /mrxiong/mrxiong01/mrxiong02/{www,bbs,blog}

    练习题一:
    在mrxiong目录下面创建出20个文件,二十个文件名称为 mrxiong01,mrxiong02 ..mrxiong20
    touch

    b 如何直接在文件中添加多行内容

    [root@centosdu ~]# cat /mrxiong/mrxiong.txt 
    hello world
    mrxiong shenzhen 01
    mrxiong shenzhen 02
    [root@centosdu ~]# cat >> /mrxiong/mrxiong.txt <<EOF
    > mrxiong01
    > mrxiong02
    > mrxiong03
    > EOF
    [root@centosdu ~]# cat /mrxiong/mrxiong.txt 
    hello world
    mrxiong shenzhen 01
    mrxiong shenzhen 02
    mrxiong01
    mrxiong02
    mrxiong03
    [root@centosdu ~]# cat >> /mrxiong/mrxiong.txt <<mrxiong
    > mrxiong04
    > mrxiong05
    > mrxiong
    [root@centosdu ~]# cat /mrxiong/mrxiong.txt 
    hello world
    mrxiong shenzhen 01
    mrxiong shenzhen 02
    mrxiong01
    mrxiong02
    mrxiong03
    mrxiong04
    mrxiong05

    05. 过滤筛选文件内容命令
    三剑客命令
    老三: grep 过滤筛选信息
    老二: sed 修改替换文件内容 擅长对文件中的行进行操作
    老大: awk 擅长统计分析文件内容 擅长对文件中列进行操作

    grep命令如何进行过滤:
    编辑一个测试文件

    [root@centosdu ~]# cat >> /mrxiong/test.txt <<EOF
    > mrxiong01
    > oldgirl01
    > olddog01
    > mrxiong02
    > oldgirl02
    > olddog02
    > EOF
    [root@centosdu ~]# cat /mrxiong/test.txt 
    mrxiong01
    oldgirl01
    olddog01
    mrxiong02
    oldgirl02
    olddog02

    需求01: 请筛选出有mrxiong的信息

    [root@centosdu ~]# grep "mrxiong" /mrxiong/test.txt 
    mrxiong01
    mrxiong02

    需求02: 筛选有oldgirl的信息,但是要有oldgirl信息的上一行信息也显示

    [root@centosdu ~]# grep -B 1 "oldgirl" /mrxiong/test.txt 
    mrxiong01
    oldgirl01
    --
    mrxiong02
    oldgirl02

    需求03: 筛选有oldgirl的信息,但是要有oldgirl信息的下一行信息也显示

    [root@centosdu ~]# grep -A 1 "oldgirl" /mrxiong/test.txt 
    oldgirl01
    olddog01
    --
    oldgirl02
    olddog02

    需求04.筛选有oldgirl的信, 但是要有oldgirl信息的下一行和下一行信息也显示

    [root@centosdu ~]# grep -C 1 "oldgirl" /mrxiong/test.txt 
    mrxiong01
    oldgirl01
    olddog01
    mrxiong02
    oldgirl02
    olddog02

    需求05. 统计oldgirl信息在文件中出现了几次
    [root@centosdu ~]# grep -c "oldgirl" /mrxiong/test.txt

    sed命令如何进行过滤信息

    [root@centosdu ~]# sed -n "/mrxiong/p" /mrxiong/test.txt 
    mrxiong01 edu.com
    mrxiong02

    p print 将过滤信息输出
    -n 取消原文件的所有内容输出(取消默认输出)

    [root@centosdu ~]# awk "/mrxiong/" /mrxiong/test.txt 
    mrxiong01 edu.com
    mrxiong02

    06. 修改文件部分内容信息
    01. sed命令 (师傅: 真正修改文件内容)
    需求: 修改test.txt文件内容 将所有mrxiong信息修改替换为 python
    vim 替换: :%s#mrxiong#python#g
    sed 's#mrxiong#python#g' /mrxiong/test.txt

    实践操作

    [root@centosdu ~]# sed 's#mrxiong#python#g' /mrxiong/test.txt
    python01 edu.com
    oldgirl01
    olddog01
    python02
    oldgirl02
    olddog02
    [root@centosdu ~]# cat /mrxiong/test.txt 
    mrxiong01 edu.com
    oldgirl01
    olddog01
    mrxiong02
    oldgirl02
    olddog02
    [root@centosdu ~]# sed -i 's#mrxiong#python#g' /mrxiong/test.txt
    [root@centosdu ~]# cat /mrxiong/test.txt 
    python01 edu.com
    oldgirl01
    olddog01
    python02
    oldgirl02
    olddog02

    02. tr命令 (徒弟: 假装修改文件内容)
    需求: 修改test.txt文件内容 将所有python信息修改替换为 mrxiong

    [root@centosdu ~]# tr "python" "mrxiong" </mrxiong/test.txt 
    mrxiong01 edu.com
    oldgirl01
    olddog01
    mrxiong02
    oldgirl02
    olddog02
    [root@centosdu ~]# cat /mrxiong/test.txt
    python01 edu.com
    oldgirl01
    olddog01
    python02
    oldgirl02
    olddog02

    tr用法
    [root@centosdu ~]# echo 123|tr "123" "abc"
    abc
    小于号用法1:
    [root@centosdu ~]# tr "123" "abc" < /mrxiong/test01.txt
    abc
    [root@centosdu ~]# cat /mrxiong/test01.txt
    123

  • 相关阅读:
    httpd设置HTTPS双向认证
    crossdomain.xml的配置详解
    hibernate中的merge()方法
    解决java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver问题
    oracle自定义函数:将使用点分隔符的编码转成层级码格式的编码
    jsp页面科学计数法显示问题的解决办法
    javascript检索某个字符或字符串在源字符串中的位置(下标)
    webwork遍历数组标签
    过多得操作DOM会降低WEB应用的性能
    vue中$refs的用法及作用详解
  • 原文地址:https://www.cnblogs.com/mr-xiong/p/13702792.html
Copyright © 2020-2023  润新知