2013-08-27 42 views
4

我有類似的文件:AWK分裂文件成較小的文件上的圖案

ISA.00. <rest of line> 
information lines 
information lines 
... 
... 
... 
ISA.00. <rest of line> 
information lines 
information lines 
... 
... 
ISA.00. <rest of line> 

我使用:

awk "/ISA.00./{file=(FILENAME)(++i)}{print > file}" %LOCATION%\%CURRFILE% 

要通過文件的文件夾循環,分裂他們到包含一個文件僅限「ISA」數據集。我想保留原始的源文件名,並像subfile1,subfile2,subfile3一樣在末尾加1。我已經完成了兩個。

我該如何定義一個輸出目錄,其中的「子文件」將去,將原始源文件保留在原始位置,只有「子文件目錄」中的「子文件」。

我遇到了各種各樣的死衚衕,並尋求幫助作爲最後的手段。

預先感謝您!

+1

我把它你在Windows上? – ruakh

+0

這是正確的。 –

+2

獲取cygwin並從中運行UNIX工具。爲自己節省大量頭痛。 –

回答

1

文件名前添加目錄名稱:

print > "subfiles/"file 

如果您使用的是Windows,你應該使用反斜槓\分開的目錄,如:

print > "subfiles\\"file 

(反斜槓應當被轉義)

這假設該目錄已經存在。另外,使用單引號與awk時,如awk 'commands'文件