Linux多个文件按列合并的多种场景操作方式

2024-02-23 18:48

本文主要是介绍Linux多个文件按列合并的多种场景操作方式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

paste、awk、join

  • paste
      • 1.1. 列数相同
      • 1.2. 列数不同
      • 1.3. 合并列很多的情况
  • awk
  • join
      • 3.1. 合并首列相同字段
      • 3.2. 特殊字符分隔的一行同列

paste

可用范围:不考虑列值,可直接合并

1.1. 列数相同

默认以tab分隔合并,-d参数可指定字符(空格也是字符)分隔合并
在这里插入图片描述

1.2. 列数不同

列数不同也会输出,若用-d参数带字符分隔也会带上分隔字符后输出

vi t1.txt
A ip a
B ip addr
C free -m
D df -h
E cat echo
F ps -efvi t2.txt
A lsblk lscpu
B top ifconfig
C find sed
G D vi vim

在这里插入图片描述

1.3. 合并列很多的情况

当合并的文件列数过多时,在合并处会出现“乱码”,此时需要手动处理一下
在这里插入图片描述
== ⚠:使用ctrl+v,ctrl+m打^M字符,否则无法识别 ==

# 修改合并后的文件,去掉^M字符
vi mergedcs.csv
:1,$ s/^M//g

awk

可用范围:文件存在重复字段,去重合并,需要指定列数【相当于合并后删除重复首列】
https://blog.csdn.net/qq_31573519/article/details/83002137

join

可用范围:文件存在重复字段,去重合并【相当于合并后删除重复首列】
== ⚠:join一次只能合并两个文件 ==

3.1. 合并首列相同字段

只合并存在相同字段的行,且相同字段为当前行的首字符(如下例中“D”行是匹配不到的)
在这里插入图片描述

3.2. 特殊字符分隔的一行同列

可用 -t 参数指定分隔的列字符进行合并
在这里插入图片描述

这篇关于Linux多个文件按列合并的多种场景操作方式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/739586

相关文章

C++中零拷贝的多种实现方式

《C++中零拷贝的多种实现方式》本文主要介绍了C++中零拷贝的实现示例,旨在在减少数据在内存中的不必要复制,从而提高程序性能、降低内存使用并减少CPU消耗,零拷贝技术通过多种方式实现,下面就来了解一下... 目录一、C++中零拷贝技术的核心概念二、std::string_view 简介三、std::stri

Linux脚本(shell)的使用方式

《Linux脚本(shell)的使用方式》:本文主要介绍Linux脚本(shell)的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录概述语法详解数学运算表达式Shell变量变量分类环境变量Shell内部变量自定义变量:定义、赋值自定义变量:引用、修改、删

python判断文件是否存在常用的几种方式

《python判断文件是否存在常用的几种方式》在Python中我们在读写文件之前,首先要做的事情就是判断文件是否存在,否则很容易发生错误的情况,:本文主要介绍python判断文件是否存在常用的几种... 目录1. 使用 os.path.exists()2. 使用 os.path.isfile()3. 使用

使用jenv工具管理多个JDK版本的方法步骤

《使用jenv工具管理多个JDK版本的方法步骤》jenv是一个开源的Java环境管理工具,旨在帮助开发者在同一台机器上轻松管理和切换多个Java版本,:本文主要介绍使用jenv工具管理多个JD... 目录一、jenv到底是干啥的?二、jenv的核心功能(一)管理多个Java版本(二)支持插件扩展(三)环境隔

SQL中JOIN操作的条件使用总结与实践

《SQL中JOIN操作的条件使用总结与实践》在SQL查询中,JOIN操作是多表关联的核心工具,本文将从原理,场景和最佳实践三个方面总结JOIN条件的使用规则,希望可以帮助开发者精准控制查询逻辑... 目录一、ON与WHERE的本质区别二、场景化条件使用规则三、最佳实践建议1.优先使用ON条件2.WHERE用

Mybatis的分页实现方式

《Mybatis的分页实现方式》MyBatis的分页实现方式主要有以下几种,每种方式适用于不同的场景,且在性能、灵活性和代码侵入性上有所差异,对Mybatis的分页实现方式感兴趣的朋友一起看看吧... 目录​1. 原生 SQL 分页(物理分页)​​2. RowBounds 分页(逻辑分页)​​3. Page

Python主动抛出异常的各种用法和场景分析

《Python主动抛出异常的各种用法和场景分析》在Python中,我们不仅可以捕获和处理异常,还可以主动抛出异常,也就是以类的方式自定义错误的类型和提示信息,这在编程中非常有用,下面我将详细解释主动抛... 目录一、为什么要主动抛出异常?二、基本语法:raise关键字基本示例三、raise的多种用法1. 抛

Linux链表操作方式

《Linux链表操作方式》:本文主要介绍Linux链表操作方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、链表基础概念与内核链表优势二、内核链表结构与宏解析三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势六、典型应用场景七、调试技巧与

详解Linux中常见环境变量的特点与设置

《详解Linux中常见环境变量的特点与设置》环境变量是操作系统和用户设置的一些动态键值对,为运行的程序提供配置信息,理解环境变量对于系统管理、软件开发都很重要,下面小编就为大家详细介绍一下吧... 目录前言一、环境变量的概念二、常见的环境变量三、环境变量特点及其相关指令3.1 环境变量的全局性3.2、环境变

Linux系统中的firewall-offline-cmd详解(收藏版)

《Linux系统中的firewall-offline-cmd详解(收藏版)》firewall-offline-cmd是firewalld的一个命令行工具,专门设计用于在没有运行firewalld服务的... 目录主要用途基本语法选项1. 状态管理2. 区域管理3. 服务管理4. 端口管理5. ICMP 阻断