Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 输出文件的第二列_Linux - Fatal编程技术网

Linux 输出文件的第二列

Linux 输出文件的第二列,linux,Linux,给定一个有两列的文件,用标准空格分隔 a b c d f g h a b c d f g H 如何输出第二列 cut-d'-f2 awk'{print$2}' 由于示例数据的最后一行没有第一列,因此必须将其作为固定宽度列进行解析: awk 'BEGIN {FIELDWIDTHS = "2 1"} {print $2}' 使用带字节偏移的剪切: cut -b 3 使用sed删除尾随列: sed s/..// cut-c2 listdir 在这里,您可以看到可视化: d代表“delimi

给定一个有两列的文件,用标准空格分隔

a b c d f g h a b c d f g H 如何输出第二列

  • cut-d'-f2
  • awk'{print$2}'

  • 由于示例数据的最后一行没有第一列,因此必须将其作为固定宽度列进行解析:

    awk 'BEGIN {FIELDWIDTHS = "2 1"} {print $2}'
    

    使用带字节偏移的剪切:

    cut -b 3
    
    使用sed删除尾随列:

    sed s/..//
    
    cut-c2 listdir
    
    在这里,您可以看到可视化:


    d代表“delimiter”,以帮助记住示例数据中的这些工作。最后一行只有第二列。它打印出许多空行,我必须尝试剪切-d'-f1 c|awk'{print$1}',但它合并了源文件c中的两列。是的,我刚刚注意到有空白字段。使用James的解决方案,我相信它会解决这个问题。@“James C”fieldswidth=“2 1”是什么意思?第一列宽两个字符,第二列宽一个字符不幸的是,这只适用于简单的示例,根本无法解决一般问题。罗曼的回答是准确的,可以接受的。这只适用于天真的例子;它甚至没有开始解决一般性问题。