Dziel i łącz pliki z wiersza poleceń w systemie Linux
W tym krótkim samouczku pokażę, jak dzielić i łączyć pliki z wiersza poleceń w systemach operacyjnych Linux i Unix za pomocą „split” i polecenia „cat”.
Wstęp
Mam wiele filmów instruktażowych dotyczących Linuksa na moim komputerze z Linuksem i chciałem przenieść je wszystkie na Dysk Google. Problem polega na tym, że rozmiar niektórych plików wideo przekracza 1 GiB. Przesyłanie tak dużych plików na dysk Google nie jest praktycznie dobrym rozwiązaniem. Mimo że Dysk Google pozwala nam przesyłać pliki o rozmiarze do 5 TB, uważam, że przesyłanie wszystkich dużych plików jest bardzo czasochłonne.
Zastanawiając się nad tym problemem, pomyślałem, że byłoby znacznie lepiej, gdybym mógł podzielić te pliki na mniejsze rozmiary i przesłać je jeden po drugim. Mogę wtedy pobrać wszystkie części pliku i połączyć je wszystkie, kiedy tylko zechcę. To tylko przykład. Możesz mieć różne powody, aby podzielić duży plik na wiele części i połączyć je później. Jeśli kiedykolwiek byłeś w takiej sytuacji, nie obawiaj się. Istnieje proste narzędzie wiersza poleceń o nazwie „split”, które służy do dzielenia dużych plików na wiele mniejszych. Możesz później połączyć je wszystkie, aby utworzyć jeden plik.
Dziel i łącz pliki z wiersza poleceń w systemie Linux
Najpierw zobaczmy, jak podzielić duży plik na wiele mniejszych plików.
Podziel pliki w systemie Linux z wiersza poleceń
Przyjrzyj się rozmiarowi poniższego pliku wideo.
du -h Linux\ Security.mp4
Przykładowe dane wyjściowe:
1.1G Linux Security.mp4Jak widzisz, rozmiar pliku wideo wynosi 1,1 GiB, czyli jest bardzo duży, aby przesłać go na mój dysk Google. Mimo że Dysk Google umożliwia użytkownikom przesyłanie plików o rozmiarze do 5 TB, jest to proces naprawdę czasochłonny. Biorąc pod uwagę moje wolne łącze internetowe, przypuszczam, że przesyłanie zajmie więcej niż 30 minut. Nie chcę czekać tak długo. Zamierzam więc podzielić ten plik na wiele mniejszych plików, na przykład 100 MB każdy, aby przyspieszyć proces przesyłania.
Teraz podzielmy powyższy plik na wiele mniejszych plików, powiedzmy na przykład 100MB każdy. Aby to zrobić, uruchom:
split -b 100M Linux\ Security.mp4 ls.Powyższe polecenie dzieli plik Linux Security.mp4 na kawałki o wielkości 100 MB. To polecenie tworzy pliki o nazwach ls.aa, ls.ab, ls.ac.. i tak dalej.
Przyjrzyjmy się wynikom po podzieleniu dużego pliku.
lsPrzykładowe dane wyjściowe:
'Linux Security.mp4' ls.ab ls.ad ls.af ls.ah ls.aj
ls.aa ls.ac ls.ae ls.ag ls.ai ls.akWidzieć? Plik Linux Security.mp4 został podzielony na wiele plików o nazwach ls.aa, ls.ab .... ls.ak itp. Rozmiar każdego pliku wynosi 100MB.
Teraz wysłanie ich jako załącznika do wiadomości e-mail jest trochę łatwe.
Połącz pliki w systemie Linux z wiersza poleceń
Zapisz wszystkie pliki w folderze. Następnie przejdź do tego folderu i połącz je w następujący sposób.
cat ls.?? > Linux_security.mp4Tutaj Linux_security.mp4 jest nazwą pliku wyjściowego. Podwójne znaki zapytania (??) pasują do dowolnego dwuznakowego rozszerzenia w nazwie pliku. Mówiąc najprościej, część nazwy pliku ls.?? pasuje do wszystkich nazw plików, takich jak ls.aa, ls.ab ..etc. i łączy je wszystkie w jeden plik. Należy pamiętać, że to polecenie połączy wszystkie pliki zawierające rozszerzenia dwuznakowe. Dlatego upewnij się przed połączeniem plików. Jeśli istnieją inne pliki z dwuliterowym rozszerzeniem, zostaną one również scalone z plikiem wyjściowym.
Nie zapomnij także wspomnieć o właściwym rozszerzeniu podczas ich łączenia. Jeżeli chcesz wysłać znajomemu wszystkie pliki pocztą, podaj mu prawidłowe rozszerzenie wysłanych plików. Podczas łączenia powinien używać tego samego rozszerzenia pliku wyjściowego.
Jeśli w poleceniu podziału nie określisz żadnego argumentu, plik zostanie podzielony na wiele mniejszych plików o nazwach x. Każdy plik będzie domyślnie zawierał 1000 linii. Tutaj to dwuznakowy sufiks dodawany domyślnie do każdej nazwy pliku.
Podzielmy ten sam plik za pomocą polecenia split bez podawania dodatkowych argumentów, jak poniżej.
split Linux\ Security.mp4To polecenie dzieli plik zabezpieczeń systemu Linux na wiele mniejszych plików o nazwie x**.
Uruchom polecenie „ls”, aby wyświetlić pliki:
lsPrzykładowe wyjście:
Linux Security.mp4 xaj xat xbd xbn xbx xch xcr xdb xdl xdv xef xep xez xfj
xaa xak xau xbe xbo xby xci xcs xdc xdm xdw xeg xeq xfa xfk
xab xal xav xbf xbp xbz xcj xct xdd xdn xdx xeh xer xfb xfl
xac xam xaw xbg xbq xca xck xcu xde xdo xdy xei xes xfc xfm
xad xan xax xbh xbr xcb xcl xcv xdf xdp xdz xej xet xfd
xae xao xay xbi xbs xcc xcm xcw xdg xdq xea xek xeu xfe
xaf xap xaz xbj xbt xcd xcn xcx xdh xdr xeb xel xev xff
xag xaq xba xbk xbu xce xco xcy xdi xds xec xem xew xfg
xah xar xbb xbl xbv xcf xcp xcz xdj xdt xed xen xex xfh
xai xas xbc xbm xbw xcg xcq xda xdk xdu xee xeo xey xfiKażdy plik powinien zawierać 1000 linii. Możesz to także zweryfikować za pomocą polecenia wc (liczba słów), jak pokazano poniżej.
wc -l *Przykładowe dane wyjściowe będą następujące:
142891 Linux Security.mp4
1000 xaa
1000 xab
1000 xac
1000 xad
1000 xae
1000 xaf
1000 xag
1000 xah
.
.
.
1000 xfl
891 xfm
285782 totalAby połączyć wszystkie te pliki, uruchom:
cat x* > ls.mp4Powyższe polecenie połączy wszystkie pliki w jeden plik o nazwie ls.mp4.
Więcej szczegółów znajdziesz na stronach man.
man splitPoleć przeczytanie:
- Jak podzielić lub wyodrębnić poszczególne strony z pliku PDF
- Jak scalić pliki PDF w wierszu poleceń w systemie Linux
Wniosek
W systemie Linux mogą być dostępne inne narzędzia CLI i GUI umożliwiające dzielenie lub łączenie plików. Ale „split” to wbudowane polecenie, które jest preinstalowane. Więc nie zawracaj sobie głowy instalowaniem żadnych dodatkowych narzędzi na swoim Linuksie. Ponadto polecenie split szybko dzieli plik na wiele części.