我有一个文件夹,里面有很多CSV文件。还有子文件夹。对于每个这样的文件,我需要提取前200行(制作一个db子样本(,用这些行创建另一个文件。所以我会有几个新文件,每个文件中有200行。我需要在Linux Ubuntu中使用OS shell命令来完成这项任务。有办法做到这一点吗?提前谢谢。
这一行可以满足您的需求:
find . -type f -name "*.csv" -print|xargs -I@ sh -c 'head -n200 @ > @.headed'
这条线由不同的部件组成:
- 查找必须是";"头">
- find命令的输出只是一个文件列表
- xargs命令获取文件列表并在其中运行带有sh-c选项的命令
- 显示文件的第一行200并将其放入文件名中的命令"em";"头"扩展
有了这一行,您就有了一个解决方案,该解决方案可以扩展到您编写的用例附近的另一个用例。