zoukankan      html  css  js  c++  java
  • Linux C/C++编程之(四)常用命令之链接命令和权限命令

    一、链接文件命令:ln

    • 英文原意:link
    • 命令所在路径:/bin/link
      在这里插入图片描述
    • 执行权限:所有用户
    • 功能描述:生成链接文件
    • 语法:
      • ln 源文件 目标文件
      • -s 创建软链接
      • 不加 -s 创建硬链接

    例子:

    • 创建文件hello的软链接hello.soft:ln -s hello hello.soft
    • 创建文件hello的硬链接hello.hard:ln hello hello.hard
      在这里插入图片描述
    • 软链接 前面是 l 开头的(link),而硬链接是 - 开头,表示文件
      在这里插入图片描述
    • 软链接所有者和所属组具有全部操作的权限,rwxrwxrwx;而硬链接不是。在这里插入图片描述
    • 软链接类似与 Windows 的快捷方式,有一个明显的箭头指向,而指向的是源文件;硬链接文件除了文件名与源文件不一样,其余所有信息都是一样的。类似于 cp 复制操作。但是又和复制不一样,硬链接可以同步更新。
      在这里插入图片描述
    • 查看硬链接计数,可以看到硬链接和源文件一样,都是2,软链接则是1
      在这里插入图片描述
    • 通过 ls -i 操作,来查看 文件的 i 节点。发现硬链接和源文件的 i 节点是相同的,而软链接与源文件的 i 节点是不同的
      在这里插入图片描述

    二、更改文件或目录权限命令:chmod

    • 英文原意:change the permissions mode of a file
    • 命令所在路径:/bin/chmod
      在这里插入图片描述
    • 执行权限:所有用户
    • 功能描述:改变文件或目录权限
    • 语法:
      • chmod {ugoa}{±=}{rwx} 文件或目录
      • mode=421 文件或目录
      • -R 递归修改

    注意:不是每一个Linux用户都有权限更改某个文件或目录权限,能更改文件或目录权限的只有两种用户:
    ①、文件的所有者。
    ②、root用户(root用户是linux系统权限最大的用户)。

    • u:表示所有者,g:表示所属组,o:表示其他人,a:表示所有人;
    • r:读权限,w:写权限,x:执行权限;权限可以用数字表示,其中 r 表示4,w表示2,x表示1,分别是2的0次方,1次方,2次方(二进制数)。

    rwx 权限的数字就是 7,具有 rw- 权限的数字是 6,具有 r-- 权限的数字是 4

    例子:

    • txt目录下的hello,赋予所属用户/所属组/其他人 x 权限。
    chmod u+x,g+x,o+x hello
    

    在这里插入图片描述

    • 用数字操作的话,也就是说775
    chmod 775 hello
    

    在这里插入图片描述

    三、改变文件或目录所有者/所属组的命令:chown/chgrp

    • 英文原意:change file ownership
    • 命令所在路径:/bin/chown
      在这里插入图片描述
    • 执行权限:所有用户
    • 功能描述:改变文件或目录的所有者
    • 语法:
      • chmod 用户 文件或目录

    注意:能更改文件或目录的所有者用户是 root


    • 英文原意:change file group ownership
    • 命令所在路径:/bin/chown
      在这里插入图片描述
    • 执行权限:所有用户
    • 功能描述:改变文件或目录的所属组
    • 语法:
      • chgrp 用户组 文件或目录

    注意:能更改文件或目录的所有者用户是 root

    四、缺省权限命令:umask

    • 英文原意:the user file-creation mask

    • 命令所在路径:shell 内置命令

    • 执行权限:所有用户

    • 功能描述:显示、设置文件的缺省权限

    • 语法: umask -S

      • -S 以rwx形式显示新建文件的缺省权限
        在这里插入图片描述

    注意:以目录txt为例,其中umask执行显示结果是 0002,第一个0表示特殊权限,后面的 022 表示权限的掩码值,
    计算方式是用 777 减去 002 得到 775(是每一位相减),即 rwxrwxr-x,这个值的数字表示就是755。
    在这里插入图片描述

    也就是说创建一个新文件默认权限为 rwxrwxr-x,下面创建一个文件来验证一下:
    在这里插入图片描述

  • 相关阅读:
    [C++] 用Xcode来写C++程序[5] 函数的重载与模板
    【转】字符编码详解——彻底理解掌握编码知识,“乱码”不复存在
    【转】无法将notepad++添加到打开方式列表中的解决办法
    【转】关于启用 HTTPS 的一些经验分享
    【转】GPU 与CPU的作用协调,工作流程、GPU整合到CPU得好处
    【转】excel 末尾是0 恢复数据方法
    【转】怎么让VS2015编写的程序在XP中顺利运行
    【转】深入 Docker:容器和镜像
    【转】SSL/TLS协议运行机制的概述
    【转】C++怎么读写windows剪贴板的内容?比如说自动把一个字符串复制.
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13302546.html
Copyright © 2011-2022 走看看