文件,文件夹操作(权限设置+操作)

2023-11-18

文件权限

  • r:可读权限,值为4
  • w:可写权限,值为2
  • x:可执行权限,值为1

文件权限说明

文件夹权限755
文件权限644
一个文件或文件夹的三种用户,第一位是拥有者,第二个是组内用户,第三个是组外用户。

权限举例说明:
文件夹权限为755
第一位:拥有者拥有最高操作权限7 =(4+2+1)= rwx
第二位:组内用户拥有的操作权限5 = (4+1) = rx
第三位:组外用户拥有的操作权限5 = (4+1) = rx

使用ls指令查看文件权限

ls -l user.txt

在这里插入图片描述
第一列:文件权限
一共有10位
第1位:代表文件类型(-代表普通文件,d代表文件夹,l代表软连接文件)
第2-4位:代表文件拥有者权限,r(4)+w(2) = 6,所以最终权限是6
第5-7位:代表组内用户权限,r(4) = 4,所以最终权限是4
第8-10位:代表组外用户权限,r(4) = 4,所以最终权限是4
综上所述,user.txt的最终权限是644。

第二列:代表文件数量
第三列:root,文件拥有者
第四列:toot,文件所属组
第五列:175,代表文件大小
第六列:创建时间
第七列:user.txt,文件名称

目录管理

mkdir 目录名 (创建目录)

相关选项:
-p:递归创建
在这里插入图片描述
-m:创建目录时指定权限
在这里插入图片描述
在这里插入图片描述

rmdir 目录名(删除目录)

删除空文件夹
在这里插入图片描述
相关参数:
-p:递归删除
在这里插入图片描述
在这里插入图片描述
递归删除
在这里插入图片描述

文件创建与删除

touch指令:创建文件

问题touch指令和vim指令的区别
vim指令打开文件,如果文件不存在,创建并打开文件
touch指令只是创建文件,没有打开的功能

rm指令删除文件

相关选项
-r:递归删除(主要用于删除文件夹)
在这里插入图片描述
-f:关闭删除确认
在这里插入图片描述
有提示
在这里插入图片描述
没有提示

复制和移动文件

cp [选项] <源文件路径> <目标文件路径>

相关选项:
-v:显示进度条
-R:递归复制
-p:复制时保持文件原有属性(如:权限,拥有者,所属组等)
可以组合
-vRp:递归复制,保持原有属性,复制时显示进度条(复制时一般使用它)。

实例代码:

复制文件

在这里插入图片描述

复制文件夹

在这里插入图片描述

复制的时候修改名称

在这里插入图片描述

mv [选项] <源文件路径> <目标文件路径>

相关选项:
-v:移动时显示进度条

覆盖时不能递归覆盖,执行mv指令如下
在这里插入图片描述
将/tmp/shop文件删除后再次执行mv指令如下
在这里插入图片描述

mv指令实现文件或文件夹的重命名

基本语法

mv 旧文件名 新文件名

命令执行结果如下
在这里插入图片描述

文件统计

基本语法
wc [选项] <文件列表>
相关选项
-c:统计文件的字节数
-l:lines缩写,统计文件行数(注释行不统计)
-w:word缩写,统计文件单词数(有驼峰命名等情况,所以统计可能不是很准确)

命令执行结果如下
在这里插入图片描述

grep搜索匹配行(| 管道的时候使用过)

基本语法
grep [选项] <字符串> <源文件>
相关选项
-n:显示匹配的行号
-c:统计一共有多少行
-i:ignore的缩写,代表忽略大小写

命令执行结果如下
在这里插入图片描述

显示文件的内容

cat

正序显示内容
命令执行如下
在这里插入图片描述

tac

倒序显示文件内容
命令执行如下
在这里插入图片描述

tail

显示文件最后的几行
命令执行如下
在这里插入图片描述

更改文件的权限

一般在安装绿色软件时,需要设置软件的拥有者和所属组(如安装mysql)。

更改文件的权限

chmod -R(递归修改) <新文件权限> <文件名称>
在这里插入图片描述

更改文件的拥有者

chown -R(递归修改) <用户> <文件名称>
在这里插入图片描述

更改文件的所属组

chgrp -R(递归修改) <组名> <文件名称>
在这里插入图片描述

软链接文件

在Linux系统中软链接文件相当于Windows系统中的快捷键。

创建软链接

ln [-s] <源文件目录> <目标文件目录>

特别说明:创建软链接时,路径都必须是绝对路径。
命令执行如下
在这里插入图片描述

Windows系统的快捷键和Linux系统中软链接的区别。

打开软链接

在这里插入图片描述
对比打开的两个文件的内容相同

修改软链接对真实文件的影响

修改软链接后,真实文件也会同步修改。

删除软链接文件

删除软链接对真实文件没有影响

删除真实文件

删除真实文件,软链接还是会存在。但是不能打开了。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

文件,文件夹操作(权限设置+操作) 的相关文章

  • 在Linux上编译C# + WPF以便在Windows上运行

    我有一个 C 应用程序 其中某些部分是使用 WPF 编写的 Mono 不支持 可以在 Linux 上编译这个应用程序吗 最终 该应用程序将在 Windows 上运行 但它是更大框架的一部分 并且我们的整个构建过程在 Linux 上运行 因此
  • ansible 重新启动 2.1.1.0 失败

    我一直在尝试创建一个非常简单的 Ansible 剧本 它将重新启动服务器并等待它回来 我过去在 Ansible 1 9 上有一个可以运行的 但我最近升级到 2 1 1 0 并且失败了 我正在重新启动的主机名为 idm IP 为 192 16
  • 修改linux下的路径

    虽然我认为我已经接近 Linux 专业人士 但显然我仍然是一个初学者 当我登录服务器时 我需要使用最新版本的R 统计软件 R 安装在 2 个地方 当我运行以下命令时 which R I get usr bin R 进而 R version
  • 是否可以在Linux上将C转换为asm而不链接libc?

    测试平台为Linux 32位 但也欢迎 Windows 32 位上的某些解决方案 这是一个c代码片段 int a 0 printf d n a 如果我使用 gcc 生成汇编代码 gcc S test c 然后我会得到 movl 0 28 e
  • 创建 jar 文件 - 保留文件权限

    我想知道如何创建一个保留其内容的文件权限的 jar 文件 我将源代码和可执行文件打包在一个 jar 文件中 该文件将在使用前提取 人们应该能够通过运行批处理 shell 脚本文件立即运行示例和演示 然后他们应该能够修改源代码并重新编译所有内
  • 如何通过替换为空页映射来取消映射 mmap 文件

    Linux 用户空间有没有办法用空页面 映射自 dev null 或者可能是一个空页面 重复映射到从文件映射的页面的顶部 对于上下文 我想找到这个 JDK bug 的修复 https bugs openjdk java net browse
  • 如何使用 bash 锁定文件

    我有一个任务从远程服务器同步目录 rsync av email protected cdn cgi l email protection srv data srv data 为了使其定期运行并避免脚本 reEnter 问题 我使用 rsyn
  • 如何在 Linux 中编写文本模式 GUI? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 当我编写脚本 程序时 我经常想弹出一个简单的文本 gui 来提示输入 我该怎么做 例如 来自 Shel
  • 如何根据 HTTP 请求使用 Python 和 Flask 执行 shell 命令并流输出?

    下列的这个帖子 https stackoverflow com questions 15092961 how to continuously display python output in a webpage 我能够tail f网页的日志
  • 如何在bash中使用jq从变量中包含的json中提取值

    我正在编写一个 bash 脚本 其中存储了一个 json 值 现在我想使用 Jq 提取该 json 中的值 使用的代码是 json val code lyz1To6ZTWClDHSiaeXyxg redirect to http examp
  • 为什么 Linux perf 使用事件 l1d.replacement 来处理 x86 上的“L1 dcache misses”?

    在英特尔 x86 上 Linux用途 https stackoverflow com a 52172985 149138事件l1d replacements来实施其L1 dcache load misses event 该事件定义如下 计数
  • 如何在数组中存储包含双引号的命令参数?

    我有一个 Bash 脚本 它生成 存储和修改数组中的值 这些值稍后用作命令的参数 对于 MCVE 我想到了任意命令bash c echo 0 0 echo 1 1 这解释了我的问题 我将用两个参数调用我的命令 option1 without
  • 如何使用GDB修改内存内容?

    我知道我们可以使用几个命令来访问和读取内存 例如 print p x 但是如何更改任何特定位置的内存内容 在 GDB 中调试时 最简单的是设置程序变量 参见GDB 分配 http sourceware org gdb current onl
  • linux perf:如何解释和查找热点

    我尝试了linux perf https perf wiki kernel org index php Main Page今天很实用 但在解释其结果时遇到了困难 我习惯了 valgrind 的 callgrind 这当然是与基于采样的 pe
  • nslookup 报告“无法解析 '(null)': 名称无法解析”,尽管它成功解析了 DNS 名称

    我在 ubuntu 上 并且正在运行 docker 默认桥接网络 我有 Zookeeper kafka 的容器化版本 以及我编写的与 kafka 对话的应用程序 I do a docker exec it
  • Discord.net 无法在 Linux 上运行

    我正在尝试让在 Linux VPS 上运行的 Discord net 中编码的不和谐机器人 我通过单声道运行 但我不断收到此错误 Unhandled Exception System Exception Connection lost at
  • 两种情况或 if 哪个更快? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我必须制作一个 非常 轻的脚本 它将接受用户的选项并调用脚本中的函数来执行一些任务 现在我可以使用 IF 和 CASE 选项 但我想知道两
  • 如何在Linux内核源代码中打印IP地址或MAC地址

    我必须通过修改 Linux 内核源代码来稍微改变 TCP 拥塞控制算法 但为了检查结果是否正确 我需要记录 MAC 或 IP 地址信息 我使用 PRINTK 函数来打印内核消息 但我感觉很难打印出主机的MAC IP地址 printk pM
  • NPTL 和 POSIX 线程有什么区别?

    NPTL 和 POSIX 线程之间的基本区别是什么 这两者是如何演变的 POSIX 线程 pthread 不是一个实现 它是几个函数的 API 规范 纸上的标准 英文 其名称以pthread 以及定义在
  • os.Mkdir 和 os.MkdirAll 权限

    我正在尝试在程序开始时创建一个日志文件 我需要检查是否 log如果不创建目录 则目录存在 然后继续创建日志文件 好吧 我尝试使用os Mkdir 也os MkdirAll 但无论我在第二个参数中输入什么值 我都会得到一个没有权限的锁定文件夹

随机推荐

  • Ubuntu系统中防火墙的使用和开放端口

    Ubuntu系统中防火墙的使用和开放端口 目录 1 Ubuntu查看防火墙的状态 2 2 Ubuntu开启防火墙 2 3 Ubuntu添加开放SSH端口 3 4 Ubuntu防火墙常用命令 5 4 1 查看ufw防火墙的状态 5 4 2 启
  • ARM汇编之APCS规则

    APCS规则简述 寄存器使用规则 寄存器r0 r3用于函数调用过程中传递函数形参 各有一个别名 a1 a4 使用前后可以不用恢复原来的值 R4 r11用于保存函数内部局部变量的值 每个函数使用前 必须要保存被调用函数的值 使用完毕 必须恢复
  • 在Linux远程服务器上搭建JavaWeb开发环境

    配置 远程linux服务器版本为CentOS7 6 使用的是阿里云服务器 目录 1 安装JDK 1 1 查看yum源中JDK版本 1 2 使用yum安装JDK1 8 1 3 查看是否安装成功 2 安装MySQL 2 1 查看是否已安装mys
  • C++ 循环

    有时候 程序需要多次执行同一块代码 一般情况下 语句是顺序执行的 函数中的第一个语句先执行 接着是第二个语句 依此类推 循环语句允许多次执行一个语句或语句组 大多数编程语言中循环语句的一般形式 循环类型 C 编程语言提供了以下几种循环类型
  • Anaconda环境的创建、激活、删除和管理

    1 Anaconda环境的创建 conda create n 环境的名字 自定义 python 3 7 其中环境的名字 自定义 表示创建环境的名字 可以自定义 建议为英文 后面python 3 7表示创建的解释器的版本 conda crea
  • 这里有141个创业公司的死亡案例,看鸡汤不如听教训

    今天我们打算跟大家聊聊失败 关于成功的方法论有着趋同性 多半与 天时地利人和 有关 而关于失败 却很少有人愿意公开谈起 也许因为野兽总是不想将伤口暴露在外 探讨失败的意义 可能远远大于成功 因为面对挫折 即使自认为最无畏的人也会有这样的时刻
  • PicGo安装与配置-Gitee图床

    PicGo安装与配置 Gitee图床 文章目录 PicGo安装与配置 Gitee图床 1 前言 2 下载 3 安装 4 Gitee 5 Node js 6 配置PicGo 6 1 PicGo界面配置 6 2 npm安装PicGo插件Gite
  • 空格的正则表达式

    在正则表达式想使用空格的时候不能采用 s的方法 因为 s指的是空白 就是所有空白 如果想表示单纯的空格的话可以采用 方括号本身就是匹配其中的字符 那么其中放空格就是匹配空格 如果有其他正则表达式问题可以查看 https blog csdn
  • GCP reliable google cloud infrastructure, devops lab

    最后更新2022 03 13 先到menu source repository里建立repository 还是不很好找 source repository在CI CD分类里面 点右上角的add repository按钮 输名字devops
  • uniapp集成unipush2.0

    unipush3 0集成 unipush推出2 0服务 之前一直用的1 0 现在项目推荐使用2 0 最近也是对2 0这个推送做了测试 下面就主要对华为这个来总结一下 其余的厂商大同小异 1 push1 0和2 0对比 个人理解 2 0比1
  • 深入浅出 RPC - 深入篇

    深入篇 我们主要围绕 RPC 的功能目标和实现考量去展开 一个基本的 RPC 框架应该提供什么功能 满足什么要求以及如何去实现它 RPC 功能目标 RPC 的主要功能目标是让构建分布式计算 应用 更容易 在提供强大的远程调用能力时不损失本地
  • 深度学习——制作自己的VOC图像分割数据集

    1 数据集介绍 COCO数据集有80个类别 VOC数据集有20个类别 当这些数据集类别中没有自己需要的时候 就需要自己动手做自己的数据集了 我自己在做数据集的时候主要使用到了labelme和labelImg两个工具 labelme主要是制作
  • string str="i"与 String str=new String("i")和String s = new String("abc")的解释!!!

    string str i 与 String str new String i String x 张三 String y 张三 String z new String 张三 System out println x y true System
  • Android中的回调

    mark一句比较好的话 A类中调用B类的某个方法C 然后B类反过来调用A类的方法D D这个方法就叫回调 在不同的状态 回调 我们的实现类 来达到接口和实现和分类 先定义一个接口 监听接口 来在主界面监听界面变化状态 public inter
  • sqli-labs通关攻略54-65[Challenges]

    Advanced Injections 文章目录 Advanced Injections less 54 less 55 less 56 less 60 less 62 less 63 less 64 less 65 最后一篇补上 less
  • yolov3 数据预处理部分实现细节

    参考 https mp weixin qq com s T9LshbXoervdJDBuP564dQ https blog csdn net qm5132 article details 83651291 https mp weixin q
  • 软件工程复习10:软件设计与实现

    作者 非妃是公主 专栏 软件工程 个性签 顺境不惰 逆境不馁 以心制境 万事可成 曾国藩 专栏地址 软件工程专栏地址 专栏系列文章 软件工程复习01 软件工程概述 软件工程复习02 个人技术 软件工程复习03 个人软件流程 软件工程复习04
  • Java经典面试题:Redis 和 Mysql 如何保证数据一致性

    Redis 和 Mysql 如何保证数据一致性 引言 重要性 挑战 Redis和MySQL概述 Redis Remote Dictionary Server MySQL 数据一致性概述 Redis的数据一致性机制 MySQL的数据一致性机制
  • vim常用操作——vim中执行shell

    vim常用操作 vim中执行shell vim中执行shell命令 有以下四种形式 单纯执行shell命令 不更改文件 形式 command 解释 不退出vim 并执行shell命令command 将命令输出显示在vim的命令区域 不会改变
  • 文件,文件夹操作(权限设置+操作)

    文件权限 r 可读权限 值为4 w 可写权限 值为2 x 可执行权限 值为1 文件权限说明 文件夹权限755 文件权限644 一个文件或文件夹的三种用户 第一位是拥有者 第二个是组内用户 第三个是组外用户 权限举例说明 文件夹权限为755