Linux文件管理(下)

上上篇介绍了Linux文件管理的上部分内容,这次继续将 Linux文件管理的剩余部分说完。内容如下。
在这里插入图片描述

一、查看文件内容

1、cat 命令

1.1 输出文件内容

基本语法:

cat 文件名称

主要功能:正序输出文件的内容。
eg:输出 readme.txt文件的内容(正序)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1.2 合并多个文件内容

基本语法:

cat 文件名称1 文件名称2 ... > 合并后的文件名称

主要功能:把文件名称1、文件名称2、…中的内容合并到一个文件中

案例:将1.txt和 2.txt文件内容合并后,输出到 3.txt

cat 1.txt 2.txt > 3.txt

特别注意:cat 命令用于查看文件内容时,不论文件内容有多少,都会一次性显示。如果文件非常大,那么文件开头的内容就看不到了。cat 命令适合查看不太大的文件

2、tac 命令

基本语法:

tac 文件名称

主要功能:倒序输出文件的内容
eg:输出 readme.txt文件的内容(倒序)

在这里插入图片描述

3、head 命令

基本语法:

head -n 文件名称

功能:查看一个文件的前n行,如果不指定n ,则默认显示前10行
案例1:查询 readme.txt 文件中的前10行

head readme.txt

案例2:查询 readme.txt 文件中的前3行

head -3 readme.txt

在这里插入图片描述

4、tail 命令

基本语法:

tail -n 文件名称

主要功能:查看一个文件的最后n行,如果不指定n ,则默认显示最后10行

案例1:查询 linux.txt文件的最后10行

tail linux.txt

案例2:查询 linux.txt文件的最后3行

tail -3 linux.txt

5、tail -f 命令

基本语法:

tail -f 文件名称

主要功能:动态查看一个文件内容的输出信息 (主要用于将来查询日志文件的变化)

案例:查询系统的 /var/log/messages文件的日志信息

tail -f /var/log/messages

在这里插入图片描述

注:退出方式可以直接按快捷键: Ctrl+C ,中断操作

6、more分屏显示文件内容(了解)

基本语法:

more 文件名称

eg:分屏显示 anaconda-ks.cfg文件内容

more anaconda-ks.cfg

在这里插入图片描述

more命令拥有一些交互功能,可以通过快捷键来操作这个more的阅读器。
在这里插入图片描述

特别注意: more命令在加载文件时并不是一点一点进行加载,而是打开文件时就已经把文件的全部内容加载到内存中了。如果打开文件较大,则可能会出现卡顿情况。

more在读取文件时,默认已经加载文件的全部内容。

早期more命令没有现在这么强大,其只能前进不能后退。

7、less分屏显示文件内容(重点)

基本语法:

less 文件名称

在这里插入图片描述

特别注意:less命令不是加载整个文件到内存,而是一点一点进行加载,相对而言,读取大文件时,效率比较高

另外: less可以通过上下方向键显示上下内容,退出时不会在Shell中留下刚显示的内容

less 命令的执行也会打开一个交互界面(常用交互命令和more类似)

cat、more、less三者的对比
在这里插入图片描述

二、统计文件信息

1、wc命令

基本语法:

wc [选项] 文件名称
选项说明:
-l :表示lines, 行数(以回车/换行符为标准)
-W :表示words, 单词数依照空格来判断单词数量
-C :表示bytes, 字节数〈空格,回车,换行)

案例1 : 统计 linux.txt文件的总行数

wc -l linux.txt

案例2 : 统计 linux.txt文件中的单词数

wc -w linux.txt

案例3 : 统计文件的字节数(注意包括 空格,回车,换行)

wc -c linux.txt

在这里插入图片描述

扩展: wc [选项] 文件的名称,可以统计一个文件的信息,实际情况下,选项还可以一起使用

案例4 : 统计一个文件的总行数、总单词数以及总字节数

wc -wlc linux.txt
或
wc -lwc linux.txt
或
wc -clw linux.txt

在这里插入图片描述

2、du 命令

基本语法:

du [选项] 统计的文件或文件夹
选项说明:
-s : summaries, 只显示汇总的大小,统计文件夹的大小
-h : 以较高的可读性显示文件或文件夹的大小 (KB/MB/GB/TB)

主要功能 : 查看文件或目录(会递归显示子目录) 占用磁盘空间大小

案例1 : 显示 readme.txt文件的大小 (占用磁盘空间,不显示文件大小的单位)

du readme.txt

案例2 : 显示 readme.txt文件的大小(占用磁盘空间,显示文件大小的单位)

du -h readme.txt

案例3 : 统计 wechat文件夹的大小

du -sh wechat

案例4 : 统计 /etc目录的大小

du -sh /etc

在这里插入图片描述

三、文件处理命令

1、find 命令

基本语法:

find 搜索路径 [选项]
选项说明:
-name:指定要搜索文件的名称,支持*星号通配符
-type:代表搜索的文件类型,f代表普通文件,d代表文件夹=>加快检索速度

功能:当我们查找一个文件时,必须使用的一个命令。
案例1:搜索 /var目录中 boot.log文件(普通文件)

find /var -name "boot.log" -type f

案例2:全盘搜索ssh目录

find / -name "ssh" -type d 

当出现与查找条件相符合的结果不止一个时,可以采用全盘搜索,以查找出所有符合条件的结果。

注:实际工作时,尽量减少全盘检索,因为全盘搜索比较消耗资源

扩展:find实现模糊查询(必须结合通配符)

案例3:搜索 /var/log目录下的所有的以".log"结尾的文件信息

find /var/log -name "*.log" -type f

在这里插入图片描述

* :通配符,代表任意个任意字符。如*.log代表以.log结尾的文件,apache*代表搜索以apache开头的文件信息。

2、grep命令

基本语法:

grep [选项] 要搜索的关键词 搜索的文件名称
选项说明:
-n :代表显示包含关键词的行号信息

单位:行

主要功能:在文件中直接找到包含指定关键词的那些行,并把这些信息高亮显示出来

案例1:在initial-setup-ks.cfg文件中搜索包含关键词"network"的行

grep network initial-setup-ks.cfg

案例2:在 initial-setup-ks.cfg文件中搜索包含关键词"network"的行,然后显示行号信息

grep -n network initial-setup-ks.cfg

扩展语法:

grep 要搜索的关键词 多个文件的名称

主要功能:在多个文件中查找包含指定关键词的那些行,并高亮显示出来

案例3:搜索 /var/log目录下所有文件,找到包含关键词"network"的所有行信息

grep network /var/log/*

在这里插入图片描述

3、echo命令

基本语法:

echo "文本内容"

主要功能:在终端中输入指定的文本内容

案例:在终端中,输出hello world字符串

echo "hello world"

4、输出重定向

场景:一般命令的输出都会显示在终端中,有些时候需要将一些命令的执行结果想要保存到文件中进行后续的分析/统计,则这时候需要使用到的输出重定向技术。

> :标准输出重定向 : 覆盖输出,会覆盖掉原先的文件内容

>>:追加重定向 : 追加输出,不会覆盖原始文件内容,会在原始内容末尾继续添加

案例1:把 echo输出的 "hello world"写入到 readme.txt文件中

echo "hello world" > readme.txt

以上程序的主要功能代表把echo命令的执行结果,输出写入到 readme.txt文件中,如果 readme.txt文件中存在内容,则首先清空,然后再写入hello world

案例2:把 echo输出的"hello linux"写入到 readme.txt,要求不能覆盖原来的内容

echo "hello linux" >> readme.txt

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

《幻兽帕鲁》1月29日游戏服务器推荐!腾讯云降低规格再次降价!

腾讯29日刷新规格,从14M降低到12M,硬盘和流量都有降低,但价格打下来了!价格从66元/月降低到32元/月,277元/3个月降低到96元/3个月! 三大厂商4核16G的云服务器价格对齐,不过具体参数略有不同 阿里…

w24文件上传之PHP伪协议

PHP支持的伪协议 file:// - 访问本地文件系统 http:// - 访问网址 ftp:// - 访问文件 php:// -访问各个输入/输出流 zlib:// -压缩流 data:// - 数据 glob:// -查找匹配的文件路径模式 phar:// - php归档 ssh2:// - Secure shell 2 rar:// - RAR ogg:// - 音频流 expect:// - …

力扣(LeetCode)227. 基本计算器 II

给你一个字符串表达式 s ,请你实现一个基本计算器来计算并返回它的值。 整数除法仅保留整数部分。 你可以假设给定的表达式总是有效的。所有中间结果将在 [-231, 231 - 1] 的范围内。 注意:不允许使用任何将字符串作为数学表达式计算的内置函数&#…

还能这样学Linux内核,非我族类!

哈喽,我是子牙,一个很卷的硬核男人。深入研究计算机底层、Windows内核、Linux内核、Hotspot源码……聚焦做那些大家想学没地方学的课程 今天的互联网江湖,受大环境影响,已经不似前些年那般朝气蓬勃,裁员严重&#xff…

C#简单使用Yolov5的Onnx格式模型进行目标检测

背景 最近要离职了,同事需要了解一下C#如何使用yolov5系列onnx格式模型进行目标检测,由于其对C#不熟练,可能会影响公司后续的开发进度,所以趁着还在,赶紧把手尾搞好。 方案 1、创建一个C# DotNet 8 控制台项目[可千…

Phoncent博客GPT写作工具

对于许多人来说,写作并不是一件轻松的事情。有时候,我们可能会遇到写作灵感枯竭、写作思路混乱、语言表达困难等问题。为了解决这些问题,Phoncent博客推出了一款创新的工具——GPT写作工具,它利用了GPT技术,为用户提供…

EasyCVR视频智能监管系统方案设计与应用

随着科技的发展,视频监控平台在各个领域的应用越来越广泛。然而,当前的视频监控平台仍存在一些问题,如视频质量不高、监控范围有限、智能化程度不够等。这些问题不仅影响了监控效果,也制约了视频监控平台的发展。 为了解决这些问…

Kafka-服务端-GroupMetadataManager

GroupMetadataManager是GroupCoordinator中负责管理Consumer Group元数据以及其对应offset信息的组件。 GroupMetadataManager底层使用Offsets Topic,以消息的形式存储Consumer Group的GroupMetadata信息以及其消费的每个分区的offset,如图所示。 consumer_offsets的某Partiti…

解决ESP32板载WS2812B LED反色问题及工作状态灯的应用

本文主要介绍使用.Net nanoFramework驱动驱动 ESP32-S3-Zero 板载的 WS2812B LED的问题,以及如何设计一个灯光控制类,来方便的使用工作状态灯来显示设备的工作状态。 1. 引言 在使用Net nanoFramework驱动 ESP32-S3-Zero 的板载 WS2812B LED 时&#xf…

OpenDataLab 大模型训练数据集下载记录

1、访问网站:OpenDataLab 引领AI大模型时代的开放数据平台 (操作之前需要先注册登录) 2、点击数据类型,点击某个数据集进入,会看到数据集的各种详细信息如下图: 3、点击cli下载,第一次进入点击…

每日一题——LeetCode1365.有多少小于当前数字的数字

方法一 暴力循环 对于数组里的没一个元素都遍历一遍看有多少元素小于当前元素 var smallerNumbersThanCurrent function(nums) {let n nums.length;let ret [];for (let i 0; i < n; i) {let count 0;for (let j 0; j < n; j) {if (nums[j] < nums[i]) {count…

Docker 安装与基本操作

目录 一、Docker 概述 1、Docker 简述 2、Docker 的优势 3、Docker与虚拟机的区别 4、Docker 的核心概念 1&#xff09;镜像 2&#xff09;容器 3&#xff09;仓库 二、Docker 安装 1、命令&#xff1a; 2、实操&#xff1a; 三、Docker 镜像操作 1、命令&#xff1…

【算法与数据结构】139、LeetCode单词拆分

文章目录 一、题目二、解法三、完整代码 所有的LeetCode题解索引&#xff0c;可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析&#xff1a;本题可以看做一个动态规划问题。其中&#xff0c;字符串s是背包&#xff0c;而字典中的单词就是物品。…

如何使用Docker部署WBO白板并实现公网地址远程访问

本文主要是如何使用Docker部署WBO白板并实现公网地址远程访问的文章&#xff0c;如果有什么需要改进的地方还请大佬指出⛺️ &#x1f3ac;作者简介&#xff1a;大家好&#xff0c;我是青衿&#x1f947; ☁️博客首页&#xff1a;CSDN主页放风讲故事 &#x1f304;每日一句&am…

AcWing 895. 最长上升子序列(DP序列模型)

[题目概述] 给定一个长度为 N 的数列&#xff0c;求数值严格单调递增的子序列的长度最长是多少。 输入格式 第一行包含整数 N。 第二行包含 N 个整数&#xff0c;表示完整序列。 输出格式 输出一个整数&#xff0c;表示最大长度。 数据范围 1 ≤ N ≤ 1000 &#xff0c; …

《HTML 简易速速上手小册》第1章:HTML 入门(2024 最新版)

文章目录 1.1 HTML 简介与历史&#xff08;&#x1f609;&#x1f310;&#x1f47d;踏上神奇的网页编程之旅&#xff09;1.1.1 从过去到现在的华丽蜕变1.1.2 市场需求 —— HTML的黄金时代1.1.3 企业中的实际应用 —— 不只是个网页1.1.4 职业前景 —— 未来属于你 1.2 基本 H…

HDFS Federation前世今生

一 背景 熟悉大数据的人应该都知道&#xff0c;HDFS 是一个分布式文件系统&#xff0c;它是基于谷歌的GFS实现的开源系统&#xff0c;设计目的就是提供一个高度容错性和高吞吐量的海量数据存储解决方案。在经典的HDFS架构中有2个NameNode和多个DataNode&#xff0c;如下 从上面…

Vue-Cli3 - 从安装 nodejs 配置环境 ~ 搭建 cli 脚手架项目全过程

目录 前言提示 一、安装 & 配置 nodejs 1.1、安装 nodejs 1.2、配置必要目录 1.3、配置环境变量 1.4、测试 安装&配置 是否成功 1.5、安装淘宝镜像 1.5、cnpm 安装&#xff08;推荐安装&#xff09; 二、vue-cli3 创建项目 2.1、vue-cli2 和 vue-cli3 主要区…

RBD —— 不同材质破碎

目录 Working with concrete Chipping Details Proxy geometry Constraints Working with glass Chipping Proxy geometry Constraints Resolving issues with glass fracturing Working with wood Clustering Using custom cutters Working with concrete Concr…

【STM32F103单片机】利用ST-LINK V2烧录程序 面包板的使用

1、ST‐LINK V2安装 参考&#xff1a; http://t.csdnimg.cn/Ulhhq 成功&#xff1a; 2、烧录器接线 背后有标识的引脚对应&#xff1a; 3、烧录成功 烧录成功后&#xff0c;按下核心板的RESET键复位&#xff01;&#xff01;&#xff01;即可成功&#xff01; 4、面包板的…