Linux查看文件内容与处理文件

查看文件内容

1、查看文件类型

file命令: 能够探测文件的内部,并决定文件是什么类型的。

用法:file [path]my_file

my_file如果是目录,file命令会显示 "my_file : directory"。如果是文本文件,会显示"my_file: 文件的字符编码 text"。如果是符号链接的文件,会告诉你它链接到哪个文件上。如果是二进制可执行程序,file命令能够确定该程序编译时所面向的平台以及需要何种类型的库。

2、查看整个文件

⑴ cat 命令

用法:cat [文件列表]

参数:-n 或 --number:由 1 开始对所有输出的行数编号

-v 或 --show-nonprinting:使用 ^ 和 M- 符号,除了 LFD 和 TAB 之外。

-E 或 --show-ends : 在每行结束处显示 $。

-T 或 --show-tabs: 将 TAB 字符显示为 ^I。

-A, --show-all:等价于 -vET。

⑵ more 命令

用法:more [+数字] [-数字] file

以全屏幕的方式按页显示文本文件的内容,如果带上了参数 '+数字' 表示从该行开始显示,参数 '-数字'指定每屏显示的行数。Enter向下滚动一行,空格或f 向下滚动一屏,b向上滚动一屏,q退出。

⑶ less 命令

less指令是基于more指令和vi指令实现的,更可以使用"前后左右"来查看文件内容,用PageUp键向上翻页,用PageDown键向下翻页,=输出文件名和当前行的行号等信息。

在使用less指令查看文件内容时,如果希望不退出less指令就能够执行shell中的其他指令,可以使用 "!command"的方式,直接执行指令,执行结束后自动返回less指令。

指令运行过程中,按"h"键显示less的快捷键帮助。

可以在":"提示符下输入查找的关键字(先输入/,后输入关键字,最后回车),以实现快速定位。

3、查看部分文件

⑴ tail 命令

用于输出文件中的尾部内容。

⑵ head 命令

用法:head [选项] [文件列表]

用于显示文件的开头部分的内容。

参数-n<行数>指定显示头部内容的行数,默认10行;-c<字符数>指定显示头部内容的字符数。

处理文件

1、创建空文件

touch命令:touch new_file

2、过滤文件内容

⑴ grep 命令

用法:grep [选项] [匹配模式] file

按照某种匹配规则搜索指定的文件,并将符合匹配条件的行输出。

选项:-v搜索不含指定字符串的行,-x整行匹配,-c 统计符合匹配模式的行数,-E 用来扩展选项为正则表达式。

⑵ cut 命令

用法:cut [选项] [文件]

指令显示行中指定部分,删除文件中的指定字段。

选项: [-d “分隔符”]指定字段的分隔符,默认的字段分隔符为"TAB"。

[-f 起始字段位置-结束字段位置]显示指定的字段内容,第一个字段就是1。只显示一个字段时,直接写相应的位置即可。

3、统计文件内容

wc命令:wc [选项] [文件列表]

统计文件的行数、单词数和字符数。

选项:-l 打印总行数。

注意:在windows下,文件的最后一行不会自动添加换行符。用wc统计的时候,会发现比实际少了一行。使用换行符‘\n’作为行结束标志,实际是统计换行符个数。

4、对文件内容进行排序

sort命令:sort [选项] [文件列表]

-c检查文件是否已经按照顺序排序;

-n按照数值的大小排序;

-o<输出文件>:将排序后的结果存入指定的文件;

-t<分隔字符>:指定排序时所用的栏位(列)分隔字符(如果分隔字符是制表符,放在字符串中时,正常写即可,否则,在前面加上$);

-r是以相反顺序;

-u在输出行中去除重复行(只考虑用来排序的行);

-b会忽略每一行前面的所有空白部分,从第一个可见字符开始比较;

-k<start,end>:指定需要排序的列,start和end都是数字,start又分为3个部分(选项[bdfinr]、排序列、开始的位置),end默认到本域结束。-k可以出现多次,代表多列排序(第一个是主排序)。数字列如1.2表示对第一个域的第二个字符开始到本域的最后一个字符为止的字符串进行排序;1.2,1.2表示只按第一个域的第二个字符进行排序;

sort将文件/文本的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出

————————————————

本文为CSDN博主「鹏鹏俊玲」的原创文章

原文链接:https://blog.csdn.net/qq_29837161/article/details/85473423

Linux查看文件内容与处理文件的更多相关文章

  1. linux中合并多个文件内容到一个文件的例子

    尊敬的用户您好,从即日起 导入 及 导出 功能已经下线,请到阿里云官方数据库管理平台 iDB Cloud 使用该功能! 继续在 iDB Cloud 中发现导出的数据库文件是按照每个表生成的SQL文件, ...

  2. 用C#Winform写个简单的批量清空文件内容和删除文件的小工具

    用C#Winform写个简单的批量清空文件内容和删除文件的小工具 本文介绍这个简单得不能再简单的小项目.做这个项目,有以下目的. 1 当然是做个能用的工具 2 学习使用Github 关于用VS2013 ...

  3. 怎么编辑PDF文件内容,PDF文件编辑方法

    怎样编辑PDF文件内容?这是一个常常困扰我们的问题,工作当中我们经常会收到PDF格式的文件,但有时的文件内容不是我们想要的或者是觉得不合理的需要改掉.但是每次有这样的问题时都没有什么好的解决方法,每次 ...

  4. Linux查看文件内容和压缩文件命令

    查看文件内容 一些重要的目录: /usr/share/    帮助文档.说明文档/var/log/       日志/var/run/       运行中程序/var/tmp       临时文件 根 ...

  5. linux查看文件内容跳到文件底部和回到文件顶部的快捷键

    有时候需要查看一些日志文件,然后要从底部开始查看的话 可以按 shift+g  即可跳到文件底部 要返回文件顶部的时候 按 gg即可

  6. 【HDFS API编程】查看HDFS文件内容、创建文件并写入内容、更改文件名

    首先,重点重复重复再重复: /** * 使用Java API操作HDFS文件系统 * 关键点: * 1)创建 Configuration * 2)获取 FileSystem * 3)...剩下的就是 ...

  7. Linux批量清理多个文件内容而不删除文件

    清理单个文件,可以这样:echo > myLog.log 但是,如果我要清理一堆文件,比如在/logs目录下面的所有以.log结尾的文件的内容,而不删除文件,该如何操作呢? 我一开始的语句是这样 ...

  8. 【python小练】0017-将xls文件内容写入xml文件中

    第 0017 题: 将 第 0014 题中的 student.xls 文件中的内容写到 student.xml 文件中,如 下所示: <?xml version="1.0" ...

  9. JAVA 创建TXT文件,写入文件内容,读取文件内容

    [java]  view plain copy   package com.abin.facade.ws.mail.function; import java.io.BufferedReader; i ...

  10. java文件相关(文件追加内容、文件内容清空、文件内容读取)

    https://blog.csdn.net/xnz0616/article/details/39137177 1.文件内容追加 // 在已有的文件后面追加信息 public static void a ...

随机推荐

  1. lottie 动画在 vue 中的使用

    前言 最近我所负责的项目中,我采用了动画效果,并开始使用 gif 来实现.然而,在实践过程中,我发现 gif 格式的动画在 git 中出现了明显的锯齿感,这让我非常困扰.为了追求更完美的表现效果,我最 ...

  2. ACTF flutter逆向学习

    参考了许多大佬的博客,在此特别诚挚感谢oacia大佬和其他大佬的博客和指导! 1.flutter和apk基础结构介绍 首先下载附件,是一个apk文件,用jadx打开 可以看见flutter字样,而fl ...

  3. Python——第四章:生成器(Generators)

    生成器(generator):    生成器的本质就是迭代器 创建生成器的两种方案:        1. 生成器函数        2. 生成器表达式 生成器函数        生成器函数中有一个关键 ...

  4. Zabbix自带模板监控MySQL服务

    Zabbix的服务端与客户端的安装这里不再赘述了,前面也有相应的文章介绍过了,感兴趣的伙伴们可以看看历史文章就可以了,今天主要介绍下如何利用zabbix自带的模板来监控MySQL服务的一些状态,同时通 ...

  5. [P2416 泡芙] 题解报告

    题目链接:P2416 泡芙 简化题意 给定一个无向图 \(G\),每条边有边权 \(0 / 1\),现给定 \(m\) 组询问,每次询问形如 \(s, t\),问是否可以从 \(s\) 走到 \(t\ ...

  6. C# 成为2023年度编程语言之王

    原文发表在公众号 腾讯云开发者:https://mp.weixin.qq.com/s/5owE5hmJVkwOLJrKMXfR6Q 导读 2023 TIOBE 年度编程语言正式揭晓,C# 在陪跑多年后 ...

  7. 调用含有header的WebService时,跳过证书验证

    最近在做Webservice的接口调用,header的用户名和密码都是正确的,地址也是对的,但一直提示:基础连接已关闭,未能与SSL/TLS安全通道建立信任关系. 解决方案: 请求之前加上下面得代码即 ...

  8. CUDA C编程权威指南:1-基于CUDA的异构并行计算

      什么是CUDA?CUDA(Compute Unified Device Architecture,统一计算设备架构)是NVIDIA(英伟达)提出的并行计算架构,结合了CPU和GPU的优点,主要用来 ...

  9. 一文带你了解Web前端发展历程

    摘要:自互联网行业发展以来,web前端不断发展变化着.在前人的基础上,后人有幸能够站在前人的肩膀上行走.前端的发展变化不仅是继承式的迭代,同时也是不断的变革和创造. 一.前端到底是个什么? 简单点说, ...

  10. 懂分析、会预测,你见过这样的华为云DAS吗?

    摘要:数字化时代下,华为云数据管理服务DAS基于AI技术,于近期推出了智能SQL分析(包括慢SQL发现.SQL透视).workload级别索引推荐.存储空间预测等运维特性,加上原有的数据库运维能力,构 ...