在 perl 或 awk 中将每 4 列打印到一行

2024-01-24

您能帮助我如何将每 4 个连续行转换为一个制表符分隔的列吗?

convert:

A
1
2
3
3
3
4
1

to :

A   1  2  3
3   3  4  1

执行此操作的一个简单方法是使用xargs:

$ xargs -n4 < file
A 1 2 3
3 3 4 1

With awk你会这样做:

$ awk '{printf "%s%s",$0,(NR%4?FS:RS)}' file
A 1 2 3
3 3 4 1

另一种灵活的方法是使用pr:

$ pr -tas' ' --columns 4 file
A 1 2 3
3 3 4 1

这俩awk and pr可以轻松修改解决方案,将输出分隔符更改为TAB:

$ pr -at --columns 4 file
A         1         2             3
3         3         4             1                        

$ awk '{printf "%s%s",$0,(NR%4?OFS:RS)}' OFS='\t' file
A         1         2             3
3         3         4             1
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 perl 或 awk 中将每 4 列打印到一行 的相关文章

  • 如何调用 awk 中的 split 函数来分割“\.”上的字符串?

    我该如何使用split用 分割的函数 例如 首先考虑分割 echo 03 26 12 awk split 0 a print a 3 a 2 a 1 产生以下输出 122603 但如果传入的字符串是 echo 03 26 12 awk sp
  • 如何将 cpanminus 与本地 CPAN::Mini 一起使用?

    我已经创建了自己的 CPAN 本地副本minicpan http search cpan org rjbs CPAN Mini 1 111007 bin minicpan并设法重新配置 cpan 来使用它 太棒了 但是我将如何使用它cpan
  • awk 反转行和单词

    我对编程语言之类的东西很陌生 所以我必须用 awk 反转文件中的所有行以及这些行中的所有单词并将其打印出来 要反转的 File1 aa bb cc foo 做为 File1 的输出打印应该是这样的 就像 foo 一样 cc bb aa 我在
  • 从 Perl 线程生成 Expect

    我正在编写一个脚本 该脚本需要定期 每 5 分钟 生成一个 Expect 进程来完成一些工作 下面是我的代码 它生成一个 Expect 进程并执行一些工作 脚本的主要进程始终在做一些其他工作 例如它可能等待用户输入 因为我在一个线程中调用这
  • 有没有对数字(千)进行分组的函数?

    小 模块中是否隐藏着一个函数 它为我执行此操作 my var 23654325432 var reverse var var s d 3 K d g var reverse var I like 数字 格式 http search cpan
  • 在 Perl 中组装 XML

    我需要对 NetApp 文件管理器进行 API 调用 我知道我需要发送什么原始 XML
  • 使用 awk 处理多个文件

    我必须使用 awk 处理大量 txt 文件 每个文件 1600 万行 我必须阅读例如十个文件 File 1 en sample 1 200 en n sample 2 10 en sample 3 10 File 2 en sample 1
  • 在 Perl 中优雅地确定系统架构

    我正在寻找一种简单的方法来确定 Perl 5 中的系统是 32 位还是 64 位 我已阅读perlvar来回翻阅手册页 并没有发现包含系统 CPU 架构的变量 编译 Perl 的 CPU 架构将足够接近 这是我最接近的 chomp my a
  • 匹配有限自然数列

    我怎样才能匹配有限自然数 http en wikipedia org wiki Natural number正则表达式系列 所以 要求是 字符串包含数字和空格 作为分隔符 第一个数字是1 每个数字 第一个数字除外 等于前一个数字 1 应该是
  • Perl 中的 Fork 无法在从文件读取的 while 循环内工作

    我正在运行一个 while 循环来读取文件中的每一行 然后使用该行的数据将进程分叉给子进程 N 行之后 我想等待子进程结束并继续接下来的 N 行 等等 它看起来像这样 while w
  • 标量值错误(使用 IO::Socket)

    这是我当前的代码 usr bin perl w use strict require IO Socket while lt gt chomp my host my header print Connecting to host n my s
  • Perl LWP::简单 HTTPS 错误

    我正在尝试获取网站的内容并打印 该代码按照我希望的方式在常规 HTTP 网站上运行 但它不适用于 HTTPS 我已经查找了此问题的修复程序 但它们在我的程序中不起作用 这是我目前拥有的代码 usr bin perl use strict u
  • 更新命令行输出

    我的程序 碰巧是用 Perl 编写的 尽管我不认为这个问题是 Perl 特定的 在程序中的某一点输出状态消息 Progress x yy where x and yy是一个数字 例如 Progress 4 38 我想在打印新的状态消息时 覆
  • Perl 脚本(或任何东西)来合计 CSV 列

    我写了 在其他人的很多帮助下 awk command https stackoverflow com questions 4159224 excel and awk disagree about csv totals 4159404 415
  • Perl 中的布尔函数应该返回什么值?

    简短的问题 在 Perl 代码库中一致表示真假的最佳方法是什么 1 0 1 Perl 原生布尔运算符的特殊空字符串 return undef 即空列表 问题背景 我们都知道 Perl 在布尔值方面非常灵活 就像大多数事情一样 例如 Perl
  • 如何获取视频时长(以秒为单位)? [复制]

    这个问题在这里已经有答案了 如何获取以秒为单位的视频时长 我尝试过的 ffmpeg i file flv 2 gt 1 grep Duration Duration 00 39 43 08 start 0 040000 bitrate 38
  • 从 shell 查找不包含特定注释的 XML 文件

    我想搜索 awk grep sed 几个 XML 文件 pom xml 文件 跳过某些文件夹 而且 第一个条件是它们必须包含标签
  • Bash:将字符串添加到文件末尾而不换行

    如何将字符串添加到文件末尾而不换行 例如 如果我使用 gt gt 它将添加到文件末尾并换行 cat list txt yourText1 root host 37 echo yourText2 gt gt list txt root hos
  • Path::Class::File 或 ::Dir & Moose 初始化和强制

    目前有 package Local use warnings use Moose use Method Signatures Simple use Path Class File use Path Class Dir method buil
  • Perl 中可以使用哪种语法糖来减少左/右值运算符与 if 语句的代码?

    那里有很多语句 因为 Perl 是一种非常甜蜜的语言 但任何语言中最常用的语句都是 if 语句和设置值的组合 我想我已经找到了很多 但仍然存在一些空白 最终 目标是不必多次编写变量名 这是我到目前为止所拥有的 r s r s unless

随机推荐

  • sklearn随机森林索引feature_importances_如何实现

    我在 sklearn 中使用 RandomForestClassifier 来确定数据集中的重要特征 我如何能够返回实际的功能名称 我的变量标记为 x1 x2 x3 等 而不是它们的相对名称 它告诉我重要的功能是 12 22 等 下面是我当
  • 我应该怎么做才能从 eclipse - Android 连接到服务器?

    大师们 我对这个话题有点迷失 这是我正在尝试做的事情的细分 用户 Android 设备 将位置信息发送到服务器 gt 服务器 server 返回已使用 sql 排序的项目列表 gt db 服务器 获取表信息并返回给用户 gt 用户 Andr
  • 以编程方式配置 p2 更新存储库

    Eclipse wiki 中有一篇文章如何通过向您的产品添加静态conf 文件来配置 RCP 应用程序的用户 p2 默认存储库 Equinox p2 向 RCP 应用程序添加自我更新 配置用户的默认存储库 http wiki eclipse
  • Angular 2 单元测试 - @ViewChild 未定义

    我正在编写 Angular 2 单元测试 我有一个 ViewChild组件初始化后我需要识别的子组件 在这种情况下 它是一个Timepicker来自 ng2 bootstrap 库的组件 尽管具体细节并不重要 之后我detectChange
  • 如何覆盖 Angular 5 中的组件?

    我有一个组件
  • 有没有办法从 Angular 2+ 中删除未使用的导入和声明? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 是否有一些 Visual Studio Code 插件或其他方法可以帮助我们快速有效地整理和组织导入和
  • NodeJs、Mocha 和 Mongoose

    我有以下结构 server db mongooseTest js test userModel test js user userModel js 用他们的代码 猫鼬测试 js var mongoose require mongoose m
  • 解析 Javascript 中自定义格式的“日期和时间”字符串

    我必须解析格式为 2015 01 16 22 15 00 的日期和时间字符串 我想将其解析为 JavaScript 日期对象 对此有什么帮助吗 我尝试了一些jquery插件 moment js date js xdate js 还是没有运气
  • Grails 打包和命名约定

    包装控制器 服务等IE com company controllers com company services 这是一个好的做法还是应该避免 我遇到的另一个值得一提的问题是命名服务示例 SomthingGatewayService gro
  • 在 Android ContentProvider 中连接表和通知 ContentObservers 的最佳实践

    我有一个 ContentProvider 来处理与我的应用程序相关的所有数据插入和检索 我遵循 Virgil Doobjanschi 在 Google I O 上建议的模式 我正在使用第一种模式 我的问题是我有一个由数据库中的多个表表示的逻
  • 动画结束后的 CSS 过渡

    我有一个 css 过渡 可以在悬停时移动元素 还有一个动画 可以在悬停时旋转元素 动画上有一个等于过渡持续时间的延迟 因此在过渡到正确位置后 动画就会开始 它工作得很好 但是 当我们将鼠标移开时 动画会停止 但不会向下过渡 是否可以在鼠标移
  • 从 TypeScript->CommonJS 模块导出带有字体资源的全局样式

    我有一个 TypeScript React 项目 组织如下 tsconfig json package json yarn lock lerna json node modules packages ui library package j
  • 从 rfft2 数组创建 fft2 结果

    我试图通过操作 rfft2 的结果来重新创建完整 fft2 的结果 该文档指出 rfft2 仅计算正系数 因为当输入为实数时 负系数与正系数具有对称性 这对于大型数组非常有用 因为计算 rfft2 比完整的 fft2 快得多 所以下面的代码
  • 如何处理 MySQL 多边形重叠查询?

    例如 我有一个用户表 每个用户都是地图上的一个 正方形 或圆圈 我想找到这样的用户overlap地图上的另一个广场 MySQL 5 6 目前支持此功能吗 MySQL 的开发版本怎么样 请注意 我不是在寻找 查找在该正方形内有一个点的用户 我
  • 小负数四舍五入后保持符号

    即使舍入结果为零 MATLAB 似乎也会记住原始符号 由于小负值已四舍五入为零 因此该信号不再有意义 代码示例 a 0 001 ar round a 2 fprintf a 2f a rounded 2f Zero 2f n a ar 0
  • 将 MILOC 与 Fortran 结合使用:赋值中的等级 0 和 1 不兼容

    给出错误消息的版本 program hello integer a 9 integer index note no dimension here a 1 3 4 5 6 7 8 9 10 index MINLOC a MASK a gt 5
  • 如何知道动画为什么会卡顿?

    我有一些相当简单的动画 移动文本 移动椭圆等 并在全屏 1920x1080 减去任务栏 下运行 WPF Performance Suite 报告整个动画的帧速率约为 50 FPS 脏矩形加法约为 300 矩形 秒 SW 帧在 0 到 4 之
  • 神经网络:连续输出变量的 Sigmoid 激活函数

    好吧 所以我正处于中间Andrew Ng 在 coursera 上的机器学习课程 https www coursera org course ml并希望调整作为作业 4 的一部分完成的神经网络 特别是 我在作业中正确完成的神经网络如下 S
  • 谷歌地图根据窗口调整大小设置不同的缩放

    继我之前的问题之后谷歌地图响应式调整大小 https stackoverflow com questions 18444161 google maps responsive resize我想根据窗口调整大小实现不同的缩放级别 调整大小时 因
  • 在 perl 或 awk 中将每 4 列打印到一行

    您能帮助我如何将每 4 个连续行转换为一个制表符分隔的列吗 convert A 1 2 3 3 3 4 1 to A 1 2 3 3 3 4 1 执行此操作的一个简单方法是使用xargs xargs n4 lt file A 1 2 3 3