2016-12-19 53 views
0

我知道我們可以使用>將IO重定向到文件。雖然我想寫一個固定的文件。如何將固定行重定向到帶有外殼的新文件

例如,

more something將輸出3210行,則我想

線1〜1000 file1

線1001〜2000在file2

2001~3000file3

line 3001~3210 i n file4

如何使用SHELL腳本來實現?

Thx。

+3

使用'split' .... – milli

回答

1

split命令是你所需要的。

​​

其中:

-l - 劈線。

1000 - 要拆分的行數。

your_file.txt - 要分割的文件。

prefix - 輸出文件名稱的前綴。

示例的3210行的文件:

# Generate the file 
$ seq> your_file.txt 

# Split the file 
$ split -l 1000 your_file.txt "prefix" 

# Check the output files' names 
$ ls prefix* 
prefixaa prefixab prefixac prefixad 

# Check all files' ending 
$ tail prefixa* 
==> prefixaa <== 
991 
992 
993 
994 
995 
996 
997 
998 
999 
1000 

==> prefixab <== 
1991 
1992 
1993 
1994 
1995 
1996 
1997 
1998 
1999 
2000 

==> prefixac <== 
2991 
2992 
2993 
2994 
2995 
2996 
2997 
2998 
2999 
3000 

==> prefixad <== 
3201 
3202 
3203 
3204 
3205 
3206 
3207 
3208 
3209 

相關問題