zoukankan      html  css  js  c++  java
  • Linux常用命令(二)之权限管理、文件搜索、帮助、压缩命令及管道

    在(一)中提到过rwx的含义,但是我们还需深入理解,明白其真正的含义和权限,对于文件和目录,rwx权限是不同的,尤其是目录的权限往往是被忽略的:

    这里写图片描述

    对于目录,其权限和对应的操作:

    r-ls
    w-touch、mkdir、rm
    x-cd

    英文原意:change the permissions mode of a file
    功能:改变文件或目录权限
    语法:

    注:+表示增加权限,-表示减少权限,=表示授权
    例子:

    原来一个文件a,假设其权限-rw-r–r–,通过,将others的r权限去掉,文件a的权限变成了-rw-r—–

    通过数字方式,其对应关系是:r-4,w-2,x-1,则权限rxwr-xr-x对应的数字是755(每三个一组)

    英文原意:change file group ownership
    所在路径:/bin/chgrp
    语法: chgrp [用户组] [文件或目录]
    例子: 改变文件file1的所属组为adm

    可以使用useradd [用户名]和passwd [用户名]来填加用户和密码
    语法: chgrp [用户] [文件或目录]
    例子: 改变文件file1的所有者为nobody

    语法:umask 或 umask -S
    -S:以rwx形式显示新建文件或目录缺省权限

    这里写图片描述

    0代表特殊权限位
    022代表用户权限位,权限掩码值,并不是最终权限,需要用777减去掩码值,即777-022=755

    linux权限规则:缺省创建的文件不能授予可执行x权限,这个权限可以屏蔽很多木马与病毒

    命令所在路径:/usr/bin/which
    语法:which [命令名]
    例子:就可以找到命令ls所在的路径
    linux系统中多有对象都是文件,也就是说命令也是文件,因此通过which定位命令所在的目录,也可以确定出命令的权限

    原则:查找占用的系统资源越少越好
    语法:find [搜索路径] [搜寻关键字]

    搜索路径:即查找范围,尽量不要在根目录查找,因为在根目录查找就相当于查找整个硬盘,商务英语会占用大量系统资源和时间

    find是一个复杂的命令,在此仅仅通过实例来介绍最常见的选项:

    注意:与windows不同,windows通过关键字例如init进行查找,会将带有init的文件全部查找出来,而Linux中,仅仅会列出文件名匹配为init的文件

    通配符*:匹配任意字符,例如以init开头的文件可以表示为:

    通配符?:匹配单个字符

    在/etc下查找inittab文件并显示其详细

    注:一个数据块512字节=0.5KB

    100MB=102400KB=204800block

    +表示大于,-表示小于,什么都不写表示等于(一般用不到,因为很难记住每个文件的大小)

    1、天ctime、atime、mtime
    2、分钟cmin、amin、mmin

    • c表示change,改变,表示文件的属性被修改过,例如所有者,所属组,权限,可以通过ls -l来查看文件的属性
    • a表示access,访问,表示文件被浏览过,例如cat,more等
    • m表示modify,修改,表示文件的内容被改过

    -表示之内,-ctime -1表示1天之内
    +表示超过,-ctime +1表示超过一天

    例如,/etc目录下2小时之内,内容被修改过的文件:

    -a and 逻辑与

    在/etc下查找大于80MB小于100MB的文件

    -o or 逻辑或

    -exec

    固定格式:find …… -exec 命令 {} ;

    {}表示find查询的结果
    表示转义符,使一些符号和命令使用其本身的含义
    ;表示语句的结束

    例如,在/etc下查找inittab文件并显示其详细信息:

    英文原义:list files in database
    locate的搜索速度特别快,因为并不是在硬盘中进行文件搜索,而是在database中进行搜索,奥斯卡电影因此有时没有及时更新数据库可能找不到,一般要与updatedb指令(执行权限为root)结合使用(系统也会自动定期更新数据库)。
    语法:locate [搜索关键字]

    例如,输出/etc/services文件中带有ftp的行:

    man命令会调用more命令进行显示、浏览帮助文档

    例如,查看ls命令的帮助信息:

    例如,查看配置文件services的帮助信息

    man会优先查看命令的帮助,优先级高于配置文件

    UNIX系统中没有此命令,只是浏览方式和信息的呈现形式上不同于man,并没有太大的区别

    即获得一个命令的最简单用途,即做什么用的

    语法:whatis [任何关键字]

    查看配置文件的内容:apropos [配置文件名称]

    windows可以解压所有linux的压缩文件,但是反过来并不一定可以,在此介绍一些Linux中常用的压缩格式和压缩命令

    特点:
    (1)只能压缩文件,不能压缩目录,与windows rar不同,windows rar任何都可以压缩
    (2)不保留源文件,压缩之后仅留下压缩文件
    例如经过

    操作之后发现有newfile4文件,我们对其进行压缩

    继续上述例子:

    语法:tar 选项 [目录]
    选项:
    -c:产生.tar打包文件
    -v:显示详细信息
    -f:指定压缩后的文件名
    -z:打包同时压缩

    压缩后的文件格式:.tar.gz(cat是无法浏览的),可以通过file来显示文件类型

    假设通过ls指令我们发现有一个newdir目录,将目录newdir打包并压缩,雅思考试内容生成一个newdir.tar.gz文件(打包后的文件名可以自定义)

    注意,有的UNIX并不支持打包并压缩,我们可以分步进行
    先打包成tar包

    再进行压缩

    会将文件解压到当前目录下
    语法:tar 选项 [文件名]
    选项:

    -x:解包.tar文件
    -v:显示详细信息
    -f:指定解压文件
    -z:解压缩

    分步进行:

    windows与Linux通过的格式:zip,可以使用zip指令进行压缩,并且zip指令也可以压缩目录,并且zip会保留源文件

    zip语法:zip 选项 [压缩后的文件名] [要进行压缩的文件或目录]
    注意:压缩目录需要加上-r的选项

    解压使用unzip即可

    语法: unzip [压缩文件]

    Linux的压缩比是非常惊人的,强于windows,尤其是bzip2指令

    管道:将一个命令的输出传送给另一个命令,作为另一个命令的输入

    使用方法:命令1|命令2|命令3……|命令n

    例如:

    命令替换:将一个命令的输出作为另一个命令的参数
    格式为:
    这里写图片描述
    将命令2的结果作为命令1的参数

  • 相关阅读:
    700. Search in a Binary Search Tree
    100. Same Tree
    543. Diameter of Binary Tree
    257. Binary Tree Paths
    572. Subtree of Another Tree
    226. Invert Binary Tree
    104. Maximum Depth of Binary Tree
    1、解决sublime打开文档,出现中文乱码问题
    移植seetafaceengine-master、opencv到ARM板
    ubuntu16.04-交叉编译-SeetaFaceEngine-master
  • 原文地址:https://www.cnblogs.com/zhangyanran/p/10081862.html
Copyright © 2011-2022 走看看