Szukaj…


Wprowadzenie

Czasami warto podzielić plik na wiele osobnych plików. Jeśli masz duże pliki, dobrym pomysłem może być podzielenie ich na mniejsze części

Podziel plik

Uruchomienie polecenia podziału bez żadnych opcji spowoduje podzielenie pliku na 1 lub więcej osobnych plików zawierających do 1000 wierszy każdy.

split file

Spowoduje to utworzenie plików o nazwach xaa , xab , xac itp., Każdy zawierający do 1000 wierszy. Jak widać, wszystkie z nich są domyślnie poprzedzone literą x . Jeśli plik początkowy miał mniej niż 1000 wierszy, utworzonoby tylko jeden taki plik.

Aby zmienić prefiks, dodaj żądany prefiks na końcu wiersza polecenia

split file customprefix

Teraz zostaną utworzone pliki o nazwach customprefixaa , customprefixab , customprefixac itp.

Aby określić liczbę wierszy wyprowadzanych na plik, użyj opcji -l . Poniżej podzieli plik na maksymalnie 5000 linii

split -l5000 file

LUB

split --lines=5000 file

Alternatywnie możesz podać maksymalną liczbę bajtów zamiast linii. Odbywa się to za pomocą opcji -b lub --bytes . Na przykład, aby zezwolić na maksymalnie 1 MB

split --bytes=1MB file

Możemy użyć sed z opcją w, aby podzielić plik na wiele plików. Pliki można podzielić, podając adres linii lub wzór.

Załóżmy, że mamy ten plik źródłowy, który chcielibyśmy podzielić:

cat -n sourcefile

1 Na Ning Nang Nong
2 Gdzie krowy idą Bong!
3 i wszystkie małpy mówią BOO!
4 Jest Nong Nang Ning
5 Gdzie idą drzewa Ping!
6 I dzbanki do herbaty jibber jabber joo.
7 Na Nong Ning Nang

Polecenie podzielenia pliku według numeru wiersza:

sed '1,3w f1
> 4,7w f2' sourcefile

To zapisuje wiersz 1 do wiersza 3 do pliku f1 i wiersz 4 do wiersza 7 do pliku f2 z pliku źródłowego.

cat -n f1

1 Na Ning Nang Nong
2 Gdzie krowy idą Bong!
3 i wszystkie małpy mówią BOO!

cat -n f2 

1 Jest Nong Nang Ning
2 Gdzie idą drzewa Ping!
3 I dzbanki do herbaty jibber jabber joo.
4 Na Nong Ning Nang

Polecenie podzielenia pliku według kontekstu / wzoru:

sed '/Ning/w file1
> /Ping/w file2' sourcefile

Dzieli to plik źródłowy na plik1 i plik2. plik1 zawiera wszystkie linie pasujące do Ning, plik2 zawiera linie pasujące do Ping.

cat file1

Na Ning Nang Nong
Jest Nong Nang Ning
Na Nong Ning Nang

cat file2

Gdzie idą drzewa Ping!



Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow