我从下面的假脱机sql命令中输入了4GB的数据:
头SQL> select * from hist_tran_monthly;
250, 10, 0,R, 199801, 4155, 199801
2222,31-JAN-98
250, 10, 0,R, 199802, 4155, 199802
11111,28-FEB-98
250, 10, 0,C, 199803, 4155, 199803
11111,31-MAR-98
250, 10, 0,R, 199807, 4155, 199807
28934,29-JUN-98
250, 10, 0,R, 199808, 4155, 199808
尾巴701679, 485, 1,C, 201001, 222.76, 201311
14112013,14-NOV-13
701679, 485, 1,C, 201002, 222.76, 201311
14112013,14-NOV-13
701679, 485, 1,C, 201003, 222.76, 201311
14112013,14-NOV-13
701679, 485, 1,C, 201004, 229.69, 201311
14112013,14-NOV-13
42912030 rows selected.
SQL> spool off
我需要得到这样的输出。
输出250, 10, 0,R, 199801, 4155, 199801, 2222,31-JAN-98
250, 10, 0,R, 199802, 4155, 199802, 11111,28-FEB-98
250, 10, 0,C, 199803, 4155, 199803, 11111,31-MAR-98
250, 10, 0,R, 199807, 4155, 199807, 28934,29-JUN-98
...
701679, 485, 1,C, 201001, 222.76, 201311, 14112013,14-NOV-13
701679, 485, 1,C, 201002, 222.76, 201311, 14112013,14-NOV-13
701679, 485, 1,C, 201003, 222.76, 201311, 14112013,14-NOV-13
701679, 485, 1,C, 201004, 229.69, 201311, 14112013,14-NOV-13
如何删除顶部和最后两行,并删除替代换行符并插入逗号,以使其成为csv
文件。
假设这是您的data.txt
:
SQL> select * from hist_tran_monthly;
250, 10, 0,R, 199801, 4155, 199801
2222,31-JAN-98
250, 10, 0,R, 199802, 4155, 199802
11111,28-FEB-98
250, 10, 0,C, 199803, 4155, 199803
11111,31-MAR-98
250, 10, 0,R, 199807, 4155, 199807
28934,29-JUN-98
250, 10, 0,R, 199808, 4155, 199808
701679, 485, 1,C, 201001, 222.76, 201311
14112013,14-NOV-13
701679, 485, 1,C, 201002, 222.76, 201311
14112013,14-NOV-13
701679, 485, 1,C, 201003, 222.76, 201311
14112013,14-NOV-13
701679, 485, 1,C, 201004, 229.69, 201311
14112013,14-NOV-13
42912030 rows selected.
SQL> spool off
您可以使用头/尾从顶部删除1行,从底部删除2行:
# tail -n +2 : removes top line
# head -n -2 : remove 2 lines from the end
$ tail -n +2 data.txt | head -n -2
还有其他更好的方法,这就是我要用的方法。
编辑:这是输出:
250, 10, 0,R, 199801, 4155, 199801
2222,31-JAN-98
250, 10, 0,R, 199802, 4155, 199802
11111,28-FEB-98
250, 10, 0,C, 199803, 4155, 199803
11111,31-MAR-98
250, 10, 0,R, 199807, 4155, 199807
28934,29-JUN-98
250, 10, 0,R, 199808, 4155, 199808
701679, 485, 1,C, 201001, 222.76, 201311
14112013,14-NOV-13
701679, 485, 1,C, 201002, 222.76, 201311
14112013,14-NOV-13
701679, 485, 1,C, 201003, 222.76, 201311
14112013,14-NOV-13
701679, 485, 1,C, 201004, 229.69, 201311
14112013,14-NOV-13