Linux文件类型与权限及其修改

后面我们写代码时,写完可能会出现没有执行权限什么的,所以我们要知道文件都有哪些权限和类型。

首先

就像我们之前目录结构图里面有个/dev,它就是存放设备文件的,也就是说,哪怕是一个硬件设备,例如打印机啥的,它也把它映射成一个文件。这就是一切皆是文件。

但它不是以文件的后缀名来区分文件类型的。

如上图,就是在进到 家目录:/home/stu    ~  两者等价,底下的quzijie文件夹(目录文件)里面,再用mkdir来创建一个文件夹(目录文件),名字叫class03(mkdir建立的目录文件其文件名的颜色一般是蓝色),创建完然后进到class03里面,这时class03里面是空的。

此时其绝对路径是/home/stu/quzijie/class03.

现在在class03文件夹里面用touch建一个普通文件,名字叫xxx.yyy。

可以看到成功了,这说明不管文件后缀名是什么,即使是.yyy这种,Linux也能创建成功,它不以后缀名来区分文件类型。

同理,再建一个y.x文件,后缀名是.x也能成功。

这些并不是我们在Windows上所熟知的什么.txt是文本文件类型的后缀名,.pdf是图片类型的后缀名。

那么来看Linux是以什么来判断文件类型的,Linux是在文件属性中专门有一列内容来记录文件类型的

如图,用命令ll,我们可以看到,第一列内容,就告诉了你文件类型

d:表示这是一个目录文件(文件夹),./:是当前目录class03,../:是上一层目录quzijie。

-:表示这是一个普通文件,xxx.yyy,y.x都是刚刚用touch建立的普通文件。

例如再在class03里面用mkdir建一个目录文件test,然后ll。可以看到test目录文件前面的就是d

这里是一些常用的文件类型标识

上图中的普通文件一堆标识就是说这些是用touch建立的文件,而touch建立的普通文件用cd是进不去的,因为cd只能进去目录文件(文件夹),要用mkdir建立。如图,ll进去文件y.x文件的那一行第一个字符是-,就代表是普通文件

而cd test就可以进去test,虽然ls显示test里面什么都没有为空,此时绝对路径就是/home/stu/quzijie/class03/test.        cd进入一个新目录文件,其路径名就加一个(/新进入的目录名)

一般cd后紧接着都是ls,看看进去的文件夹里面有什么

或者用  ls -l  就等同于  ll  进去看到一个目录文件夹里的所有文件信息,此时test里面没有东西所以是总计0,那我们 cd .. 退回到test的上一层目录文件class03里面,再 ls -l去看class03目录文件夹里面的所有文件信息,如下

然后我们看这些文件信息都是什么东西

文件类型下来就是文件权限,一共有9列,可分为前3列(文件所有者即创建者u的读r,写w,执行x的3列访问权限,这3列所代表的顺序不能变1读2写3执行),中间3列是文件的同组组员用户的3种访问权限,后3列是其他人的3种访问权限

其相应位置显示相应字母就代表相应的人拥有了相应权限,显示(-)就是你没有相应的权限。要看文件权限就是 ls -l 或者 ll 进入可看

权限下来是链接数,

对于普通文件来说,有几个链接了这个文件,那么链接数就是几。

对于目录文件来说,就是一级子目录的个数。

链接数下来是拥有者即文件所属者

我们前面建立的文件或文件夹其所属者都是stu,stu就是一开始我们给自己取的用户名。

所属者下来是它的同组人也是stu,因为Linux是多用户系统,但目前我们这里只有自己这一个用户,所以所属组,同组人也是自己这个用户stu。

所属组下来是文件的大小,下来是文件最后一次的修改时间,最后就是文件名。

以上就是Linux里面文件的所有详细的属性信息,用 ls -l来看

下来是一个重点——如何修改文件的权限——chmod的用法,用来修改文件权限的2种方法

先来在class03目录底下touch一个普通文件main.c

然后 ls -l 看一下main.c都有什么权限

可以看到main.c的所有者和同组人有读和写的权限,但没有执行权限;而其他人只有一个读的权限。

修改用户权限法一——文字设定法——+,-,=

那么现在如果要给其他人加上一个写的权限——要怎么做。————chmod o+w main.c

(chmod 空格 3类用户中的某一个或a(all代表3类用户都包含)(+,-,=)3类权限中的什么 空格 文件名)

可以看到 chmod o+x main.c之后 ls -l显示,main.c的执行权限x就加上了

再执行一遍也没有报错

要是要把这个x权限去掉,就是将刚刚的o+x改为o-x就行,在例如给u加上x权限

给所有人都加上x权限

这里u,g,o,a就是一个参数,所以跟后面的+,-,=符号之间不要有空格

现在对于main.c文件而言所有人都有执行x权限了,那么main.c文件就变成绿色的了。

要是把所有人的执行权限x都去掉,chmod a-x main.c,现在main.c文件就变成黑色的了,虽然都是普通文件。

现在给属主把写权限w去掉后,现在文件main.c的所有者user再想要往文件main.c里面写东西的话就写不进去了。就是因为没有写权限。

一般出问题后先打开看看是不是权限问题

二.还有另一种修改权限的方法,直接使用等于号——  =

对于文件的哪一类操作用户想要有哪些操作权限,就让那类用户直接=它需要的所有权限,例如上图中,文件所有者user需要读r和写w权限,就是——u=rw。

那现在要同时给2类操作用户来修改权限,属主user和同组用户group,要怎么做——不同类的操作用户之间用逗号,隔开

上图就是同时修改2类操作用户的权限

修改用户权限法二——数字设定法——用的最多

如果要同时对3类用户都进行权限修改,此时用文字设定法就比较麻烦,用数字设定法更好

先来看一下这个421是怎么来的

3种权限rwx分别都占着位置,对应二进制里面也是占着3个位置

rwx

100——对应为r--,也就是4

010——对应为-w-,也就是2

001——对应为--x,也就是1

这里的nnn对应的就是ugo

nnn

ugo

n为根据rwx有无的数值和

例如6        6         4——就是

       rw-     rw-     r--

        7        7        7——

      rwx     rwx    rwx

下图在工作中一般是不允许的,例如其他人o是没有写w权限的,不能让其他人随便就把我的文件给改动了

就像下面原始创建的普通文件y.x,一开始就是默认的664,(正常情况下多数都给664)其他人只有读r权限,因为Linux是多用户系统,所以所有者和同组人可以有读和写的权限

如图,touch出的普通文件(yy.xxy)都是664,你可以自己给它改一下改成644

再给main.c改个641

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/138087.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

机器学习算法——线性回归与非线性回归

目录 1. 梯度下降法1.1 一元线性回归1.2 多元线性回归1.3 标准方程法1.4 梯度下降法与标准方程法的优缺点 2. 相关系数与决定系数 1. 梯度下降法 1.1 一元线性回归 定义一元线性方程 y ω x b y\omega xb yωxb 则误差(残差)平方和 C ( ω , b ) …

【lib.dll.a.so】Windows和Linux两个系统下的库文件

1.静态库&&动态库 Windows平台下:静态库后缀为.lib,动态库后缀为.dll Linux平台下:静态库格式为lib**.a,动态库格式为lib**.so 谈论两者区别之前,需要对程序编译和运行有一个大致认识: 代码想要…

微带线的ABCD矩阵的推导、转换与级联-Matlab计算实例

微带线的ABCD矩阵的推导、转换与级联-Matlab计算实例 散射参数矩阵有实际的物理意义,但是其无法级联计算,但是ABCD参数和传输散射矩阵可以级联计算,在此先简单介绍ABCD参数矩阵的基本用法。 1、微带线的ABCD矩阵的推导 其他的一些常用的二端…

基于SSM的自习室预订座位管理系统设计与实现

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:Vue 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目:是 目录…

StartUML的基本使用

文章目录 简介和安装创建包创建类视图时序图 简介和安装 最近在学习一个项目的时候用到了StartUML来构造项目的类图和时序图 虽然vs2019有类视图,但是也不是很清晰,并没有生成uml图,但是宇宙最智能的IDE IDEA有生成uml图的功能 下面就简单介…

C++ static关键字

C static关键字 1、概述2、重要概念解释3、分情况案例解释3.1 static在类内使用3.2 static在类外使用案例一:案例二:案例三 1、概述 static关键字分为两种情况: 1.在类内使用 2.在类外使用 2、重要概念解释 (1)翻译…

redis学习指南--概览篇

redis怎么学 官方学习网站: redis.cn 1、整体了解redis redis是一个内存数据库、kv数据库,数据结构数据库,redis中数据都是存储在redis中,可以通过key查找value,value可以有多种数据结构,有:…

Android修行手册 - POI操作Excel常用样式(字体,背景,颜色,Style)

点击跳转>Unity3D特效百例点击跳转>案例项目实战源码点击跳转>游戏脚本-辅助自动化点击跳转>Android控件全解手册点击跳转>Scratch编程案例点击跳转>软考全系列 👉关于作者 专注于Android/Unity和各种游戏开发技巧,以及各种资源分享&…

一键批量转码:将MP4视频转为MP3音频的简单方法

随着数字媒体设备的普及,视频和音频格式转换的需求也越来越常见。其中,将MP4视频批量转换为MP3音频的需求尤为普遍。无论是为了提取视频中的背景音乐,还是为了在手机或电脑上方便地收听视频音频,这个过程都变得非常重要。接下来我…

Windows10+vs2015源码编译subversion

Windows源码安装subversion 一、运行环境 windows10 64位系统 VS2015完整安装 Subversion1.6.3 二、源码编译环境配置 1、python环境安装 python-2.4.msi2、perl环境安装 ActivePerl-5.8.8.822-MSWin32-x86-280952.msi3、openssl编译 C:>cd openssl-0.9.7f C:>p…

大数据毕业设计选题推荐-智慧消防大数据平台-Hadoop-Spark-Hive

✨作者主页:IT毕设梦工厂✨ 个人简介:曾从事计算机专业培训教学,擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Py…

【CASS精品教程】cass3d基于DOM和DEM生成倾斜三维模型

和EPS一样,cass3d也可以生成三维模型。本文讲解 cass3d基于pix4d生成的正射影像DOM和DSM生成倾斜三维模型,并进行三维测图。 一、三维倾斜模型打开 打开cass11.0软件,打开三维窗口,点击打开模型,选择基于dom和dsm生成…

.NET快速对接极光消息推送

什么是消息推送? 很多手机APP会不定时的给用户推送消息,例如一些新闻APP会给用户推送用户可能感兴趣的新闻,或者APP有更新了,会给用户推送是否选择更新的消息等等,这就是所谓的“消息推送”。 常见的一些APP消息推送…

[LeetCode]-225. 用队列实现栈-232. 用栈实现队列

目录 225. 用队列实现栈 题目 思路 代码 232. 用栈实现队列 题目 思路 代码 225. 用队列实现栈 225. 用队列实现栈 - 力扣(LeetCode)https://leetcode.cn/problems/implement-stack-using-queues/description/ 题目 请你仅使用两个队列实现一个后…

【Python爬虫】网页抓取实例之淘宝商品信息抓取

之前我们已经说过网页抓取的相关内容 上次我们是以亚马逊某网页的产品为例 抓取价格、品牌、型号、样式等 该网页上价格、品牌、型号、样式等 都只有一个 如果网页上的目标内容 根据不同规格有多个 又该怎么提取呢? ▼如下图所示 当机身颜色、套餐、存储容量…

另辟奚径-Android Studio调用Delphi窗体

大家都知道Delphi能调用安卓SDK,比如jar、aar等, 但是反过来,能在Android Studio中调用Delphi开发的窗体吗? 想想不太可能吧, Delphi用的是Pascal,Android Studio用的是Java,这两个怎么能混用…

layui table合计 totalRow 保留4位小数\ 异步请求数据的表格 新增行之后 如何更新数据

layui table合计 totalRow 保留4位小数: 例: totalRowMethod:(column: any, dataSource: any[]) > { let total 0; dataSource.forEach((item) > { total total Number(item[column.key]); …

Flutter——最详细(AppBar)使用教程

AppBar简介 Material Design 应用栏(标题栏) 使用场景: 顶部标题栏包括一些常用的菜单按钮 属性作用leading左边工具视图automaticallyImplyLeading左边图标的颜色title标题视图actions右边菜单按钮flexibleSpace其高度将与应用栏的整体高度相同bottom左侧底部文本内…

linux下IO模及其特点及select

ftp实现 模拟FTP核心原理:客户端连接服务器后,向服务器发送一个文件。文件名可以通过参数指定,服务器端接收客户端传来的文件(文件名随意),如果文件不存在自动创建文件,如果文件存在&#xff0c…

阿里巴巴将开源720亿参数大模型;开源语言大模型演进史

🦉 AI新闻 🚀 阿里巴巴将开源720亿参数大模型 摘要:在2023世界互联网大会乌镇峰会上,阿里巴巴集团CEO吴泳铭透露,阿里巴巴即将开源720亿参数大模型,这将是国内参数规模最大的开源大模型。目前&#xff0c…