Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >文件/目录的默认权限

文件/目录的默认权限

作者头像
小汪Waud
发布于 2023-02-03 06:59:45
发布于 2023-02-03 06:59:45
1.7K00
代码可运行
举报
文章被收录于专栏:小汪Waud小汪Waud
运行总次数:0
代码可运行

本文共1388字,阅读约需4分钟。

我们平时在进行Linux操作的时候,好像更多的是通过chmod等命令去修改文件或目录的权限,很少去关注新建文件或目录时他们的权限是怎样的。本期我们聚焦一下文件/目录的默认权限

想要了解默认权限就不得不提到umask命令,我们先来查看一下它的帮助文档。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
umask: umask [-p] [-S] [mode]
    Display or set file mode mask.

    Sets the user file-creation mask to MODE.  If MODE is omitted, prints
    the current value of the mask.

    If MODE begins with a digit, it is interpreted as an octal number;
    otherwise it is a symbolic mode string like that accepted by chmod(1).

    Options:
      -p        if MODE is omitted, output in a form that may be reused as input
      -S        makes the output symbolic; otherwise an octal number is output

    Exit Status:
    Returns success unless MODE is invalid or an invalid option is given.

帮助文档里说umask是用来Display or set file mode mask,即查看或指定用户在建立文件或目录时的权限默认值

查看权限默认值

输入umask我们得到数字0002,其中后三位代表权限默认(负)值,需要注意的是在默认权限的基础上去掉对应的数字的权限,我们在后面举例解释。

umask

输入umask -S(S即Symbolic)得到u=rwx,g=rwx,o=rx,即775,计算方法详见Linux||常用命令(一)的权限部分。

umask -S

我们新建文件testfile.txt和目录testfile,查看其权限情况。

文件具有u=rw,g=rw,o=r权限(664),目录具有u=rwx,g=rwx,o=rx权限(775)。那“在默认权限的基础上去掉对应的数字的权限”是什么意思呢?

在默认权限的属性上,目录和文件是不一样的,对于目录来说,如果没有可执行权限,就无法进入目录查看;对于文件来说,大部分都是文本文件,少有用于执行的。

因此,文件的创建是默认没有可执行权限的,即默认权限为666;目录的创建是默认包含所有权限的,即默认权限为777。

前面提到了002是权限默认(负)值,需要在默认权限的基础上去掉对应的数字的权限。对于文件来说,666-002=664;对于目录来说,即777-002=775,与示例相符。

修改权限默认值

输入umask 033即可设置默认权限值为0033,但就类似于直接输入命令修改环境变量一样,重新登录服务器即失效。

可能不理解的地方

假如我们现在的默认权限是0033,我们新建一个文件,权限应该是666-033=633对不对?即u=rw,g=wx,o=wx。

但经过我们查看,文件xx的权限并不如我们刚刚分析的那样,没有可执行权限。如果你也有这样的困惑,说明你走进了一个误区。

通过umask查看或设置的文件权限是指去除掉对应数字的权限,如果默认权限本身就不含有可执行权限,又怎么能去掉呢?

这样理解是不是就好多了。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-10-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小汪Waud 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
移植一个抖音贴纸组件到Flutter
本文发于简书——何时夕,搬运转载请注明出处,否则将追究版权责任。交流qq群:859640274
何时夕
2019/06/20
1.4K0
面试官问我:如何加载100M的图片却不撑爆内存,一张 100M 的大图,如何预防 OOM?
Android开发中,有时候会有加载巨图的需求,如何加载一个大图而不产生OOM呢,使用系统提供的BitmapRegionDecoder这个类可以很轻松的完成。
Android技术干货分享
2020/08/26
2.4K1
面试官问我:如何加载100M的图片却不撑爆内存,一张 100M 的大图,如何预防 OOM?
仿抖音上下滑动分页视频
目录介绍 01.先来看一下需求 02.有几种实现方式 2.1 使用ViewPager 2.2 使用RecyclerView 03.用ViewPager实现 3.1 自定义ViewPager 3.2 ViewPager和Fragment 3.3 修改滑动距离翻页 3.4 修改滑动速度 04.用RecyclerView实现 4.1 自定义LayoutManager 4.2 添加滑动监听 4.3 监听页面是否滚动 4.4 attach和Detached 05.优化点详谈 5.1 ViewPager改变滑动速率 5
杨充
2019/11/22
6K0
从零开始仿写一个抖音App——视频编辑SDK开发(一)
本文首发于微信公众号——世界上有意思的事,搬运转载请注明出处,否则将追究版权责任。交流qq群:859640274
何时夕
2019/11/21
2K0
从零开始仿写一个抖音App——视频编辑SDK开发(一)
iOS开发常用之图像浏览及处理
图像浏览及处理 FLAnimatedImage - gif播放处理的工具。 CLImageEditor - 超强的图片编辑库,快速帮你实现旋转,防缩,滤镜等等一系列麻烦的事情。 ios-image-filters - 图像滤镜,库比较旧了,很容易崩溃。 XBImageFilters - 图像滤镜。 MWPhotoBrowser - 一个非常不错的照片浏览器,在github的star接近3000个,解决MWPhotoBrowser中的SDWebImage加载大图导致的内存警告问题。 co
GuangdongQi
2018/12/14
4.1K0
图片操作系列 —(1)手势缩放图片功能
项目开发中,大家APP开发一般都会用到上传图片,比如是上传了自己的生活照,然后在某个界面处查看上传的图片,这时候一般在这个查看详情的界面,会有手势放大缩小功能,手势进行旋转功能,双击放大图片等等。
青蛙要fly
2018/08/29
3.2K0
图片操作系列 —(1)手势缩放图片功能
图片操作系列 —(2)手势旋转图片
在上次的文章:图片操作系列 —(1)手势缩放图片功能中,我们已经学会了如何用手势来对图片进行缩放。这次我们继续来看第二个操作,那就是如何用手势来旋转图片。
青蛙要fly
2018/08/29
3.7K0
图片操作系列 —(2)手势旋转图片
高仿剪映视频多轨剪辑页实现
剪映是当下比较火的一款手机视频剪辑工具,由抖音官方推出,可用于手机短视频的剪辑制作,拥有强大的多轨编辑能力。其中视频剪辑页用于剪辑的View拥有出色的交互性,很考验Android的基础能力,值得拿出来学习一下。   观察剪映的视频剪辑页面,可见主要有时间轴、视频轨道、时间游标和预览窗口四部分组成。时间轴用于展示当前的时间长度和时间刻度,通过缩放手势可以改变最小刻度值,拖动可以对音视频进行seek。视频轨道用于显示轨道在时间轴上的长度、以及轨道信息,同时视频轨道会显示对应时间的帧图像,而音频轨道则会显示波形图。时间游标会固定在整个View的中间位置,虽然叫它游标,但实际上并不会移动,只能通过移动时间轴和视频轨道来表示当前的时间位置。预览窗口用于显示视频帧,通常是SurfaceView或TextureView,比较简单,非本文的重点。
阿利民
2022/05/16
1.6K0
高仿剪映视频多轨剪辑页实现
从抖音到多闪,今日头条的短视频社交简史
公元前400年,希波克拉提斯把那些过于害羞的人描述为“喜欢在黑暗中生活”,这就是「社交恐惧」的源头;
mixlab
2019/05/05
1.1K0
从抖音到多闪,今日头条的短视频社交简史
Android技能树 — View事件体系小结
这次是讲View的事件体系。特别是不同情况下的事件分发,我会用很简单的方式教会大家。
青蛙要fly
2018/08/29
3790
Android技能树 — View事件体系小结
高级 UI 成长之路 (二) 深入理解 Android 8.0 View 触摸事件分发机制
在上一篇文章中我们介绍了 View 的基础知识以及 View 滑动的实现,本篇将为大家带来 View 的一个核心知识点 事件分发机制。事件分发机制不仅仅是核心知识点也是 Android 中的一个难点,下面我们就从源码的角度来分析事件的传递还有最后是如何解决滑动冲突的。
做个快乐的码农
2021/11/12
7460
高级 UI 成长之路 (二) 深入理解 Android 8.0 View 触摸事件分发机制
“多闪”的短视频社交底层逻辑是什么?
视频社交不一样,它区别于图文,图文社交注重效率沟通,视频社交偏向于娱乐消遣和场景再现。
数据猿
2019/11/20
8000
“多闪”的短视频社交底层逻辑是什么?
Ios常用第三方动画框架(三)
gif动画 UIImageView-PlayGIF - UIImageView-PlayGIF。 YLGIFImage - YLGIFImage。 YLGIFImage-Swift - YLGIFImage-Swift。 gifu.Swift - gifu.Swift高性能GIF显示类库。 droptogif - droptogif视频拖拽到应用窗口后自动转换为 GIF 动画(其转换进程动画效果也超赞)。 JWAnimatedImage.swift - JWAnimatedImage.swift
honey缘木鱼
2018/09/26
9.4K0
一篇文章教会你使用Python下载抖音无水印视频
今天小编要跟大家分享的是,利用Python如何下载抖音无水印的视频;大家可能要问了,这个有什么用呢?当然有用了。那么有什么用呢?下面小编跟大家详细说说。
菜鸟小白的学习分享
2021/06/17
4050
一篇文章教会你使用Python下载抖音无水印视频
抖音国庆小游戏是如何实现的?
经过若干个月的点滴积累,我有幸参与到抖音国庆活动的开发,这是我第一次完整参与大型活动项目的开发,它是全员关注的一个重点项目,致力于让用户领略美好中国,指导用户在抖音中搜索与获取旅行攻略和出游信息。
ConardLi
2021/12/02
1.5K0
抖音国庆小游戏是如何实现的?
腾讯T11考官亲述:90%候选人答错的View事件冲突,藏着Handler与Choreographer的世纪对决
大家好,我是稳稳,一个曾经励志用技术改变世界,现在为随时失业做准备的中年奶爸程序员,与你分享生活和学习的点滴。
AntDream
2025/03/24
570
腾讯T11考官亲述:90%候选人答错的View事件冲突,藏着Handler与Choreographer的世纪对决
看完这篇还不会 GestureDetector 手势检测,我跪搓衣板!
像网上其他将手势监听的博客一样,本文将以双击事件为引子,逐步展开探讨 Android 手势监听,你需要知道的点点滴滴,还是那句话:看完这篇还不会 GestureDetector 手势检测,我跪搓衣板!
圆号本昊
2021/09/24
1.7K0
看完这篇还不会 GestureDetector 手势检测,我跪搓衣板!
用Kotlin实现抖音爆红的文字时钟,征服产品小姐姐就靠它了(上)
周末在家刷抖音的时候看到了这款网红时钟,都是Android平台的,想来何不自己实现一把。看抖音里大家发的视频,这款时钟基本分两类,一类是展示在「壁纸」上,一类是展示在「锁屏」上。
Android技术干货分享
2019/07/26
1.3K0
用Kotlin实现抖音爆红的文字时钟,征服产品小姐姐就靠它了(上)
android 仿音悦台页面交互效果
概述 新版的音悦台 APP 播放页面交互非常有意思,可以把播放器往下拖动,然后在底部悬浮一个小框,还可以左右拖动,然后回弹的时候也会有相应的效果,这种交互效果在头条视频和一些专注于视频的app也是很常
xiangzhihong
2018/02/05
1K0
android 仿音悦台页面交互效果
Android Studio 知识储备 之 ✨-基础知识学习历程
所有的资源文件都会在R.java文件下生成对应的资源id,我们可以直接通过资源id访问到对应的资源。使用mipmap会在图片缩放在提供一定的性能优化,分辨率不同系统会根据屏幕分辨率来选择hdpi,mdpi,xmdpi,xxhdpi下的对应图片,所以你解压别人的apk可以看到上述目录同一名称的图片,在四个文件夹下都有,只是大小和像素不一样而已!当然,这也不是绝对的,比如我们把所有的图片都丢在了drawable-hdpi下的话,即使手机 本该加载ldpi文件夹下的图片资源,但是ldpi下没有,那么加载的还会是hdpi下的图片! 另外,还有一种情况:比如是hdpi,mdpi目录下有,ldpi下没有,那么会加载mdpi中的资源! 原则是使用最接近的密度级别!另外如果你想禁止Android不跟随屏幕密度加载不同文件夹的资源,只需在AndroidManifest.xml文件中添加android:anyDensity="false"字段即可!
呆呆敲代码的小Y
2021/08/12
6750
推荐阅读
相关推荐
移植一个抖音贴纸组件到Flutter
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验