Linux 中如何查看文件的行数,字数,字节数

Linux 中如何查看文件的行数,字数,字节数,第1张

在 Linux 系统使用中,我们经常需要查看或统计文本文件中的行数,字数,字节数等内容,那么怎么快捷的统计出文件中这些关键数据呢。

在Linux系统中这统计非常方便,只需要简单的几个命令就可以搞定,这个命令就是 wc 。

首先我们介绍下 wc 这个命令:

帮助说明中简介明白的介绍了 wc 的用法,我们来举例说明下:

1、获取文件中行数

2、获取文件中单词数

3、获取文件中字节

是不是很简单呢。

查询文件的行数或字数只是个简单的需求场景,有时候我们其实是要获取多少匹配关键字的行数,那么这种情况如何实现呢,这种情况我们需要使用另外一个 grep 命令来配置 wc 来完成我们的需求场景。

首先我们看看grep这个命令:

我们通过如下命令方式来实现查询匹配到关键字'error'中文件行数。

是不是很简单,如果希望了解更多,不妨通过 man 命令来查看你想了解的命令吧。

linux输出文件有几列可以使用 cat filename | awk '{print NF}' 命令可以得到每一行对应有多少列。

例如文件a.txt的内容为:

你好  北京  天安门

1 2 3 4

1 2 3 4 5

输入并执行cat a.txt | awk '{print NF}' 得出以下结果:

3

4

5

输出结果分别代表第一行有3列,第二行有4列,第三行有5列。

1、Linux是一套免费使用和自由传播的类Unix *** 作系统,是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的 *** 作系统。伴随着互联网的发展,Linux得到了来自全世界软件爱好者、组织、公司的支持。

它除了在服务器 *** 作系统方面保持着强劲的发展势头以外,在个人电脑、嵌入式系统上都有着长足的进步。使用者不仅可以直观地获取该 *** 作系统的实现机制,而且可以根据自身的需要来修改完善这个 *** 作系统,使其最大化地适应用户的需要。

2、AWK是一个优良的文本处理工具,Linux及Unix环境中现有的功能最强大的数据处理引擎之一。这种编程及数据 *** 作语言的最大功能取决于一个人所拥有的知识。awk经过改进生成的新的版本nawk,gawk,现在默认linux系统下日常使用的是gawk,用命令可以查看正在应用的awk的来源(ls -l /bin/awk )

扩展资料:

linux主要特性:

1、完全兼容POSIX1.0标准

这使得可以在Linux下通过相应的模拟器运行常见的DOS、Windows的程序。这为用户从Windows转到Linux奠定了基础。许多用户在考虑使用Linux时,就想到以前在Windows下常见的程序是否能正常运行,这一点就消除了他们的疑虑。

2、多用户、多任务

Linux支持多用户,各个用户对于自己的文件设备有自己特殊的权利,保证了各用户之间互不影响。多任务则是现在电脑最主要的一个特点,Linux可以使多个程序同时并独立地运行。

3、良好的界面

Linux同时具有字符界面和图形界面。在字符界面用户可以通过键盘输入相应的指令来进行 *** 作。它同时也提供了类似Windows图形界面的X-Window系统,用户可以使用鼠标对其进行 *** 作。在X-Window环境中就和在Windows中相似,可以说是一个Linux版的Windows。

4、支持多种平台

Linux可以运行在多种硬件平台上,如具有x86、680x0、SPARC、Alpha等处理器的平台。此外Linux还是一种嵌入式 *** 作系统,可以运行在掌上电脑、机顶盒或游戏机上。2001年1月份发布的Linux 2.4版内核已经能够完全支持Intel64位芯片架构。同时Linux也支持多处理器技术。多个处理器同时工作,使系统性能大大提高。

参考资料来源:

百度百科-Awk

百度百科-linux

整个Linux都是架构在文件上的,所有的设备等等都是文件。 文本文件是最好读取的,也方便最终用户配置。

个人认为,识别配置文件都是将配置文件的内容当成变量来识别。

[root@dba ~]# cat ip.txt

192.168.1.1 b

192.168.1.1 c

[root@dba ~]# cat a.sh

#!/bin/bash

while read LINE

do

echo -e "${LINE} `ping -c 1 ${LINE}| grep -1 "transmitted"| sed 'NNs/\n/ /g'| awk -F",| " '{print $10,$13,$18,$22}' | awk -F"/" '{print $1,$2,$3,$4}'`"

done<ip.txt

[root@dba ~]# ./a.sh

192.168.1.1 b 1 0% 0ms 0.864 0.864 0.864 0.000

192.168.1.1 c 1 0% 0ms 0.829 0.829 0.829 0.000

是这意思不?

取某列的话,取出来放到一个临时文件里,然后想怎么 *** 作就怎么 *** 作,然后再把临时文件删了,方法可以有很多种,关键是根据各种环境灵活运用啊

[root@dba ~]# cat ip.txt

192.168.1.1 b

192.168.1.1 c

[root@dba ~]# awk -F " " '{print $2}' ip.txt >temp.txt

[root@dba ~]# cat temp.txt

b

c

[root@dba ~]# sed '2s/[a-z]/999/g' temp.txt

b

999

[root@dba ~]# rm -rf temp.txt

是这意思不?觉得可以给好评啊亲!


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8300924.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-15
下一篇 2023-04-15

发表评论

登录后才能评论

评论列表(0条)

保存