How to Combine Text Files Using the „cat” Command in Linux

  • Lori Kaufman

    @howtogeek

  • Updated July 11, 2017, 9:26pm EDT

00_lead_image_concatenating_files

Polecenie cat jest bardzo przydatne w systemie Linux. Posiada ono trzy główne funkcje związane z manipulowaniem plikami tekstowymi: tworzenie ich, wyświetlanie i łączenie.

RELATED: How to Quickly Create a Text File Using the Command Line in Linux

Przedyskutowaliśmy użycie polecenia cat (między innymi) do tworzenia i przeglądania plików tekstowych w wierszu poleceń w Linuksie. Ale załóżmy, że masz trzy pliki tekstowe: file1.txt, file2.txt, i file3.txt. Chcesz je połączyć (lub concatenate) w jeden plik tekstowy zawierający informacje z wszystkich trzech, w tej kolejności. Możesz to zrobić również za pomocą polecenia cat.

Po prostu otwórz Terminal i wpisz następujące polecenie:

cat file1.txt file2.txt file3.txt

Oczywiście, zastąp nazwy plików w powyższym przykładzie swoimi własnymi.

Reklama

Połączona zawartość trzech plików tekstowych pojawi się w twoim terminalu.

01_basic_cat_command

RELATED: Become a Linux Terminal Power User With These 8 Tricks

Typowo jednak, prawdopodobnie będziesz chciał połączyć te pliki tekstowe w inny plik tekstowy, a nie tylko wydrukować wyniki na ekranie. Na szczęście, jest to bardzo proste. Wszystko co musisz zrobić, to dodać symbol przekierowania wyjścia (>) po liście łączonych plików, a następnie określić nazwę końcowego pliku tekstowego.

cat file1.txt file2.txt file3.txt > file4.txt

UWAGA: Plik wymieniony po symbolu przekierowania wyjścia zostanie nadpisany, jeśli już istnieje. Tak więc, bądź ostrożny przy podawaniu nazwy połączonego pliku tekstowego. W dalszej części artykułu pokażemy, jak dołączać pliki do końca istniejącego pliku.

Jeśli otworzysz plik4.txt (poleceniem cat lub w wybranym edytorze tekstu), powinieneś zauważyć, że zawiera on tekst trzech pierwszych plików tekstowych.

02_przekierowanie_cat_komenda

Reklama

Jeśli łączysz listy elementów z wielu plików i chcesz, aby były one alfabetycznie uporządkowane w połączonym pliku, możesz posortować połączone elementy w pliku wynikowym. Aby to zrobić, wpisz podstawowe polecenie cat, które wcześniej Ci pokazaliśmy, a następnie polecenie pipe (|) i polecenie sort. Następnie wpisujemy symbol przekierowania wyjścia (>), a po nim nazwę pliku, do którego chcemy skopiować połączony tekst. Wszystkie wiersze tekstu w pliku wynikowym zostaną posortowane alfabetycznie.

cat file1.txt file2.txt file3.txt | sort > file4.txt

03_concatenating_and_sorting

Jak wspomnieliśmy wcześniej, istnieje również sposób dołączania plików na koniec istniejącego pliku. Wpisz komendę cat, a następnie plik lub pliki, które chcesz dodać na koniec istniejącego pliku. Następnie wpisz dwa symbole przekierowania wyjścia (>>), a po nich nazwę istniejącego pliku, do którego chcesz dodać plik.

cat file5.txt >> file4.txt

04_dodawanie_a_pliku_do_końca_istniejącego_pliku

Jeśli chcesz dodać trochę nowego tekstu do istniejącego pliku tekstowego, używasz polecenia cat aby zrobić to bezpośrednio z wiersza poleceń (zamiast otwierać go w edytorze tekstu). Wpisz polecenie cat, a następnie podwójny symbol przekierowania wyjścia (>>) i nazwę pliku, do którego chcesz dodać tekst.

cat >> file4.txt

Kursor pojawi się w następnej linii poniżej znaku zachęty. Zacznij wpisywać tekst, który chcesz dodać do pliku. Gdy skończysz, naciśnij Enter za ostatnią linią, a następnie naciśnij Ctrl+D, aby skopiować ten tekst na koniec pliku i wyjść z cat.

05_dodawanie_linii_z_standardowego_wydania

Related: Jak uzyskać pomoc z poleceniem z Terminala Linuksa: 8 Tricks for Beginners & Pros Alike

Reklama

Jeśli skończysz z bardzo długim plikiem po połączeniu plików tekstowych, możesz użyć symbolu pipe z poleceniem less podczas przeglądania pliku w oknie Terminala. Na przykład, cat file4.txt | less. Użycie polecenia less omawiamy w tym artykule.

Lori Kaufman
Lori Kaufman jest ekspertem w dziedzinie technologii z 25-letnim doświadczeniem. Była starszym autorem tekstów technicznych, pracowała jako programistka, a nawet prowadziła własną firmę z wieloma lokalizacjami.Read Full Bio ”

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *