2016-08-01 44 views
0

我最近一直在處理拆分大文件並進一步處理它們。在管道內用split命令拆分文件後命名文件

我現在的管道很簡單>

find . -type f -size +100M | split -b 100M 

但是,這樣做是不正是我之後。我想類似命名的輸入文件分割功能分裂文件,例如>查找的輸入是>

file1 
file2 
file3 

我想輸出的例如

file101 file102 ... 
file201 file202 ... 
file301 file302 ... 

我>試過線

split -b 100M -d $(find . -type f -size +1000M) $(find . -type f -size +1000M) 

但它不工作,因爲我希望它會拋出錯誤!

謝謝。

回答

0

split不從標準輸入中讀取文件名。您必須提供文件名作爲參數。你可以用-exec選項到find。使用{}佔位符將文件名替換爲輸入文件和輸出前綴參數。

find . -type f -size +100M -exec split -b 100M -d {} {} \; 
+0

Aaaaah,這解釋了很多。非常感謝你! –

+0

但這並不回答我的問題 - 如何命名這些outptut文件? –

+0

我想到了,我們必須+而不是\;再次感謝。 –