サーチ…
前書き
ファイルを複数の別々のファイルに分割すると便利なことがあります。大きなファイルがある場合は、それを小さな塊に分割することをお勧めします
ファイルを分割する
オプションを指定せずにsplitコマンドを実行すると、ファイルを1000行までの1つ以上の別々のファイルに分割することができます。
split file
これxaa
、 xaa
、 xab
、 xac
などの名前のファイルが作成されます。各ファイルには、最大1000行までが含まれます。ご覧のように、デフォルトではすべてに接頭辞x
が付いています。最初のファイルが1000行未満の場合、そのようなファイルは1つだけ作成されます。
接頭辞を変更するには、コマンドラインの最後に希望の接頭辞を追加します
split file customprefix
これで、 customprefixaa
、 customprefixab
、 customprefixac
などのファイルが作成されます。
ファイルごとに出力する行数を指定するには、 -l
オプションを使用します。以下は、ファイルを最大5000行に分割します
split -l5000 file
または
split --lines=5000 file
また、行の代わりに最大バイト数を指定することもできます。これは、 -b
または--bytes
オプションを使用して--bytes
ます。たとえば、最大1MBを許可するには
split --bytes=1MB file
wオプション付きのsedを使用すると、ファイルを複数のファイルに分割できます。ファイルは、行アドレスまたはパターンを指定することによって分割できます。
分割したいソースファイルがあるとします。
cat -n sourcefile
1 Ning Nang Nongについて
2牛がどこに行きますか?
3とサルはすべてBOO!
4 Nong Nang Ningがあります
5どこの木がPingに行くのですか?
6そして、お茶の鍋はジューバージャバージョーです。
7 Nong Ning Nangで
行番号でファイルを分割するコマンド:
sed '1,3w f1
> 4,7w f2' sourcefile
これは、ソースファイルから、行1から行3をファイルf1に書き込み、行4から行7をファイルf2に書き込みます。
cat -n f1
1 Ning Nang Nongについて
2牛がどこに行きますか?
3とサルはすべてBOO!
cat -n f2
1 Nong Nang Ningがあります
2木がどこに行くか。
3そして、お茶の鍋はジューバー・ジャバー・ジョーを震わせる。
4 Nong Ning Nangについて
コンテキスト/パターンでファイルを分割するコマンド:
sed '/Ning/w file1
> /Ping/w file2' sourcefile
これにより、ソースファイルがfile1とfile2に分割されます。 file1にはNingに一致するすべての行が含まれ、file2にはPingに一致する行が含まれます。
cat file1
Ning Nang Nongについて
Nong Nang Ningがあります
Nong Ning Nangについて
cat file2
どこの木がPingに行くの!