Cut

如何刪除 .txt 文件的第二列?

  • June 1, 2017

我正在處理一個 .txt 文件,它是一個名為 fsl 的神經科學程序的輸出。它確實有 2 列,我想刪除第二列,我測試了一些建議的程式碼,但似乎 Linux 命令無法將這兩列分開。知道如何丟棄第二列嗎?例如,我嘗試過,cut -f1,1 num.txt但它不起作用。

0 0.000000 

49 1435.537231 

11 322.263489 

0 0.000000 

0 0.000000

0 0.000000

0 0.000000 

360 10546.804688 

83 2431.624512

0 0.000000 

這看起來像一個以空格分隔的文件。

要將第一列提取到新文件:

$ cut -d ' ' -f 1 data >data.new

-d ' '告訴使用cut空格作為分隔符。預設是使用製表符。

awk是一個強大的工具 IMO 至少值得學習基礎知識。有很多教程。要無條件列印第一列,您只需要:

awk '{print $1}' input.txt

其優勢cut在於它將任何空白字元視為分隔符(儘管在某些實現中,它僅限於 SPC 和 TAB 字元),將忽略前導和尾隨字元,並將一個或多個空格的序列視為一個分隔符。

引用自:https://unix.stackexchange.com/questions/368477