1

我有大约 150 个文件,其中包含 3 列 x、y、z 值且没有标题。

x1 y1 z1

x2 y2 z2

x3 y3 z3

...

xn yn zn

对于我们的压缩感知算法,我只需要将这些值放在一列中

x1

y1

z1

x2

y2

z2

. . .

xn

在不使用 MatLab 的情况下,如何对 150 个文件执行此批处理操作?根据我之前的问题,我相信这可以通过使用sed来完成。但是有效地批处理 150 个文件超出了我的能力。我在安装了 cygwin 的 Win7 上运行。任何建议将不胜感激。

感谢您的帮助。

问候,

伊克尔

编辑:分隔符是 TAB

4

1 回答 1

2

假设您当前的工作目录中只有感兴趣的文件,并且文件的分隔符是一个空格,并且您已GNU sed安装:

sed -i 's/ /\n/g' *

或者,您可以避免sed并使用trandfor循环,如下所示:

for i in file*; do tr " " "\n" < "$i" > "$i.bak" && mv "$i.bak" "$i"; done
于 2013-01-25T07:11:21.687 回答