Co to jest polecenie CAT w systemie Linux i jak z niego korzystać

Co to jest polecenie CAT w systemie Linux i jak z niego korzystać

Polecenie catto najbardziej podstawowy sposób łączenia plików w systemie Linux. To skrót od conCATenation, ale to coś więcej niż tylko kopiowanie i wklejanie jednego pliku obok drugiego.

Podstawowy format polecenia CAT

W ten sposób zwykle używasz catpolecenia:

cat file1 file2 file3 > output

Kolejność dołączania plików obok siebie jest oparta na kolejności, w jakiej pliki zostały zapisane w poleceniu. W tym przykładzie, kiedy otworzysz plik „wyjściowy”, po zawartości „pliku 1” pojawi się „plik 2”, a następnie „plik 3” i tak dalej.

Terminal Linux łączący plik 1, plik 2 i plik 3 do pliku wyjściowego z zawartością wyjściową w edytorze plików tekstowych

Możesz dodać tyle plików, ile chcesz, o ile twój system plików może obsługiwać ostateczny rozmiar danych wyjściowych.

Ponadto, podobnie jak we wszystkich poleceniach terminala Linuksa, będziesz musiał dołączyć rozszerzenie pliku podczas ich dodawania. Na przykład, jeśli pracowałeś z plikami JSON i planowałeś połączyć dwa z nich razem, będziesz musiał wpisać to jak Ten:

cat file1.json file2.json > combined_file.json

CAT bez części wyjściowej

Dla cat, część wyjściowa jest opcjonalna. Usunięcie tej części powoduje wydrukowanie zawartości każdego pliku w terminalu.

Możesz to również zrobić na pojedynczych plikach. Pamiętaj, że nie będziesz mógł tutaj edytować treści, tak jak w przypadku plików DOC lub TXT w edytorze tekstu . Polecenie catbardziej przypomina przeglądarkę plików tekstowych niż edytor.

Flagi poleceń CAT

Istnieje sześć flag, których możesz użyć za każdym razem, gdy używasz CAT w systemie Linux:

  • -nwylicz każdą linię zaczynając od 1.
  • -bwyliczaj tylko te wiersze, które zawierają znaki.
  • -sściśnij wiele kolejnych pustych linii w jedną pustą linię.
  • -ezaznacz koniec każdej linii.
  • -qnie wyświetlaj komunikatu, jeśli CAT nie może znaleźć pliku wejściowego.
  • -twyświetlaj znaki tabulacji jako ^I.

Omówimy, jak każdy z nich działa i jak możesz z nich korzystać.

Użycie flagi -n

Flaga -nwylicza zawartość pliku w wierszu i wyświetla ją na terminalu. Nie edytuje samego pliku.

cat -n file1.txt

Ale nadal możesz zapisać dane wyjściowe (z wyliczeniem), wykonując następujące czynności:

cat -n file1.txt > file2.txt

Flagi polecenia Cat w terminalu Linux Flaga N

To wylicza zawartość „file1.txt” i zapisuje ją w „file2.txt”.

Możesz także wyliczyć wiele plików razem. Polecenie catbędzie kontynuować odliczanie po zakończeniu pierwszego pliku. Jeśli pierwszy plik kończy się na 33, następny plik rozpocznie się na 34 i tak dalej.

Użycie flagi -b

Problem z -nflagą polega na tym, że wylicza ona również puste wiersze. Jeśli masz plik z dużą ilością białych znaków dla układu lub czytelności, -bzamiast tego będziesz potrzebować flagi.

cat -b file1.txt

Flagi polecenia Cat w terminalu Linux Flaga B 2

Format flagi -bdziała tak samo jak flagi -n. Ponadto, jeśli użyjesz tych dwóch razem, -bflaga zastąpi -nflagę bez względu na to, jak je zamówisz.

Użycie flagi -s

Flaga -sto kolejna przydatna catflaga poleceń, gdy masz dużo białych znaków w plikach. Działa poprzez redukcję wszystkich powtarzających się białych znaków do jednego, co ułatwia czytelność.

cat -s file2.txt

Flagi polecenia Cat w terminalu Linux Flaga S

Ta flaga szuka co najmniej 2 kolejnych pustych linii przed ich połączeniem. Jeśli twój plik zawiera pojedynczą pustą linię między dwoma wypełnionymi, pominie ją i poszuka następnej.

Użycie flagi -e

Flaga -eznajduje koniec każdej linii i dodaje $na końcu każdej linii.

cat -e file1.txt

Flagi polecenia Cat terminala Linux Flaga E

Ta flaga ułatwia pracę z plikami tekstowymi, gdy używasz wyrażeń regularnych lub wyrażeń regularnych . Możesz mieć dodatkowy skrypt lub program odczytujący zawartość zapisanego pliku i sprawdzający końce za pomocą wyrażenia regularnego.

Pamiętaj, że -eflaga dodaje również $na końcu każdej pustej linii, więc możesz chcieć użyć tego obok, -saby wszystko wyglądało lepiej.

Użycie flagi -t

Flaga -tjest podobna do -eflagi, ale zamiast tego szuka „znaku tabulacji” i zastępuje go znakiem ^I. Wspaniałe w tej fladze jest to, że wie, jak odróżnić „tabulację” od znaku „podwójnej spacji”.

cat -t file1.txt > file2.txt

Flagi polecenia Cat w terminalu Linux Flaga T

Oznacza to, że jeśli użyjesz flag -nlub -bobok -tflagi, odczyta znaki spacji takimi, jakie są i pozostawi je. To samo dotyczy dodania tony spacji, aby naśladować znak „tabulacji”.

Zastosowania poleceń Linux CAT

Polecenie catpowinno być używane tylko wtedy, gdy próbujesz połączyć pliki tekstowe linia po linii. Nie oczekuj, że catpolecenie weźmie dwa wiersze tekstu i połączy je w jeden wiersz.

Terminal Linux Hello World podzielony na dwie linie

Z drugiej strony zobaczysz, że jest to bardzo przydatne, gdy próbujesz wyczyścić pliki tekstowe, aby inne skrypty mogły pracować. Flagi -e, -t, -bi -ssą wystarczająco przydatne, aby zaoszczędzić czas na kodowaniu własnego skryptu dla tego, co te flagi już robią.

Pomaga także ułatwić przeglądanie plików tekstowych w porównaniu z koniecznością ciągłego korzystania z edytora Nano .

Nano Editor Hello World w dwóch linijkach

Często Zadawane Pytania

Co się stanie, jeśli użyję polecenia CAT na pliku wideo?

Pliki wideo zawierają coś, co nazywa się „nagłówkiem”. Jest to informacja, która pokazuje, w jaki sposób wideo zostało zakodowane. Jeśli użyjesz polecenia CAT do łączenia filmów, zostaniesz z takim, które ma informacje nagłówkowe umieszczone pomiędzy zakodowanymi danymi wideo. Większość przeglądających to przeczyta i pomyśli, że plik został uszkodzony. Lepiej jest użyć innego narzędzia, takiego jak FFmpeg, aby zrobić to z plikami wideo.

Czy mogę używać polecenia Linux CAT z plikami z różnych folderów?

Możesz traktować swoje nazwy plików jako ścieżki folderów podczas łączenia plików w folderach za pomocą catpolecenia. W ten sposób możesz połączyć plik na pulpicie z innym plikiem ze Zdjęć, robiąc to w następujący sposób: cat Desktop/file1.txt Photos/Photos.txt >> output.txt.

Co się stanie, gdy użyję nazwy pliku istniejącego pliku jako danych wyjściowych polecenia CAT?

W zależności od tego, czy używasz >lub >>, nadpisze lub doda zawartość do istniejącego pliku. Polecenie >>dołącza do pliku lub tworzy plik, jeśli nie istnieje. Polecenie >zastępuje plik, jeśli istnieje, lub tworzy go, jeśli nie istnieje.

Aby uniknąć zgadywania, zawsze najlepiej jest zapisać dane wyjściowe w nieistniejącym pliku o unikalnej nazwie.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *