linux输出文件有几列

我有一个文件,很标准,列数一定,我想知道这个文件有多少列,或者每一行对应有多少列,什么命令?... 我有一个文件,很标准,列数一定,我想知道这个文件有多少列,或者每一行对应有多少列,什么命令? 展开
 我来答
阿平呀
高粉答主

2019-09-02 · 繁杂信息太多,你要学会辨别
知道答主
回答量:24
采纳率:100%
帮助的人:3414
展开全部

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

帐号已注销
2019-07-11 · TA获得超过1.2万个赞
知道答主
回答量:25
采纳率:0%
帮助的人:6106
展开全部

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列。


扩展资料

linux下awk是一个强大的文本分析工具,了解它的内置变量可以对文本做各种处理,它的内置变量有:

ARGC:命令行参数个数

ARGV:命令行参数排列

ENVIRON:支持队列中系统环境变量的使用

FILENAME:awk浏览的文件名

FNR:浏览文件的记录数

FS:设置输入域分隔符,等价于命令行 -F选项

NF:浏览记录的域的个数

NR:已读的记录数

OFS:输出域分隔符

ORS:输出记录分隔符

RS:控制记录分隔符

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
可靠的梦想之星
2020-10-23 · TA获得超过587个赞
知道小有建树答主
回答量:926
采纳率:78%
帮助的人:37.9万
展开全部

如果我只想看看文件的前几行,每行的字段数(列数),我的文件已tab作为分隔符(这个可以自己指定),其具体命令如下:

head fileName | awk -F'\t' '{print NF}'

如果想着想着按列拼接文件,可用:

paste -d'\t' file1 file2    Linux命令列表及介绍查找请看下图:

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
遁去的yi
推荐于2017-11-28
知道答主
回答量:11
采纳率:0%
帮助的人:8万
展开全部
想看列数的话就可以使用: cat 文件名 | awk '{print NF}',
awk默认的字段分隔符是空格或制表符(tab),如果你的是其它符号的话,就使用-F参数指定,
例如:cat 文件名 | awk -F":" '{print NF}',就是表示以分号(:)为空格符。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yangxiaodan_ss
2011-12-20 · TA获得超过151个赞
知道答主
回答量:112
采纳率:0%
帮助的人:129万
展开全部
more + 文件 | wc -l
更多追问追答
追问
谢谢,这个是统计有多少行,我是问列..
追答
more + 文件 | wc -c
-c应该可以,刚看错了~~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式