【Linux常用命令——文件基本属性即权限操作】

Linux文件基本属性

在这里插入图片描述
在这里插入图片描述

显示文件属性

ls命令

Linux ls(英文全拼:list files)命令用于显示指定工作目录下之内容(列出目前工作目录所含之文件及子目录)。

语法:

 ls [参数]

参数:

  • -a 显示所有文件及目录 (. 开头的隐藏文件也会列出)
  • -l 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出

文件与目录操作

Linux可以支持长达256个字符的文件名称,且文件名是区分大小写的,“abc” 与 "ABC"所代表的是不同文件。

Linux文件类型

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Linux文件类型

  1. 普通文件(-):存放数据,程序等信息的文件,一般为文本文件和二进制文件。
  2. 目录文件(d):文件系统中一个目录所包含的目录文件,包括文件名和子目录名。
  3. 链接文件(l):可以在不同的文件系统之间建立链接关系来实现对文件的访问。
  4. 设备文件©:把IO设备映射为一个设备文件。
  5. 管道文件§:主要用于在进程间传递数据。

文件权限

所谓的文件权限,是指对文件访问权限,包括对文件的读、写、删除、执行操作。Linux是一个多用户操作系统,它运行多个用户同时登陆和工作,因此Linux将一个文件或者目录与一个用户和组联系起来。

Linux系统中,文件有三种访问权限:

  1. 读(r)- 允许读取文件
  2. 写(w)- 允许写、修改和删除某个文件
  3. 执行(x)- 允许执行某个文件

例如,我们以 root 的身份登陆 Linux,并执行如下指令:

[root@localhost ~]# ls -al
total 156
drwxr-x---.  4   root  root   4096  Sep  8 14:06 .
drwxr-xr-x.  23   root  root   4096  Sep  8 14:21 ..

解析:

文件设定不同用户的读、写和执行权限,仅涉及到 9 位字符

Linux权限字与权限操作

在这里插入图片描述

  1. chgrp: 改变文件所属群组;
  2. chown:改变文件所有人;
  3. chmod:改变文件的属性;

改变所属群组chgrp

在这里插入图片描述

在这里插入图片描述

改变一个文件的群组很简单,直接用chgrp命令,这个命令是change group的缩写。

语法:

chgrp [-R] 属组名 文件名

参数选项

  • -R:递归更改文件属组,就是在更改某个目录文件的属组时,如果加上-R的参数,那么该目录下的所有文件的属组都会更改。

改变文件属性chmod

Linux文件属性有两种设置方法,一种是数字,一种是符号。

Linux 文件的基本权限就有九个,分别是 owner/group/others(拥有者/组/其他) 三种身份各有自己的 read/write/execute 权限。

文字设定法

在这里插入图片描述

在这里插入图片描述

基本上就九个权限分别是:

  • user:用户
  • group:组
  • others:其他

那么我们就可以使用 u, g, o 来代表三种身份的权限。

此外, a 则代表 all,即全部的身份。读写的权限可以写成 r, w, x,也就是可以使用下表的方式来看:

语法:

chmod [who] [+ || =] [mode] 

操作对象who可是下述字母中的任一个或者它们的组合:

  • u 表示“用户(user)”,即文件或目录的所有者。
  • g 表示“同组(group)用户”,即与文件属主有相同组ID的所有用户。
  • o 表示“其他(others)用户”。
  • a 表示“所有(all)用户”。它是系统默认值。

操作符号可以是:

  • + 添加某个权限。
  • – 取消某个权限。
  • = 赋予给定权限并取消其他所有权限(如果有的话)。
  • 设置mode所表示的权限可用下述字母的任意组合:
  • r 可读。
  • w 可写。
  • x 可执行。
  • X 只有目标文件对某些用户是可执行的或该目标文件是目录时才追加x 属性。
  • s 在文件执行时把进程的属主或组ID置为该文件的文件属主。方式“u+s”设置文件的用户ID位,“g+s”设置组ID位。
  • t 保存程序的文本到交换设备上。
  • u 与文件属主拥有一样的权限。
  • g 与和文件属主同组的用户拥有一样的权限。
  • o 与其他用户拥有一样的权限。
  • -c : 若该档案权限确实已经更改,才显示其更改动作
  • -f : 若该档案权限无法被更改也不要显示错误讯息
  • -v : 显示权限变更的详细资料
  • -R : 对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更)
  • –help : 显示辅助说明
  • –version : 显示版本
数字设定法

在这里插入图片描述
在这里插入图片描述

我们必须首先了解用数字表示的属性的含义:0表示没有权限,1表示可执行权限,2表示可写权限,4表示可读权限,然后将其相加。所以数字属性的格式应为3个从0到7的八进制数,其顺序是(u)(g)(o)。

例如,如果想让某个文件的属主有“读/写”二种权限,需要把4(可读)+2(可写)=6(读/写)。

先复习一下刚刚上面提到的数据:文件的权限字符为: -rwxrwxrwx , 这九个权限是三个三个一组的!其中,我们可以使用数字来代表各个权限,各权限的分数对照表如下:

  • r:4
  • w:2
  • x:1

每种身份(owner/group/others)各自的三个权限(r/w/x)分数是需要累加的,例如当权限为: - rwx r-- r-x 分数则是:

  • owner = rwx = 4+2+1 = 7
  • group = rwx = 4+0+0 = 4
  • others= — = 4+0+1 = 5

所以等一下我们设定权限的变更时,该文件的权限数字就是 770。变更权限的指令 chmod 的语法是这样的:

chmod [-R] xyz 文件或目录

选项:

  • xyz : 就是刚刚提到的数字类型的权限属性,为 rwx 属性数值的相加。
  • -R : 进行递归(recursive)的持续变更,亦即连同次目录下的所有文件都会变更

示例1

如果我们需要将文件权限设置为 - rwx r-x r-- 。

chomd 754  a.info

示例2

将 .bashrc 这个文件所有的权限都设定启用。

chmod 777 .bashrc

改变文件拥有者chown


更改文件属主,也可以同时更改文件属组

语法:

chown [R] 属主名 文件名
chown [-R] 属主名:属组名 文件名

示例:

进入 /root 目录(~)将install.log的拥有者改为bin这个账号:
[root@itbaizhan ~] cd ~
[root@itbaizhan ~]# chown bin install.log
[root@itbaizhan ~]# ls -l
-rw-r--r--  1 bin  users 68495 Jun 25 08:53 install.log将install.log的拥有者与群组改回为root:
[root@itbaizhan ~]# chown root:root install.log
[root@itbaizhan ~]# ls -l
-rw-r--r--  1 root root 68495 Jun 25 08:53 install.log

Linux路径

路径,顾名思议,是指从树形目录中的某个目录层次到某个文件的一条道路。 Linux系统中是从" / "开始的。

注意事项:

引入路径的概念的最终目的就是找到需要的目录或者文件。路径是由目录或者文件名构成。

绝对路径

绝对路径是指从“根”开始的路径。例如/usr/local,/etc/hosts,如果一个路径是从“/”开始它一定是绝对路径。

注意:

  • 绝对路径必须以 “/” 开头,它表示根目录。

相对路径

相对路径是以 “ . ” 或者 " … "开始的。. 表示用户操作所处的位置… 表示上级目录。

注意:

  • 相对路径不能以 “ / ” 开头。
  • 每个目录中都有 “ …” 目录文件。

在路径一些特殊符号的说明

. : 当前用户所在目录

… :表示上一级目录

: 表示当前用户自己家目录

USER:表示用户名为USER的家目录。这里的USER是在/etc/passwd中存在的用户。

Linux处理文件目录的常用命令

pwd (显示目前所在的目录)


pwdPrint Working Directory 的缩写,也就是显示目前所在目录的命令。

[root@www ~]# pwd [-P]

选项与参数:

  • -P :显示出确实的路径,而非使用连结 (link) 路径。

pwd示例:

[root@itbaizhan ~]# pwd
/root  <== 显示出目录啦~

注意:

pwd -P 的选项后,会不以连结档的数据显示,而是显示正确的完整路径啊!

mkdir (创建新目录)


如果想要创建新的目录的话,那么就使用mkdir (make directory)吧。

语法:

mkdir [-mp] 目录名称

选项与参数:

  • -p :帮助你直接将所需要的目录(包含上一级目录)递归创建起来!

mkdir示例

[root@itbaizhan ~]# cd /tmp
[root@itbaizhan tmp]# mkdir test   <==创建一名为 test 的新目录
[root@itbaizhan tmp]# mkdir test1/test2/test3/test4
[root@itbaizhan ~]# mkdir -m 711 test2

rmdir (删除空的目录)


语法:

rmdir [-p] 目录名称

选项与参数:

  • **-p :**从该目录起,一次删除多级空目录

删除 runoob 目录

rmdir示例:

[root@itbaizhan tmp]# rmdir itbaizhan/

cp (复制文件或目录)


cp 即拷贝文件和目录。copy的意思。

语法:

[root@itbaizhan ~]# cp [-adfilprsu] 来源档 目标档

选项与参数:

  • **-r:**递归持续复制,用于目录的复制行为

cp示例:

[root@itbaizhan ~]# cp ~/.bashrc /tmp/bashrc
[root@itbaizhan ~]# cp -i ~/.bashrc /tmp/bashrc
cp: overwrite `/tmp/bashrc'? n  <==n不覆盖,y为覆盖

rm (删除文件或者目录)


语法:

 rm [-fir] 文件或目录

选项与参数:

  • -f :就是 force 的意思,忽略不存在的文件,不会出现警告信息;
  • -r :递归删除啊!最常用在目录的删除了!这是非常危险的选项!!!

rm示例:

[root@www tmp]# rm -i bashrc
rm: remove regular file `bashrc'? y
如果加上 -i 的选项就会主动询问喔,避免你删除到错误的档名!

mv (移动文件与目录,或修改名称)


语法:

[root@itbaizhan ~]# mv [-fiu] source destination
[root@itbaizhan ~]# mv [options] source1 source2 source3 .... directory

选项与参数:

  • -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;
  • -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!
  • -u :若目标文件已经存在,且 source 比较新,才会升级 (update)

mv示例:

[root@itbaizhan ~]# cd /tmp
[root@itbaizhan tmp]# cp ~/.bashrc bashrc
[root@itbaizhan tmp]# mkdir mvtest
[root@itbaizhan tmp]# mv bashrc mvtest

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

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

相关文章

解决字符串类型转数字类型相加结果异常问题

js字符串类型转换数字类型有七种方法&#xff0c;分别是parseInt()&#xff0c;parseFloat()&#xff0c;Math.floor()&#xff0c;乘以数字&#xff08;*1&#xff09;&#xff0c;Number()&#xff0c;双波浪号 (~~number)&#xff0c;一元运算符&#xff08;number&#xff…

国标GB28181安防视频监控平台EasyCVR视频分享页增加精简模式

智慧安防平台EasyCVR能在复杂的网络环境中&#xff08;专网、局域网、广域网、VPN、公网等&#xff09;将前端海量的设备进行统一集中接入与视频汇聚管理&#xff0c;平台支持设备通过4G、5G、WIFI、有线等方式进行视频流的快捷传输&#xff0c;可以兼容各品牌的IPC、NVR、移动…

被忽视的暗面:客户端应用漏洞挖掘之旅

被忽视的暗面&#xff1a;客户端应用漏洞挖掘之旅 前言 在2023年12月15日&#xff0c;我有幸参加了由“字节跳动安全中心”举办的“安全范儿”沙龙活动。作为“中孚信息元亨实验室”的一员&#xff0c;我被邀请分享名为“被忽视的暗面&#xff1a;客户端应用漏洞挖掘之旅”的…

【开源】基于JAVA语言的教学资源共享平台

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 数据中心模块2.2 课程档案模块2.3 课程资源模块2.4 课程作业模块2.5 课程评价模块 三、系统设计3.1 用例设计3.2 类图设计3.3 数据库设计3.3.1 课程档案表3.3.2 课程资源表3.3.3 课程作业表3.3.4 课程评价表 四、系统展…

leetcode2312卖木头块

其实不难&#xff0c;主要是你得一眼看出来这个问题缩小规模然后就可以用DP来做了 using ll long long; class Solution { public:long long sellingWood(int m, int n, vector<vector<int>>& prices) {ll f[m10][n10];ll p[m10][n10];memset(p,0,sizeof p)…

使用 Vector 在 Kubernetes 中收集日志

多年来&#xff0c;我们一直在使用 Vector 在我们的 Kubernetes 平台中收集日志&#xff0c;并成功地将其应用于生产中以满足各种客户的需求&#xff0c;并且非常享受这种体验。因此&#xff0c;我想与更大的社区分享它&#xff0c;以便更多的 K8s 运营商可以看到潜力并考虑他们…

C# 图解教程 第5版 —— 第25章 反射和特性

文章目录 25.1 元数据和反射25.2 Type 类25.3 获取 Type 对象25.4 什么是特性25.5 应用特性25.6 预定义的保留特性25.6.1 Obsolete 特性25.6.2 Conditional 特性25.6.3 调用者信息特性25.6.4 DebuggerStepThrough 特性25.6.5 其他预定义特性 25.7 关于应用特性的更多内容25.7.1…

谷达冠楠科技:抖音开网店新手小白可以卖的产品

随着互联网的发展&#xff0c;越来越多的人选择在网上开设自己的店铺。而抖音作为目前最火的短视频平台&#xff0c;也提供了开店的功能。那么&#xff0c;对于新手小白来说&#xff0c;抖音开网店可以卖哪些产品呢? 我们可以考虑的是服装类商品。抖音上有很多时尚博主&#x…

【华为 ICT HCIA eNSP 习题汇总】——题目集1

1、&#xff08;多选&#xff09;根据下面所示的命令输出&#xff0c;下列描述中正确的是&#xff1f; A、GigabitEthernet0/0/1 允许VLAN1通过 B、GigabitEthernet0/0/1 不允许VLAN1通过 C、如果要把 GigabitEthernet0/0/1 变为 Access 端口&#xff0c;首先 需要使用命令“un…

java.lang.UnsupportedOperationException: null 其一解决办法

文章目录 前言一、错误回顾1.详细信息2.代码详情 二、解决方案1.错误原因2.解决方案1.使用 new ObjectMapper() new TypeReference<List>(){}2.使用 SerializerFeature.WriteMapNullValue.getMask() 总结 前言 当我们远程调用传递泛型集合&#xff0c;如 List<?>…

基于springboot+vue的母婴商城系统(前后端分离)

博主主页&#xff1a;猫头鹰源码 博主简介&#xff1a;Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容&#xff1a;毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目背景…

社会组织进村,温暖留守老人

2024年1月16日上午&#xff0c;巢湖市黄麓镇小李村迎来了30多位客人。他们是合肥格局商学院73队学员、部分书画家等爱心人士。大家深入村中和留守老人交流&#xff0c;给村民们现场书写春联&#xff0c;帮老人们照相&#xff0c;还带去食材做饭&#xff0c;陪伴老人们共同进餐。…