`
dylan.wu
  • 浏览: 135728 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

用shell简单的获取多个文件的字段个数和

 
阅读更多

有时候会遇到如下情况,现有几个文件,每个文件的每条记录都含有通过tab(也可以是其它字符)切割的字段值,并且第一个字段是key,其它字段都是不一样的,现在需要求所有文件中除了key以外的所有字段个数。当然可以通过写一段简单的脚本实现,其实用一段简单的shell命令就可以实现

head -1 -q tmp1.txt tmp2.txt | awk 'BEGIN{FS="\t"; i=0;} {i=i+NF-1} END{print i;}'

 

分享到:
评论

相关推荐

    利用shell脚本批量获取主机信息 IP地址 主机名 CPU型号 主频 核数 物理内存总大小 磁盘名称 容量

    本篇文章将详细讲解如何编写一个shell脚本来批量获取主机的IP地址、主机名、CPU型号、主频、核数、物理内存总大小以及磁盘名称和容量,并将其输出为CSV格式。 首先,我们需要了解在Linux中获取这些信息的命令: 1....

    在Shell命令行处理JSON数据的方法

    因为最近要处理一些 JSON 数据格式,所以在经过一番搜索后 最终找到了 jq 这个很棒的工具。jq 允许你直接在命令行下对 JSON 进行操作,包括分片、过滤、转换等等。 让我们通过几个例子来说明 jq 的功能: 一、输出...

    VC++获取桌面文件及快捷方式列表

    在VC++编程环境中,获取桌面文件及快捷方式列表是一个常见的任务,这通常涉及到Windows API的使用,特别是文件系统相关的函数。本项目通过提供的源码,实现了获取当前用户以及所有用户桌面上的文件和快捷方式的功能...

    shell_config.rar_Linux shell_parsing shell_shell config_get_sh

    总结起来,使用Shell脚本解析配置文件是Linux系统管理中的基础技能,它涉及读取文件、处理文本、提取信息等多个方面。熟练掌握这一技能,能够极大地提升系统管理和自动化任务的效率。在实际操作中,应根据具体的配置...

    java调用shell向DataX传参,带where条件,特殊字符

    在这个文件中,你可以定义源数据库、目标数据库以及数据过滤条件(where子句)。在涉及特殊字符时,DataX的参数可能需要进行URL编码,或者在JSON字符串中使用反斜杠(`\`)进行转义。 以下是一个DataX JSON配置文件的...

    Shell学习笔记

    本文档《Shell学习笔记》详细介绍了Shell脚本编写的基础知识和一些高级技巧,包含了多个主题,例如终端操作、环境变量使用、数学运算、文件描述符、数组和关联数组、别名使用、终端信息获取、日期和时间处理、脚本...

    shell脚本练习题.pdf

    本文将通过多个实践练习题,帮助读者学习shell脚本的编写和应用。 练习一:统计用户数 在 Linux 系统中,/etc/passwd 文件中存储着系统的用户信息。通过编写shell脚本,可以统计系统中的用户数,并显示每个用户的...

    shell programming

    编写有效的Shell脚本需要理解Shell语法和Unix命令的结合使用,例如利用管道(`|`)连接多个命令,使用通配符(`*`和`?`)匹配文件名,以及巧妙运用流程控制结构解决实际问题。 总结,Shell编程提供了高效管理Unix/...

    Shell脚本学习笔记

    7.1.2 在命令行中使用多个编辑器命令 121 7.1.3 从文件读取编辑器命令 121 7.2 gawk程序 122 7.2.1 gawk命令格式 122 7.2.2 自命令行读取程序脚本 122 7.2.3 使用数据字段变量 123 7.2.4 在程序脚本中使用多个命令 ...

    (vb.net)资源管理器,功能强大,使用内置API获取文件图标

    在这样的组件中,当用户展开一个节点时,会动态地获取并显示每个文件和目录的图标。为了优化性能,可以考虑缓存已经获取的图标,避免多次调用`SHGetFileInfo`。 总的来说,通过VB.NET的API调用,我们可以创建一个...

    大数据采集与处理技术相关shell脚本

    第三个脚本主要负责将多个单日的Hive表数据合并到一个分区表中,实现数据的统一管理和查询优化。其具体步骤包括: 1. **循环合并数据**: - 与第一个脚本类似,先获取开始日期和结束日期。 - 遍历日期范围内的每...

    shell编程和UNIX命令21-30

    `用于分隔多个命令。 5. **管道和重定向**:管道`|`将一个命令的输出作为另一个命令的输入,实现了命令间的连接。重定向`>`、`、`>>`分别用于覆盖输出、输入和追加输出到文件。 6. **权限管理**:`chmod`改变文件...

    获取已注册文件类型的图标

    在Windows操作系统中,每个文件类型通常都关联有一个特定的图标,这个图标反映了文件的类型或者应用程序的特性。例如,文本文件通常显示为一个记事本图标,图片文件可能显示为相应的图片缩略图。要获取这些已注册...

    Shell脚本实现根据文件的修改时间来分类文件

    - 文件大小:使用`sed`和`awk`提取`stat`命令输出的第二行的第二个字段。 - 文件修改时间:通过`sed`和`awk`进一步处理`stat`命令的第六行,去掉日期和时间中的分隔符,得到一个适合用作文件夹名称的格式。 5. **...

    shell经典代码(收藏)

    - **说明**: 使用`-nt`选项可以比较两个文件的新旧关系,判断第一个文件是否比第二个文件新。 - **应用场景**: 文件版本控制、数据更新检查等场景。 #### 12. 实现Dictionary结构 - **命令**: - `hput() { eval ...

    [Ubuntu.Linux.基础视频教程].4.3.Shell.类型转换

    3. 数组(Array):在Bash 4.0及以上版本中,数组成为可用的数据结构,允许你存储多个值在一个变量中。数组元素可以通过索引来访问和修改。 4. 布尔(Boolean):虽然Shell没有直接的布尔类型,但可以通过比较...

    shell脚本基础入门 详细介绍完整版

    3. **通配符**:在Shell中,`*`用于匹配零个或多个字符,`?`用于匹配一个字符。 4. **输入/输出重定向**:使用`>`将输出重定向到文件,如果文件存在则覆盖;使用`>>`将输出追加到文件末尾。 5. **管道**:使用`|`将...

    Shell 設計入門,很详细的教学笔记

    `basename`和`dirname`获取文件名和目录名,`sort`排序,`uniq`去除重复行,`cut`截取字段,`paste`合并行,`tr`字符转换,`grep`搜索模式。 3. **设置变量** 在Shell中,你可以设置环境变量和局部变量。使用`...

    LINUX 与 UNIX SHELL编程指南

    - **paste**: 将两个或多个文件合并。 - **split**: 将文件分割成不同的文件。 ### tr 用法 - **tr**: 用于替换或删除字符。 ### 登录环境 - **/etc/profile**: 系统级别的登录脚本。 - **$HOME/.profile**: 用户...

Global site tag (gtag.js) - Google Analytics