Linux查看文件的行数,字数,字节数
介绍
在Linux系统中这统计非常方便,只需要简单的几个命令就可以搞定,这个命令就是 wc。
wc --help
用法:wc [选项]... [文件]...或:wc [选项]... --files0-from=F
输出每个指定文件的行数、单词计数和字节数,如果指定了
多于一个文件,继续给出所有相关数据的总计。如果没有指定
文件,或者文件为"-",则从标准输入读取数据。-c, --bytes 输出字节数统计-m, --chars 输出字符数统计-l, --lines 输出行数统计--files0-from=文件 从指定文件读取以NUL 终止的名称,如果该文件被指定为"-"则从标准输入读文件名-L, --max-line-length 显示最长行的长度-w, --words 显示单词计数--help 显示此帮助信息并退出--version 显示版本信息并退出
使用实例
- 获取文件行数
wc -l app.log
30000 app.log
- 获取文件单词数
wc -w app.log
30000 app.log
- 获取文件字节数
wc -c app.log
3000 app.log
grep
查询文件的行数或字数只是个简单的需求场景,有时候我们其实是要获取多少匹配关键字的行数,那么这种情况如何实现呢,这种情况我们需要使用另外一个grep命令来配置wc来完成我们的需求场景。
lennlouis@dpdk-vm:~$ grep --help
Usage: grep [OPTION]... PATTERNS [FILE]...
Search for PATTERNS in each FILE.
Example: grep -i 'hello world' menu.h main.c
PATTERNS can contain multiple patterns separated by newlines.Pattern selection and interpretation:-E, --extended-regexp PATTERNS are extended regular expressions-F, --fixed-strings PATTERNS are strings-G, --basic-regexp PATTERNS are basic regular expressions-P, --perl-regexp PATTERNS are Perl regular expressions-e, --regexp=PATTERNS use PATTERNS for matching-f, --file=FILE take PATTERNS from FILE-i, --ignore-case ignore case distinctions in patterns and data--no-ignore-case do not ignore case distinctions (default)-w, --word-regexp match only whole words-x, --line-regexp match only whole lines-z, --null-data a data line ends in 0 byte, not newlineMiscellaneous:-s, --no-messages suppress error messages-v, --invert-match select non-matching lines-V, --version display version information and exit--help display this help text and exitOutput control:-m, --max-count=NUM stop after NUM selected lines-b, --byte-offset print the byte offset with output lines-n, --line-number print line number with output lines--line-buffered flush output on every line-H, --with-filename print file name with output lines-h, --no-filename suppress the file name prefix on output--label=LABEL use LABEL as the standard input file name prefix-o, --only-matching show only nonempty parts of lines that match-q, --quiet, --silent suppress all normal output--binary-files=TYPE assume that binary files are TYPE;TYPE is 'binary', 'text', or 'without-match'-a, --text equivalent to --binary-files=text-I equivalent to --binary-files=without-match-d, --directories=ACTION how to handle directories;ACTION is 'read', 'recurse', or 'skip'-D, --devices=ACTION how to handle devices, FIFOs and sockets;ACTION is 'read' or 'skip'-r, --recursive like --directories=recurse-R, --dereference-recursive likewise, but follow all symlinks--include=GLOB search only files that match GLOB (a file pattern)--exclude=GLOB skip files that match GLOB--exclude-from=FILE skip files that match any file pattern from FILE--exclude-dir=GLOB skip directories that match GLOB-L, --files-without-match print only names of FILEs with no selected lines-l, --files-with-matches print only names of FILEs with selected lines-c, --count print only a count of selected lines per FILE-T, --initial-tab make tabs line up (if needed)-Z, --null print 0 byte after FILE nameContext control:-B, --before-context=NUM print NUM lines of leading context-A, --after-context=NUM print NUM lines of trailing context-C, --context=NUM print NUM lines of output context-NUM same as --context=NUM--color[=WHEN],--colour[=WHEN] use markers to highlight the matching strings;WHEN is 'always', 'never', or 'auto'-U, --binary do not strip CR characters at EOL (MSDOS/Windows)When FILE is '-', read standard input. With no FILE, read '.' if
recursive, '-' otherwise. With fewer than two FILEs, assume -h.
Exit status is 0 if any line (or file if -L) is selected, 1 otherwise;
if any error occurs and -q is not given, the exit status is 2.Report bugs to: bug-grep@gnu.org
GNU grep home page: <http://www.gnu.org/software/grep/>
General help using GNU software: <https://www.gnu.org/gethelp/>
- 查询文件中单词的行数
grep 'hello' app.log | wc -l
相关文章:
Linux查看文件的行数,字数,字节数
介绍 在Linux系统中这统计非常方便,只需要简单的几个命令就可以搞定,这个命令就是 wc。 wc --help 用法:wc [选项]... [文件]...或:wc [选项]... --files0-fromF 输出每个指定文件的行数、单词计数和字节数,如果指定…...
【IO】文件操作
🥰🥰🥰来都来了,不妨点个关注叭! 👉博客主页:欢迎各位大佬!👈 文章目录 1. 文件1.1 认识文件1.2 分清操作的是内存还是硬盘1.3 路径1.3.1 目录结构1.3.2 相对和绝对路径 1.4 文本文件…...
代码随想录算法训练营第74天:路径总结[1]
代码随想录算法训练营第74天:路径总结 A * 算法精讲 (A star算法) 卡码网:126. 骑士的攻击(opens new window) 题目描述 在象棋中,马和象的移动规则分别是“马走日”和“象走田”。现给定骑士的起始坐标和目标…...
用 Emacs 写代码有哪些值得推荐的插件
以下是一些用于 Emacs 写代码的值得推荐的插件: Ido-mode:交互式操作模式,它用列出当前目录所有文件的列表来取代常规的打开文件提示符,能让操作更可视化,快速遍历文件。Smex:可替代普通的 M-x 提示符&…...
自定义注解-手机号验证注解
注解 package com.XX.assess.annotation;import com.XX.assess.util.MobileValidator;import javax.validation.Constraint; import javax.validation.Payload; import java.lang.annotation.*;/*** 手机号校验注解* author super*/ Retention(RetentionPolicy.RUNTIME) Targe…...
华为od-C卷200分题目5 -项目排期
华为od-C卷200分题目5 -项目排期 题目描述 项目组共有N个开发人员,项目经理接到了M个独立的需求,每个需求的工作量不同,且每个需求只能由一个开发人员独立完成,不能多人合作。 假定各个需求之间无任何先后依赖关系,请…...
如何使用Pip从Git仓库安装Python包:深入探索远程依赖管理
如何使用Pip从Git仓库安装Python包:深入探索远程依赖管理 Python的包管理工具Pip使得安装和管理Python库变得非常简单。有时,我们需要安装那些尚未发布到PyPI的包,或者想要尝试最新的开发版本。这时,可以直接从Git仓库安装包。本…...
计算机专业怎么选择电脑
现在高考录取结果基本已经全部出来了,很多同学都如愿以偿的进入到了计算机类专业,现在大部分同学都在为自己的大学生活做准备了,其中第一件事就是买电脑,那计算机类专业该怎么选择电脑呢? 计算机专业是个一类学科&…...
当前国内可用的docker加速器搜集 —— 筑梦之路
可用镜像加速器 以下地址搜集自网络,仅供参考,请自行验证。 1、https://docker.m.daocloud.io2、https://dockerpull.com3、https://atomhub.openatom.cn4、https://docker.1panel.live5、https://dockerhub.jobcher.com6、https://hub.rat.dev7、http…...
【腾讯内推】腾讯2025校招/青云计划/社招——长期有效
及时跟进进度,保证不让简历石沉大海! 涵盖NLP/CV/CG/ML/多模态/数据科学/多媒体等各方向! 定向匹配优质团队/竞争力薪酬/覆盖全球工作地点! 招聘对象: 本硕博:2024年1月-2025年12月毕业的同学 目前最热岗位: 技术研究-自然语言处理 技术研究-计算机视觉 …...
集群限流sentinel实践
参考: 集群模式 实践 集群流控规则 其中 用一个专门的 ClusterFlowConfig 代表集群限流相关配置项,以与现有规则配置项分开: // 全局唯一的规则 ID,由集群限流管控端分配. private Long flowId;// 阈值模式,默认&…...
Flutter-实现双向PK进度条
如何实现一个双向PK进度条 在Flutter应用中,进度条是一个非常常见的组件。而双向PK进度条则能够展示两个对立的数值,如对战中的双方得分对比等。本文将介绍如何实现一个具有双向PK效果的进度条,并支持竖直和斜角两种过渡效果。 1. 需求 我…...
unix高级编程系列之文件I/O
背景 作为linux 开发者,我们不可避免会接触到文件编程。比如通过文件记录程序配置参数,通过字符设备与外设进行通信。因此作为合格的linux开发者,一定要熟练掌握文件编程。在文件编程中,我们一般会有两类接口函数:标准…...
PySide(PyQt),记录最后一次访问文件的路径
1、在同目录下用文本编辑器创建JSON文件,命名为setting.json,并输入以下内容后保存: { "setting": { "last_file": [ "" ] } } 2、应用脚本: import json …...
wordpress企业网站模板免费下载
大气上档次的wordpress企业模板,可以直接免费下载,连注册都不需要,网盘就可以直接下载,是不是嘎嘎给力呢 演示 https://www.jianzhanpress.com/?p5857 下载 链接: https://pan.baidu.com/s/1et7uMYd6--NJEWx-srMG1Q 提取码:…...
[leetcode hot 150]第一百一十七题,填充每个节点的下一个右侧节点
题目: 给定一个二叉树: struct Node {int val;Node *left;Node *right;Node *next; } 填充它的每个 next 指针,让这个指针指向其下一个右侧节点。如果找不到下一个右侧节点,则将 next 指针设置为 NULL 。 初始状态下&#x…...
Docker 入门篇(十 一)-- 网络配置总结
Docker 容器技术的核心优势之一是其轻量级的虚拟化和隔离性,而 Docker 网络则是实现容器间以及容器与外界通信的关键。以下是对 Docker 网络的关键知识点的总结。 一、 Docker 网络概述 Docker 网络允许容器进行相互通信以及与外部网络的连接。Docker 提供了多种网…...
【Android面试八股文】Android 有哪些存储数据的方式?
在Android平台上,有多种方式可以存储数据,每种方式都适合不同类型的数据和使用场景。以下是主要的存储数据方式: SharedPreferences(轻量级数据存储): SharedPreferences是用于存储简单键值对数据的最简单方法,适合存储用户偏好设置、配置信息等。数据以XML文件形式存储…...
3. train_encoder_decoder.py
train_encoder_decoder.py #__future__ 模块提供了一种方式,允许开发者在当前版本的 Python 中使用即将在将来版本中成为标准的功能和语法特性。此处为了确保代码同时兼容Python 2和Python 3版本中的print函数 from __future__ import print_function # 导入标准库…...
Hyper-V克隆虚拟机教程分享!
方法1. 使用导出导入功能克隆Hyper-V虚拟机 导出和导入是Hyper-V服务器备份和克隆的一种比较有效的方法。使用此功能,您可以创建Hyper-V虚拟机模板,其中包括软件、VM CPU、RAM和其他设备的配置,这有助于在Hyper-V中快速部署多个虚拟机。 在…...
【adb端口5555】烽火hg680系列安卓9线刷全攻略:告别强制升级与花屏困扰
1. 烽火HG680系列机顶盒的痛点与解决方案 最近在折腾烽火HG680-GY和HG680-GC这两款机顶盒的朋友应该都深有体会,官方系统用着用着就会弹出强制升级提示,有时候还会莫名其妙出现花屏问题。作为一个折腾过不下20台烽火盒子的老玩家,我太理解这种…...
3个核心革新让英雄联盟玩家彻底告别繁琐游戏操作
3个核心革新让英雄联盟玩家彻底告别繁琐游戏操作 【免费下载链接】League-Toolkit 兴趣使然的、简单易用的英雄联盟工具集。支持战绩查询、自动秒选等功能。基于 LCU API。 项目地址: https://gitcode.com/gh_mirrors/le/League-Toolkit 在快节奏的英雄联盟对局中&#…...
2024 0xGame Web安全挑战:从SQLite注入到RCE实战解析
1. SQLite注入基础与实战技巧 SQLite作为轻量级数据库,在CTF题目中经常出现。与MySQL注入相比,SQLite少了information_schema等常用表,但核心注入逻辑相通。以2024 0xGame的ez_sql题为例,我们来看具体操作: 闭合方式差…...
提示工程架构师经验总结:Agentic AI环保项目从失败到成功的关键转折点
提示工程架构师经验总结:Agentic AI环保项目从失败到成功的关键转折点 一、引言:那些“死在落地路上”的环保AI 你知道吗? 全球每年有800万吨塑料流入海洋,相当于每秒钟往海里倒一辆卡车的垃圾;中国城市生活垃圾年清运量超过3亿吨,但仅有**23%**的垃圾得到规范分拣——…...
Pixelorama扩展深度解析:3种自动化精灵图切割方案对比
Pixelorama扩展深度解析:3种自动化精灵图切割方案对比 【免费下载链接】Pixelorama A free & open-source 2D sprite editor, made with the Godot Engine! Available on Windows, Linux, macOS and the Web! 项目地址: https://gitcode.com/gh_mirrors/pi/Pi…...
基于SpringBoot的租车系统毕设实战:从需求建模到高可用部署
最近在辅导学弟学妹做毕业设计,发现很多“基于SpringBoot的租车系统”项目,虽然功能列表很长,但仔细一看,架构松散,业务逻辑像面条代码,更别提应对真实场景下的并发问题了。今天,我就结合自己做…...
抖音无水印视频批量下载器:从零开始的高效内容采集指南
抖音无水印视频批量下载器:从零开始的高效内容采集指南 【免费下载链接】douyin-downloader 项目地址: https://gitcode.com/GitHub_Trending/do/douyin-downloader 你是否曾遇到过这样的困境?想要保存抖音上的精彩视频用于学习参考,…...
ESP32远程识别模块完整指南:如何实现无人机合规飞行
ESP32远程识别模块完整指南:如何实现无人机合规飞行 【免费下载链接】ArduRemoteID RemoteID support using OpenDroneID 项目地址: https://gitcode.com/gh_mirrors/ar/ArduRemoteID 随着全球无人机法规日益严格,FAA和欧盟都要求无人机必须配备专…...
DeepSeek-R1-Distill-Qwen-7B功能体验:Ollama部署后,实测推理速度提升3倍
DeepSeek-R1-Distill-Qwen-7B功能体验:Ollama部署后,实测推理速度提升3倍 1. 模型背景与核心优势 1.1 模型技术背景 DeepSeek-R1-Distill-Qwen-7B是华为昇腾与阿里达摩院技术协作的产物,通过知识蒸馏技术将DeepSeek-R1(660B参数…...
Matlab粒子动画:3D爱心生成与动态模拟
1. 从零开始理解Matlab粒子动画 第一次看到3D爱心在屏幕上跳动时,那种震撼感至今难忘。作为理工科学生,我们常常用Matlab处理枯燥的数据,但很少有人知道它还能创作出如此浪漫的视觉效果。这就像用计算器弹钢琴——工具本身没有情感࿰…...
