当前位置:  开发笔记 > 编程语言 > 正文

截断stdin行长度?

如何解决《截断stdin行长度?》经验,为你挑选了2个好方法。

我一直在解析一些日志文件,我发现有些行太长而无法显示在一行上,所以Terminal.app将它们包装到下一行.但是,我一直在寻找一种方法来截断一定数量的字符之后的一行,以便终端不会换行,从而更容易发现模式.

我写了一个小的Perl脚本来做到这一点:

#!/usr/bin/perl

die("need max length\n") unless $#ARGV == 0;

while ()
{
    $_ = substr($_, 0, $ARGV[0]);
    chomp($_);
    print "$_\n";
}

但我有一种感觉,这个功能可能内置于其他一些工具(sed?),我只是不知道该用于此任务.

所以我的问题是一个相反的问题:如何在没有编写程序的情况下截断一行stdin?



1> Andrew Medic..:

管道输出到:

cut -b 1-LIMIT

LIMIT是所需的线宽.


注意:这将计算字节数.既然他要求人物,为什么不``-c`?

2> Andrew Medic..:

我用来查看具有很长行的日志文件的另一种策略是将文件传递给"less -S".less的-S选项将打印行而不包装,您可以通过按右箭头键查看长行的隐藏部分.

推荐阅读
喜生-Da
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有