当前位置: 首页 > news >正文

常用文件命令

文章目录

  • 文件命令
    • 文件内容查看
      • cat
      • nl
      • more
      • less(more的plus版)
      • head
      • tail
      • od
    • 文件属性操作
      • 用户权限
        • 常见的权限
        • chown
        • chmod
        • chgrp
        • umask
      • 隐藏属性
        • 常见的隐藏属性
        • lsattr
        • chattr
    • 查找文件
      • 查看文件类型
      • 查找文件位置
        • which
        • whereis
        • locate
        • find
    • 文件操作(复制、剪切、删除)
      • 复制cp
      • 剪切mv
      • 删除rm
      • 压缩、解压
        • zip
        • unzip
        • tar
      • 分割大文件

文件命令

文件内容查看

cat

显示文件内容,打印在终端

cat [-AbEnTv] filename

  • -b:列出行号,空白行不算
  • -E:显示结尾的换行符$
  • -n:显示行号包括空白行
  • -T:[tab]显示成^I
  • -v:列出看不出来的字符
  • -A:就是-vET的合集

nl

对文本文件进行,行标号

nl [-bnw] filename

  • -b:
    -b a:显示行号包括空行
    -b t:不包括空行

  • -n:行号的表示方法
    -n ln:行号在左
    -n rn:行号在右
    -n rz:行号加0

  • -n 10:起始行号为10

  • -w:行号栏所占字符数(默认为6)

    ​ -w 10:设置行号栏所占字符数为10

more

逐页显示文本内容

more filename

  • ​ [space]向下翻一页
  • ​ [Enter]向下翻一行
  • ​ [/string]向下查找string
  • ​ [:f]显示文件名和行号
  • ​ [q:]离开
  • ​ [b]往回翻页

less(more的plus版)

逐页显示文本内容

less filename

  • ​ [space]:向下翻页
  • ​ [Enter]:向下一行
  • ​ [b]:向上翻页
  • ​ [/string]:向下查找
  • ​ [?string]:向上查找
  • ​ [n]:重复前一次查找
  • ​ [N]:反向重复前一次查找
  • ​ [g]:前进到第一行
  • ​ [G]:到最后一行
  • ​ [q]:离开

head

显示文件的开头部分

head [-nc] number filename

  • [-n num]:显示前num行的内容

  • [-c num]:显示前num个字节的内容

tail

显示文件末尾

tail [-ncf] number filename

  • [-n num]:显示后num行的内容

  • [-c num]:显示后num个字节的内容

  • [-f] :实时追踪文件长度,可以显示新增的内容

od

以不同格式显示文件内容

od [-t TYPE] filename

  • -t a:默认字体

  • -t c:ASCII字体

  • -t d[size]:十进制

  • -t f[size]:浮点数

  • -t o[size]:八进制

  • -t x[size]:十六进制

文件属性操作

用户权限

常见的权限
  • r:可读

  • w:可写

  • x:可执行

  • -:没有权限

chown

改变拥有者和所属组

chown [-R] owner:group filename/dirname

  • [-R]:递归改变目录下所有文件
chmod

设置文件权限

chmod [-Rv] [xyz] filename/dirname

  • [-R]:递归改变目录下所有文件

  • [-v]:显示每个修改文件的详细信息

  • [xyz]:r = 4 , w = 2 , x = 1

    • x:拥有者权限

    • y:用户组权限

    • z:其他用户权限

chmod [ugoa][+-=][ewx] file/dirname

  • [ugoa]:user(所有者)、group(所属组)、others(其他)、all(所有人) 能组合使用
  • [±=]:增、减、赋值
  • [rwx]:read(可读)、write(可写)、execute(可执行)能组合使用
chgrp

改变用户组

chgrp [-R] [用户组名] dirname/filename

  • -R:递归的改变
umask

umask:默认权限

隐藏属性

常见的隐藏属性
  • a:只能追加内容,禁止修改或删除。
  • i:不可修改或删除。
  • s:同步更新,即每次写入操作都会立即同步到磁盘。
  • u:当文件被删除时,保留其内容以便恢复。
  • A:只能追加内容,但允许从文件中删除内容。
lsattr

显示隐藏属性

lsattr [-a] filename

  • -a:显示隐藏属性
chattr

设置文件的特殊属性

chattr [+-=] [ASacdistu] filename

文件的隐藏属性
+:增加
-:删除
=:设置
A:只能追加内容,但允许从文件中删除内容
s:文件同步写入磁盘
a:文件只能增加数据
c:自动压缩
d:不会被dump备份
i:不能删除修改增加数据
S:一旦删除则无法恢复
u:删除后仍存在磁盘中,以便恢复

查找文件

查看文件类型

file filename

查看文件类型

查找文件位置

which

which [-a] filename:查找命令的文件位置

  • -a:将所有PATH(环境变量)中的命令列出
whereis

whereis [-bmsu] file/dirname

  • [-l]:列出查询的主要目录

  • [-b]:只找二进制文件

  • [-m]:只找manual说明文件下的路径

  • [-s]:只找source文件

  • [-u]:查找除[-bms]之外的文件

locate

locate [-irclS] keyword

  • [-i]:忽略大小写
  • [-c]:不输出文件名,仅数量
  • [-l]:仅输出几行
  • [-S]:输出文件数、目录数、字节数
  • [-r]:后面可接正则表达式
find

对某路径下的文件进行查找

find [路径] [-mtime/user/group/perm/name/type] [action]

  • [-mtime ±n]:按时间查找
    • +n:n天前修改过的
    • -n:n天内修改过的
    • n:第n天当天内修改过的
  • [-user name]:按用户查找
  • [-group name]:按用户组查找
  • [-perm]:按文件权限查找
  • [-name]:按文件名关键字查找
  • [-type]:按文件类型查找

文件操作(复制、剪切、删除)

复制cp

cp [-adfilprsu] 源文件 目标文件

  • [-d]:若源文件为链接文件,则只复制链接文件
  • [-f]:若目标文件有存在,则覆盖替换(不提醒)
  • [-i]:若目标文件有存在,则覆盖替换前进行询问
  • [-l]:若源文件为链接文件,直接复制源文件所指向的文件
  • [-p]:将文件的属性一并复制
  • [-r]:递归复制目录下的所有文件
  • [-s]:复制成链接文件
  • [-a]:复制原文件所有的属性

剪切mv

mv [-fiu] source1 source2 目标目录

  • [-f]:目标目录中存在同名文件,则直接覆盖(不提示)
  • [-i]:目标目录中存在同名文件,则覆盖前会提示
  • [-u]:目标目录中存在同名文件,则谁新留谁

删除rm

rm [-fir] 文件名/目录名

  • [-f]:忽略不存在的文件,无警告信息
  • [-i]:删除前会进行询问
  • [-r]:递归地删除目录下的所有文件

压缩、解压

zip

zip file1.zip file1

创建一个zip格式的压缩包

zip -r file1.zip file1 file2 dir1

将几个文件和目录同时压缩成一个zip格式的压缩包

unzip

unzip file1.zip

解压一个zip格式压缩包

tar

tar -cvfj archive.tar.bz2 dir1 创建一个bzip2格式的压缩包

tar -xvfj archive.tar.bz2 解压一个bzip2格式的压缩包

tar -cvfz archive.tar.gz dir1 创建一个gzip格式的压缩包

tar -xvfz archive.tar.gz 解压一个gzip格式的压缩包

分割大文件

split [-bl] file PREFIX:分割大文件

  • [-b]:后接划分的大小,可加单位,如b、k、m

  • [-l]:以行数划分

  • [PREFIX]:划分文件的前缀字符











                                     ------ By Flier

2024.2.15

相关文章:

常用文件命令

文章目录 文件命令文件内容查看catnlmoreless(more的plus版)headtailod 文件属性操作用户权限常见的权限chownchmodchgrpumask 隐藏属性常见的隐藏属性lsattrchattr 查找文件查看文件类型查找文件位置whichwhereislocatefind 文件操作(复制、…...

在屏蔽任何FRP环境下从零开始搭建安全的FRP内网穿透服务

背景 本人目前在境外某大学读博,校园网屏蔽了所有内网穿透的工具的数据包和IP访问,为了实现在家也能远程访问服务器,就不得不先开个学校VPN,再登陆。我们实验室还需要访问另一个大学的服务器,每次我都要去找另一个大学…...

OpenGL-ES 学习(1)---- AlphaBlend

AlphaBlend OpenGL-ES 混合本质上是将 2 个片元的颜色进行调和(一般是求和操作),产生一个新的颜色 OpenGL ES 混合发生在片元通过各项测试之后,准备进入帧缓冲区的片元和原有的片元按照特定比例加权计算出最终片元的颜色值,不再是新&#xf…...

Python 函数的学习笔记

Python 函数的学习笔记 0. Python 函数的概要说明1. 自定义函数示例2. 匿名函数示例3. 内置函数示例3-1. filter() 示例3-2. map() 示例3-3. reduce() 示例 4. 可变长参数*args和**kwargs示例4-1. *args(Positional Variadic Arguments)4-2. **kwargs&am…...

详解 Redis 实现数据去重

✨✨ 欢迎大家来到喔的嘛呀的博客✨✨ 🎈🎈希望这篇博客对大家能有帮助🎈🎈 目录 言 一. Redis去重原理 1. Redis Set 数据结构 2. 基于 Set 实现数据去重 3. 代码示例 4. 总结 …...

FreeRTOS 延迟中断处理

采用二值信号量同步 二值信号量可以在某个特殊的中断发生时,让任务解除阻塞,相当于让任务与中断 同步。这样就可以让中断事件处理量大的工作在同步任务中完成,中断服务例程(ISR) 中只是快速处理少部份工作。如此,中断处理可以说是…...

计网体系结构

计算机网络的概述 概念 网络:网状类的东西或系统。 计算机网络:是一个将分散的、具有独立性功能的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的系统。即计算机网络是互连(通过通信链路互连…...

linux系统zabbix工具监控web页面

web页面监控 内建key介绍浏览器配置浏览器页面查看方式 监控指定的站点的资源下载速度,及页面响应时间,还有响应代码; web Scenario: web场景(站点)web page :web页面,一个场景有多…...

VMware虚拟机网络配置

VMware虚拟机网络配置 桥接模式NAT网络 桥接模式 桥接模式其实就是借助你宿主机上的网卡进行联网和通信,所以相当于虚拟机和宿主机平级,处于同一个网段中。 配置要点: 注意选择正确的宿主机网卡 查看宿主机的网络信息,这些信息指…...

代码随想录算法训练营DAY18 | 二叉树 (5)

一、LeetCode 513 找树左下角的值 题目链接:513.找树左下角的值https://leetcode.cn/problems/find-bottom-left-tree-value/ 思路一:递归回溯全局变量比深度。 class Solution {int Max_depth 0;int result 0;public int findBottomLeftValue(TreeNo…...

企业微信自动推送机器人的应用与价值

随着科技的快速发展,企业微信自动推送机器人已经成为了企业数字化转型的重要工具。这种机器人可以自动推送消息、执行任务、提供服务,为企业带来了许多便利。本文将探讨企业微信自动推送机器人的应用和价值。 一、企业微信自动推送机器人的应用 企业微信…...

Matplotlib plt.plot:从入门到精通,只需一篇文章!

Matplotlib plt.plot:从入门到精通,只需一篇文章! 利用Matplotlib进行数据可视化示例 🌵文章目录🌵 📊 1. 引言:为什么Matplotlib在数据可视化中如此重要?📊✨ 2. plt.pl…...

Linux中sigaction函数和SIGCHLD信号的使用

sigaction函数: 函数说明:注册一个信号处理函数 函数原型:int sigaction(int signum, const struct sigaction *act, struct sigaction *oldact); 函数参数: signum:捕捉的信号act:传入参数,…...

【MySQL】操作库 —— 表的操作 -- 详解

一、增加表 1、创建表 mysql> create database [if not exists] table_name ( -> field1 datatype, -> field2 datatype, -> field3 datatype -> ) character set 字符集 collate 校验规则 engine 存储引擎; 注意 :最后一行也可以写成&#x…...

ZigBee学习——在官方例程实现组网

✨Z-Stack版本:3.0.2 ✨IAR版本:10.10.1 ✨这篇博客是在善学坊BDB组网实验的基础上进行完善,并指出实现的过程中会出现的各种各样的问题! 善学坊教程地址: ZigBee3.0 BDB组网实验 文章目录 一、基础工程选择二、可能遇…...

ES实战--wildcard正则匹配exists过滤字段是否存在

wildcard 通配符中的 * 表示任意数量的字符 ?表示任意单个字符 #正则匹配 GET /wildcard-test/_search {"query": {"wildcard": {"title": {"wildcard": "ba*n"}}} } #响应:"hits": {"total": {"…...

C++学习:二分查找

二分查找的前提 库函数只能对数组进行二分查找。 对一个数组进行二分查找的前提是这个数组中的元素是单调的。 一般为单调不减,当然如果是单调不增也可以(需要修改比较函数) 例如: [1,5,5,9,18]是单调的 [1 , 9, 9,…...

语言与科技创新(大语言模型对科技创新的影响)

1.语言因素对科技创新的影响 科技创新中的语言因素至关重要,具体体现在以下几个方面: 科技文献交流: 英语作为全球科学研究的通用语言,极大地推动了科技成果的国际传播与合作。在国际上,科学家们在发表论文、报告研究…...

【C语言】简单贪吃蛇实现保姆级教学!!!

关注小庄 顿顿解馋૮(˶ᵔ ᵕ ᵔ˶)ა 新年快乐呀小伙伴 引言: 小伙伴们应该都有一个做游戏的梦吧?今天让小庄来用C语言简单实现一下我们的童年邪典贪吃蛇,顺便巩固我们的C语言知识,请安心食用~ 文章目录 贪吃蛇效果一.游戏前工作…...

rtt设备io框架面向对象学习-uart设备

目录 1.uart设备基类2.uart设备基类的子类3.初始化/构造流程3.1设备驱动层3.2 设备驱动框架层3.3 设备io管理层 4.总结5.使用 1.uart设备基类 此层处于设备驱动框架层。也是抽象类。 在/ components / drivers / include / drivers 下的serial.h定义了如下uart设备基类 struc…...

23-Oracle 23 ai 区块链表(Blockchain Table)

小伙伴有没有在金融强合规的领域中遇见,必须要保持数据不可变,管理员都无法修改和留痕的要求。比如医疗的电子病历中,影像检查检验结果不可篡改行的,药品追溯过程中数据只可插入无法删除的特性需求;登录日志、修改日志…...

CMake 从 GitHub 下载第三方库并使用

有时我们希望直接使用 GitHub 上的开源库,而不想手动下载、编译和安装。 可以利用 CMake 提供的 FetchContent 模块来实现自动下载、构建和链接第三方库。 FetchContent 命令官方文档✅ 示例代码 我们将以 fmt 这个流行的格式化库为例,演示如何: 使用 FetchContent 从 GitH…...

分布式增量爬虫实现方案

之前我们在讨论的是分布式爬虫如何实现增量爬取。增量爬虫的目标是只爬取新产生或发生变化的页面,避免重复抓取,以节省资源和时间。 在分布式环境下,增量爬虫的实现需要考虑多个爬虫节点之间的协调和去重。 另一种思路:将增量判…...

C++.OpenGL (14/64)多光源(Multiple Lights)

多光源(Multiple Lights) 多光源渲染技术概览 #mermaid-svg-3L5e5gGn76TNh7Lq {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-3L5e5gGn76TNh7Lq .error-icon{fill:#552222;}#mermaid-svg-3L5e5gGn76TNh7Lq .erro…...

【Redis】笔记|第8节|大厂高并发缓存架构实战与优化

缓存架构 代码结构 代码详情 功能点: 多级缓存,先查本地缓存,再查Redis,最后才查数据库热点数据重建逻辑使用分布式锁,二次查询更新缓存采用读写锁提升性能采用Redis的发布订阅机制通知所有实例更新本地缓存适用读多…...

保姆级【快数学会Android端“动画“】+ 实现补间动画和逐帧动画!!!

目录 补间动画 1.创建资源文件夹 2.设置文件夹类型 3.创建.xml文件 4.样式设计 5.动画设置 6.动画的实现 内容拓展 7.在原基础上继续添加.xml文件 8.xml代码编写 (1)rotate_anim (2)scale_anim (3)translate_anim 9.MainActivity.java代码汇总 10.效果展示 逐帧…...

大模型——基于Docker+DeepSeek+Dify :搭建企业级本地私有化知识库超详细教程

基于Docker+DeepSeek+Dify :搭建企业级本地私有化知识库超详细教程 下载安装Docker Docker官网:https://www.docker.com/ 自定义Docker安装路径 Docker默认安装在C盘,大小大概2.9G,做这行最忌讳的就是安装软件全装C盘,所以我调整了下安装路径。 新建安装目录:E:\MyS…...

【Ftrace 专栏】Ftrace 参考博文

ftrace、perf、bcc、bpftrace、ply、simple_perf的使用Ftrace 基本用法Linux 利用 ftrace 分析内核调用如何利用ftrace精确跟踪特定进程调度信息使用 ftrace 进行追踪延迟Linux-培训笔记-ftracehttps://www.kernel.org/doc/html/v4.18/trace/events.htmlhttps://blog.csdn.net/…...

深入浅出JavaScript中的ArrayBuffer:二进制数据的“瑞士军刀”

深入浅出JavaScript中的ArrayBuffer:二进制数据的“瑞士军刀” 在JavaScript中,我们经常需要处理文本、数组、对象等数据类型。但当我们需要处理文件上传、图像处理、网络通信等场景时,单纯依赖字符串或数组就显得力不从心了。这时&#xff…...

【Linux】使用1Panel 面板让服务器定时自动执行任务

服务器就是一台24小时开机的主机,相比自己家中不定时开关机的主机更适合完成定时任务,例如下载资源、备份上传,或者登录某个网站执行一些操作,只需要编写 脚本,然后让服务器定时来执行这个脚本就可以。 有很多方法实现…...