zoukankan      html  css  js  c++  java
  • Linux 指令补充

    1.重定向

    把前方语句的结果存进文件,若文件不存在会自动创建

    >:输出重定向 会覆盖原来文件内容
    >>:追加重定向 追加到文件末尾

    命令 >/>> 文件路径     :   命名执行结果写入后面的文件里

    小练习:
    1.把/etc/profile 的内容 写进 /home/c.txt中
    1.cp /etc/profile /home/c.txt
    2.cat /etc/profile > /home/c.txt

    2.echo指令

    把内容输出到控制台

    1.echo 内容
    如下:
    echo "我是杨家三少"
    echo $PATH

    3.head指令

    用于显示文件的开头部分内容,默认情况下 head 指令显示文件的前 10 行内容

    head 文件路径            查看文件前10行
    head -n 5 文件路径        查看文件前5行

    小练习:
    1.查看/etc/profile 的前5行内容

    4.tail指令

    用于显示文件的结尾部分内容,默认情况下tail指令显示文件的后10行内容

    tail 文件路径            查看文件前10行
    tail -n 5 文件路径        查看文件前5行
    tail -f 文件路径        f:实时监听文件所有的更新并显示-----经常使用

    5.ln指令:软硬链接

    软链接也叫符号链接,类似于 windows 里的快捷方式,主要存放了链接其他文件的路径

    ln  源文件或源文件夹 软连接名      硬链接
    ln -s 源文件或源文件夹 软连接名    软链接

    软硬链接的区别

    https://blog.csdn.net/junjunba2689/article/details/82658292

    注意:

    删除链接时需要注意,不能加/,最好不要加-r,应为/会删除源文件目录
    测试:
    1. 在/home目录下创建/root的软链接,名字为linktoroot
        ln -s /root linktoroot
    2. cd 到软链接,然后pwd,查看当前路径
        
    3. 创建一个a.txt的文件
        
    4. cd 到 /root目录,查看是否有变化
    5. 删除/home下的linktoroot    (需要注意,不能加/,最好不要加-r)
        rm -f linktoroot

    5.history指令

    查看已经执行过历史命令,也可以执行历史指令

    history         查看所有的历史指令
    history 10        查看最近执行的10条指令
    !100            执行编号为100的指令

    6.date 指令

    date             显示当前日期
    data +%Y        显示当前年份
    data +%m        显示当前月份
    data +%d        显示当前天
    data +%Y-%m-%d %H:%M:%S

     7.cal指令

    查看日历

    cal         显示当前日历
    cal 2020     显示2020年的日历
    cal 10 2018  显示2018年10月份日历

    8.find指令

    指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件或者目录显示在终端

    find [范围] [选项]
    范围:指路径,不写默认从当前向下找,类似于windows的查找
    
    选项:
    -name 文件名        按文件名查找
    -user 用户名        查找属于该用户的所有文件
    -size               按文件大小查找,+:大于,小于:-,等于:不写符号
        +20M
        -20M
        20M
        20K
    * 通配符
    小练习:
    1.根据名称查找/home 目录下的 a.txt 文件
        find /home -name a.txt
        find /home -name "*.txt"
    2.查找/opt 目录下,用户名称为 lxx 的文件
        find /opt -user lxx
    3.查找整个 linux 系统下大于 20M 的文件
        find / -size +20M
    4.查询/ 目录下,所有.txt 的文件
        find / -name "*.txt"

    指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件或者目录显示在终端

    9.grep 指令 和 管道符号 |

    1.管道符:"|",表示将前一个命令的处理结果输出传递给后面的命令处理

    2.grep:过滤查找满足条件的文件内容整行数据

    grep [选项] 过滤内容
    
    选项:
    -n        显示匹配行及行号
    -i        忽略字母大小写

    例子:
    1.创建文件,写上多行,包含'yes''YES'
        
    2.查找'yes'所在行,并显示行号
        cat a.txt | grep -n "yes"
    3.忽略大小写,查找'yes'所在行
        cat a.txt | grep -ni "yes"

    10.压缩和解压类

    10.1 gzip/gunzip 指令(只能用于文件压缩)

    gzip 文件路径1 文件路径2
    gunzip gz文件路径1 gz文件路径2 
    说明:使用gzip压缩文件之后,不会保留原来的文件

     

    10.2 zip/unzip 指令

    zip 用于压缩文件, unzip 用于解压的,这个在项目打包发布中很有用的

    zip [选项] 压缩名.zip 被压缩内容1 被压缩的内容2            压缩内容为:压缩文件路径或者目录路径
          -r                                              压缩文件夹必选
    
    unzip [选项] 压缩名.zip                                   解压文件    
        -d 目录                                            指定压缩后的存放目录
    例子:
    1.将 /home 下的 所有文件进行压缩成 mypackage.zip
        zip -r mypackage.zip /home
        zip -r mypackage.zip /home/*
    2.讲mypackge.zip解压到/opt/tmp下
        unzip -d /opt/tmp mypackge.zip

    10.3 tar

    tar 指令 是打包指令,最后打包后的文件是 .tar.gz 的文件

    压缩:
    tar -zcvf 压缩名.tar.gz  被压缩内容(文件,文件夹,多个也行)                        压缩
    tar -zxvf 压缩名.tar.gz     -C 解压后存放路径                                        解压
    
    z:使用gzip格式压缩,否则是单纯打包
    c:压缩
    x:解压
    f:显示压缩解压过程
    v:显示提示信息
    
    例子:
    1.压缩多个文件,将  /home/a1.txt 和  /home/a2.txt 压缩成    a.tar.gz
        tar -zcvf a.tar.gz /home/a1.txt /home/a2.txt
    2.将/home 的文件夹 压缩成 myhome.tar.gz
    3.将  a.tar.gz    解压到当前目录
    4.将 myhome.tar.gz    解压到 /opt/ 目录下

    11.权限管理

    11.1 Linux组基本介绍

    在 linux 中的每个用户必须属于一个组,不能独立于组外。在 linux 中每个文件有所有者(文件创建者)、所在组、其它组的概念

     11.2 查看文件的所有者

    ls -ahl

     11.3修改文件所有者

    chown 用户名 文件名路径

    11.4 组的创建

    groupadd 组名

    11.5 修改文件所在组

    chgrp 组名 文件名

    11.6 改变用户所在组

    ## 10.5 其他组
    
    除文件的所有者和所在组的用户外,系统的其它用户都是文件的其它组
    
    ## 10.6 改变用户所在组
    
    在添加用户时,可以指定将该用户添加到哪个组中,同样的用
    root 的管理权限可以改变某个用户所在的组
    
    ### 10.6.1 改变用户所在组
    usermod    –g    组名    用户名

    11.7权限基本介绍

    ls -l
    -rwxrw-r-- 1 root root 1213 Feb 2 09:39 abc
    
    0-9 位说明
    第 0 位确定文件类型(d,-,l)
    第 1-3 位确定所有者(该文件的所有者)拥有该文件的权限
    第 4-6 位确定所属组(同用户组的)拥有该文件的权限
    第 7-9 位确定其他用户拥有该文件的权限

    11.8rwx权限详解

    1. rwx作用到文件
    r:可读
    w:可写[可写不代表可以删除,删除一个文件的前提是对文件所在的目录有写的权限]
    x:可执行
    
    2.rwx作用到目录
    r:可读(可用ls查看目录内容)
    w:可写[可在目录内创建+删除+重命名文件或目录]
    x:可执行[可以进入目录]

    3.
    可用数字表示:
     r = 4

      w = 2
      x = 1
       因此rwx = 4+2+1 = 7

    11.9修改权限

    chmod 权限变更格式 文件或目录路径
    
    1.权限变更格式一:
    u:所有者    g:所有组    o:其他用户    a:所有人
    
    1. u=rwx,g=rx,o=x
    2. o+w                    其它用户增加w权限
    3. a-x                    所有人减去执行权限
    例子:
    1.给 abc 文件 的所有者读写执行的权限,给所在组读执行权限,给其它组读执行权限
        chmod u=rwx,g=rx,o=rx abc
    2.给 abc 文件的所有者除去执行的权限,增加组写的权限
        chmod u-x,g+w abc
    3.给 abc 文件,所有用户添加读的权限
        chmod a+r abc
    
    2.权限变更格式二:
    r = 4   w = 2  x = 1    rwx = 7      rx = 5
    chmod u=rwx,g=rx,o=x   可以写成        chmod 751
    例子:
    1.将 /home/abc 文件的权限修改成    rwxr-xr-x, 使用给数字的方式实现
        chmod  755  /home/abc
  • 相关阅读:
    开启Tomcat APR运行模式,优化并发性能
    KVM与XEN虚拟化环境究竟有何不同
    fio测试freenas共享的iscsi磁盘性能
    ubuntu 16.04网速监控脚本
    centos 7网速监控脚本
    ubuntu 16.04 配置远程连接
    iometer测试磁盘IO性能
    pip 使用豆瓣源
    raid write back / write throught
    卡常数技巧
  • 原文地址:https://www.cnblogs.com/tfzz/p/12061619.html
Copyright © 2011-2022 走看看