awk 在新行打印新列

awk prints new column on a new line

请建议我如何解决这个烦人的问题。 我使用 awk 进行简单计算,然后在新的制表符分隔列中打印结果。它有效,但 awk 将结果打印在新行的列中。请看

     chr1   839976  840333  44  66151894
     chr1   855835  856060  23  66151894
     chr1   860112  860337  25  66151894

awk 'BEGIN { OFS = "\t" } {  = - } 1 ' file1.txt > result1.txt

此命令打印类似这样的内容

   chr1 713869 714267 79 66151894
   398
   chr1 839976 840333 44 66151894
   357
   chr1 855835 856060 23 66151894
   225

你能正确修复命令吗?

当我 运行 你的命令对我来说工作正常,假设你可以通过 cat -v Input_file 检查你的 Input_file 中是否有回车符然后你可以使用按照命令先删除它们。

tr -d '\r' < Input_file > temp_file && mv temp_file Input_file

那你可以试试自己的命令了。