umask

umask

显示或设置创建文件的权限掩码。

概要

umask [-p] [-S] [mode]

主要用途

  • 显示当前的文件权限掩码。
  • 通过八进制数的方式设置创建文件的权限掩码。
  • 通过符号组合的方式设置创建文件的权限掩码。

参数

mode(可选):八进制数或符号组合。

选项

-p:当没有参数时指定该选项,执行产生的输出格式可复用为输入;
-S:以符号组合的方式输出创建文件的权限掩码,不使用该选项时以八进制数的形式输出。

返回值

返回状态为成功除非给出了非法选项或非法参数。

例子

以下的例子均假设文件权限掩码为0022。

# 以八进制数的形式输出创建文件的权限掩码。
umask -p
# 执行结果:
umask 0022
# 以符号组合的方式输出创建文件的权限掩码。
umask -S
# 执行结果:
u=rwx,g=rx,o=rx

参考man chmod文档的DESCRIPTION段落得知:

  • u符号代表当前用户。
  • g符号代表和当前用户在同一个组的用户,以下简称组用户。
  • o符号代表其他用户。
  • a符号代表所有用户。
  • r符号代表读权限以及八进制数4
  • w符号代表写权限以及八进制数2
  • x符号代表执行权限以及八进制数1
  • +符号代表添加目标用户相应的权限。
  • -符号代表删除目标用户相应的权限。
  • =符号代表添加目标用户相应的权限,删除未提到的权限。

那么刚才以符号形式输出的结果u=rwx,g=rx,o=rx转化为八进制数等于0755

用八进制数来设置同样的权限,umask需要额外的执行减法0777 - 07550022,而chmod不需要。

符号组合模式的添加、删除、赋值权限。

# 添加权限:
# 为组用户添加写权限。
umask g+w
# 删除权限:
# 删除其他用户的写、执行权限
umask o-wx
# 赋值权限:
# 赋值全部用户所有权限,等价于umask u=rwx,g=rwx,o=rwx
umask a=rwx
# 清除其他用户的读、写、执行权限。
umask o=

创建文件夹、文件(假设当前目录不存在)

# 创建文件
touch test.sh
# 查看权限,发现执行权限的设置不起作用。
stat test.sh
# 创建文件夹
touch newdir
# 查看权限,发现执行权限的设置可以起作用。
stat newdir

注意

  1. 该命令是bash内建命令,相关的帮助信息请查看help命令。
  2. chmod用于更改已有对象的权限,umask影响之后新建对象的权限。
  3. 请谨慎使用该命令,特别是不要取消当前用户的读取权限,那样会导致你在终端使用TAB键补全时报错。

若文章对你有帮助,可以点赞或打赏支持我们。发布者:Aurora,转载请注明出处:http://61.174.243.28:13541/AY-knowledg-hub/umask/

(0)
AuroraAurora站点维系者
上一篇 2024年 3月 11日 下午6:34
下一篇 2024年 3月 11日 下午6:35

相关推荐

  • xclip

    xclip 管理 X 粘贴板 补充说明 在 X 系统里面,从一个窗口复制一段文字到另一个窗口,有两套机制,分别是 Selections 和 cut buffers。 常用的 cop…

    入门教程 2024年 3月 11日
  • quotaon

    文章目录quotaon补充说明语法选项参数 quotaon 激活Linux内核中指定文件系统的磁盘配额功能 补充说明 quotaon命令 执行quotaon指令可开启磁盘对用户和群…

    入门教程 2024年 3月 1日
  • route

    文章目录route补充说明语法选项参数实例 route 显示并设置Linux中静态路由表 补充说明 route命令 用来显示并设置Linux内核中的网络路由表,route命令设置的…

    入门教程 2024年 3月 4日
  • 前言

    C++ 是一种高级语言,它是由 Bjarne Stroustrup 于 1979 年在贝尔实验室开始设计开发的。C++ 进一步扩充和完善了 C 语言,是一种面向对象的程序设计语言。…

    2024年 3月 18日
  • ld

    文章目录ld补充说明语法选项参数实例 ld 将目标文件连接为可执行程序 补充说明 ld命令 是GNU的连接器,将目标文件连接为可执行程序。 语法 ld(选项)(参数) ld [op…

    入门教程 2023年 12月 19日
  • pidof

    文章目录pidof补充说明语法选项参数实例 pidof 查找指定名称的进程的进程号ID号 补充说明 pidof命令 用于查找指定名称的进程的进程号id号。 语法 pidof(选项)…

    入门教程 2024年 3月 1日
  • indent

    文章目录indent补充说明语法选项实例 indent 格式化C语言的源文件 补充说明 indent命令 可辨识C的原始代码文件,并加以格式化,以方便程序员阅读、修改等操作。 语法…

    入门教程 2023年 12月 19日
  • init

    文章目录init补充说明语法选项参数实例 init init进程是所有Linux进程的父进程 补充说明 init命令 是Linux下的进程初始化工具,init进程是所有Linux进…

    入门教程 2023年 12月 19日
  • iotop

    文章目录iotop补充说明安装语法选项实例 iotop 用来监视磁盘I/O使用状况的工具 补充说明 iotop命令 是一个用来监视磁盘I/O使用状况的top类工具。iotop具有与…

    入门教程 2023年 12月 19日
  • Helm | Helm 展示value

    文章目录helm show values简介可选项从父命令继承的命令请参阅 helm show values 显示chart的values 简介 该命令检查chart(目录、文件或…

    入门教程 2023年 12月 14日

发表回复

登录后才能评论
Translate »