Linux:文件管理(文件信息、文件类型、访问权限、文件压缩和解压、文件查找)

文件管理

(1)查看文件信息

查看文件的权限(读写和执行)、文件所属用户和文件所属组、文件大小、文件创建时间、文件名称等

ls -lahF 

在这里插入图片描述
l表示文件属性;F表示目录后面添加/;a表示显示隐藏的文件;h表示以友好的方式显示文件的大小

(2)文件类型

查看文件的属性:ls -lah每一行对应的第一个字符,即表示文件的属性

  • 普通文件(-):如txt、pdf、doc等文件,都是普通文件,占绝大多数
  • 目录文件(d):directory,内部是文件的集合
  • 软链接文件(l):link,是其它文件的一个链接,相当于window的桌面快捷键
  • 字符设备(c):char,以字符流的形式进行数据传输的设备,如控制终端、鼠标和键盘等
  • 块设备(b):block,以数据块为单位进行数据传输的设备,如硬盘、闪存等
  • 管道文件(p):pipe,用于进程之间进行通信的一种特殊文件,分为匿名管道和有名管道
  • 套接字文件(s):socket,分为本地套接字和网络套接字,本地套接字用于实现主机上进程间的通信,网络套接字用于实现不同主机之间进程的通信

(3)文件的访问权限

在Linux中,对文件的访问权限控制主要是两种手段:用户类型和文件权限

A.用户类型

用户类型分为:文件的所有者、文件的所属组、其他人

可以通过文件的用户类型来设计该文件的访问权限,因此在Linux中文件的权限是按照用户类型来进行管理的,也就是说,文件所有者对文件的权限,文件所属组对文件的权限,其他人对文件的权限

B.文件权限

文件的权限分为:读(r)、写(w)、执行(x)

C.修改用户类型

修改文件的所有者、文件所属组

修改文件所有者: 将文件a.txt的所有者更改为zhangsan

sudo chown zhangsan a.txt

修改文件所属组:将文件a.txt的所属组更改为Group02

sudo chgrp Group02 a.txt

一次性修改文件所属组和文件所有者:将文件a.txt的所属组改为Group02,所有者改为zhangsan

sudo chown zhangsan:Group02 a.txt

(4)文件的压缩和解压

A.常见的压缩格式

在Linux中,常见的压缩格式包括:.tar.gz、.tgz、.tar.bz2、.zip、.rar、.tar.xz

B.Linux中默认的压缩工具

gzip和bzip2

C.How(如何文件的压缩和解压)

  • tar命令实现文件的压缩和解压

    tar czvf target.tar.gz  sourceFolder
    tar xzvf target.tar.gz -C /home/lorevin #使用gzip实现对文件压缩和解压
    
    tar cjvf target.tar.bz2  sourceFolder
    tar xjvf target.tar.bz2 -C /home/lorevin #使用bzip2实现对文件压缩和解压
    
  • zip命令实现文件的压缩和解压

    zip -r source.zip /home/lorevin
    unzip source.zip -d /home/lorevin #使用zip和unzip实现对文件压缩和解压
    
  • rar命令实现文件的压缩和解压

    rar source.rar  sourceFolder -r 
    rar/unrar x source.rar #使用rar实现对文件压缩和解压
    

(5)文件的查找

A.find命令

用于查找指定目录下的文件名

find ./ -name "*.cpp" #查找当前目录下所有.cpp文件find ./ -type f/c/b/p/d/s #查找当前目录下所有的指定类型的文件find ./ -size -2M #查找当前目录下所有在0-2Mb的文件

B.grep命令

查找文件中的字符串

grep '#include' ./ -r -n -i >> b.txt 
#查找当前目录下所有文件中包含字符串“#include”的行,

-r表示递归查询、-n表示显示行号、-i表示忽视大小写

C.locate命令

简化版的find,查询效率高(因为是基于系统数据库进行查询的)

sudo updatedb #更新本地数据库文件
locate test #查找所有以test开头的所有文件
locate /home/lorevin/test #查找指定目录/home/lorevin目录下的所有以test开头的文件
locate Test -i -n 5 -r '\.cpp$' #查找以“.cpp”结尾的前5个文件

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

GLSL教程 第4章:编写第一个片段着色器

目录 4.1 片段着色器的作用 4.2 片段输出和颜色 4.3 编写第一个片段着色器的步骤 4.4 实际应用和调试 小结 在本章中,我们将学习如何编写一个基本的片段着色器。片段着色器是图形管线中的关键阶段,负责处理图形渲染中的每个像素(即片段&…

【图论】Bellman-Ford

算法-Bellman-Ford 前置知识 图论 思路 Bellman-Ford 是一种单源最短路算法,可以得到一个不含有负环的图上由一个点出发的最短路(即单源最短路)。 我们记录 d d d 数组为距离数组。 每次我们遍历每一条边 ( u , v , w ) (u,v,w) (u,v,w)&…

【Java基础系列】RBAC:介绍与原理

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

为什么多数大数据治理项目都是失败的?Gartner调查失败率超过90%

引言:随着数据规模的爆发式增长、数据价值的凸显以及数据治理的必要性。在政策的推动、市场需求的拉动以及技术进步的支撑下,大数据治理正成为推动企业数字化转型、提升数据价值的重要手段。企业希望通过大数据治理提升数据利用率和数据价值,…

0719_驱动2 编写编译linux内核模块

一、编写linux内核模块 linux内核模块三要素&#xff1a; 入口&#xff1a;执行insmod 安装命令操作 出口&#xff1a; 执行rmmod 卸载命令操作 许可证&#xff1a;遵循GPL协议&#xff0c;开源&#xff0c;指定入口地址&#xff0c;出口地址 #include <linux/init.h> #i…

Nginx中WebSocket配置说明

查看 laravel 的 swool扩展文档时遇到不懂的&#xff0c;问了文心一言 https://gitee.com/resourcesplus/laravel-s/#%E5%90%AF%E7%94%A8websocket%E6%9C%8D%E5%8A%A1%E5%99%A8 nginx语法中 upstream 和 proxy_pass 用法

【秋招突围】2024届秋招笔试-美团笔试题-第一套-三语言题解(Java/Cpp/Python)

🍭 大家好这里是清隆学长 ,一枚热爱算法的程序员 ✨ 本系列打算持续跟新 美团 春秋招笔试题**汇总~ 👏 感谢大家的订阅➕ 和 喜欢💗 01.LYA 的音乐播放列表 问题描述 LYA 有一个包含 n n n 首歌曲的音乐播放列表,歌曲编号从 1 1

springboot使用Gateway做网关并且配置全局拦截器

一、为什么要用网关 统一入口&#xff1a; 作用&#xff1a;作为所有客户端请求的统一入口。说明&#xff1a;所有客户端请求都通过网关进行路由&#xff0c;网关负责将请求转发到后端的微服务 路由转发&#xff1a; 作用&#xff1a;根据请求的URL、方法等信息将请求路由到…

uniapp中出现图片过小会与盒子偏离

结论&#xff1a;在image的父盒子中加上display: flex&#xff0c;原因不清楚 出问题的代码和图片如下&#xff1a; <template><view style" background-color: greenyellow; height: 10rpx;width: 10rpx;"><image :src"imgSrc.seatnull" …

《破解验证码:用Requests和Selenium实现模拟登录的终极指南》

两种模拟登录方式(图形验证码) 超级鹰 打码平台&#xff0c;用于识别验证码 requests模拟登录 from chaojiying import Chaojiying_Client import requests from requests import Session from lxml import etree #获取图片信息 def get_pic_info(img_name):chaojiying Ch…

全周期项目管理工具大公开:2024年10大热门选择

本文将分享10款优质全生命周期项目管理系统&#xff1a;PingCode、Worktile、Teambition、禅道、Tapd、Basecamp、ClickUp、ProofHub、Microsoft Project、Asana。 在项目管理领域&#xff0c;找到一个能够覆盖项目全生命周期的管理工具是许多团队面临的常见挑战。这种工具不仅…

【C++】循环结构-while语句

while 语句的语法格式&#xff1a; while (循环条件) {在满足循环条件下执行的操作} 注意要留有跳出循环的方式&#xff0c;避免死循环 1、不写 whlie (1)&#xff0c;写具体的循环条件 2、写while(1)&#xff0c;用 break 跳出循环 下面是一个实例 #include<iostream…

Vue3二次封装axios

官网: https://www.axios-http.cn/docs/interceptors steps1: 安装 npm install axios -ssteps2: /src/api/request.js 文件 >>> 拦截器 import axios from axios // 如果没用element-plus就不引入 import { ElMessage } from element-plusconst service axios.cre…

身份认证(session + token)

web 开发模式 服务端渲染 前后端分离 如何选择 前后端身份验证 session 原理 什么是 cookie cookie 安全性 提高cookie 安全性 配置 session 中间件 注意 只会清除当前用户的 session JWT 认证机制 express 中使用 JWT JWT 字符串 还原为 JSON 对象 一般 约定 api 开头的都…

【北京迅为】《i.MX8MM嵌入式Linux开发指南》-第三篇 嵌入式Linux驱动开发篇-第五十八章 中断下文之tasklet

i.MX8MM处理器采用了先进的14LPCFinFET工艺&#xff0c;提供更快的速度和更高的电源效率;四核Cortex-A53&#xff0c;单核Cortex-M4&#xff0c;多达五个内核 &#xff0c;主频高达1.8GHz&#xff0c;2G DDR4内存、8G EMMC存储。千兆工业级以太网、MIPI-DSI、USB HOST、WIFI/BT…

简过网:大学生考公,一定要先好好看看这篇文章!

大家好&#xff0c;我是简过网&#xff0c;今天这篇文章我们来聊聊关于大学生考公的那些事儿&#xff0c;希望能给大学生们一点点的帮助&#xff01; 首先&#xff0c;可能有朋友会问了&#xff0c;大学生一般从什么时候开始备考公务员呢&#xff0c;在这里小编建议大家从大三…

electron调试

electron 调试 electron 的调试分两步&#xff0c;界面的调试&#xff0c;和主进程的调试。 界面调试类似浏览器F12&#xff0c;可是调试不到主进程。 主进程调试有vscode、命令行提示和外部调试器调试。 本篇记录的练习是vscode调试。命令行和外部调试器的方式可以参考官网&a…

数据中心同步指南 : 数据中心架构师和其他网络专家需要了解有关 5G 同步的知识

随着 5G 的推出&#xff0c;电信基础设施的设计方式正在发生巨大变化。由于网络运营商希望创建更开放的网络基础设施生态系统&#xff0c;部分基础设施&#xff08;如基带处理&#xff09;被虚拟化并移至电信数据中心。影响数据中心架构的另一个与 5G 相关的趋势是移动边缘计算…

shell脚本相关应用

编写一个简单的脚本&#xff0c;以及运行脚本 301 vim helloworld.sh #!/bin/bash echo "hello world!" ls -lh /etc/ 执行的方式如下&#xff1a; 302 bash helloworld.sh 303 sh helloworld.sh 304 chmod x helloworld.sh 305 ./helloworld.sh…

vue中scoped详解以及样式穿透>>>、/deep/、::v-deep

1、scoped scoped属性用于限制样式仅应用于当前组件。当一个style标签拥有scoped属性时&#xff0c;它的CSS样式就只能作用于当前的组件&#xff0c;通过该属性&#xff0c;可以使得组件之间的样式不互相污染。 原理&#xff1a;当样式中加了scoped属性时候&#xff0c;编译的…