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

相关推荐

  • 基本语法

    文章目录C++ 程序结构实例编译 & 执行 C++ 程序C++ 中的分号 & 语句块C++ 标识符C++ 关键字三字符组C++ 中的空格 C++ 程序结构 让我们看…

    2024年 3月 18日
  • lvcreate

    文章目录lvcreate补充说明语法选项参数实例 lvcreate 用于创建LVM的逻辑卷 补充说明 lvcreate命令 用于创建LVM的逻辑卷。逻辑卷是创建在卷组之上的。逻辑卷…

    入门教程 2023年 12月 19日
  • Java 流(Stream)、文件(File)和IO

    Java.io 包几乎包含了所有操作输入、输出需要的类。所有这些流类代表了输入源和输出目标。 Java.io 包中的流支持很多种格式,比如:基本类型、对象、本地化字符集等等。 一个…

    2023年 3月 4日
  • zcat

    文章目录zcat补充说明语法选项参数 zcat 显示压缩包中文件的内容 补充说明 zcat命令 用于不真正解压缩文件,就能显示压缩包中文件的内容的场合。 语法 zcat(选项)(参…

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

    文章目录atrm补充说明语法选项参数实例 atrm 删除待执行任务队列中的指定任务 补充说明 atrm命令 用于删除待执行任务队列中的指定任务。 语法 atrm(选项)(参数) 选…

    入门教程 2023年 12月 6日
  • nohup

    文章目录nohup补充说明语法选项参数实例 nohup 将程序以忽略挂起信号的方式运行起来 补充说明 nohup命令 可以将程序以忽略挂起信号的方式运行起来,被运行的程序的输出信息…

    入门教程 2024年 1月 10日
  • pv

    文章目录pv补充说明下载安装语法选项实例注意 pv 显示当前在命令行执行的命令的进度信息,管道查看器 补充说明 pv命令 Pipe Viewer 的简称,由Andrew Wood …

    入门教程 2024年 3月 1日
  • Helm 依赖

    管理chart依赖 文章目录简介可选项从父命令继承的命令请参阅 简介 管理chart依赖 Helm chart将依赖存储在’charts/’。对于chart…

    入门教程 2023年 12月 14日
  • pathchk

    文章目录pathchk补充说明语法选项参数 pathchk 检查文件中不可移植的部分 补充说明 pathchk命令 用来检查文件中不可移植的部分。 语法 pathchk(选项)(参…

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

    文章目录losetup补充说明语法选项参数loop设备介绍实例 losetup 设定与控制循环(loop)设备 补充说明 losetup命令 用来设置循环设备。循环设备可把文件虚拟…

    入门教程 2023年 12月 19日

发表回复

登录后才能评论
Translate »