Lệnh cat là một trong những lệnh được sử dụng rộng rãi nhất trên Linux. Tên của lệnh cat xuất phát từ chức năng của nó để lừa các tệp tin cat . Nó có thể đọc, nối và ghi nội dung tệp vào đầu ra tiêu chuẩn. Nếu không có tệp nào được chỉ định hoặc tên tệp đầu vào được chỉ định dưới dạng một dấu gạch ngang ( -), nó sẽ đọc từ đầu vào chuẩn.

cat được sử dụng phổ biến nhất để hiển thị nội dung của một hoặc nhiều tệp văn bản, kết hợp các tệp bằng cách nối nội dung của một tệp vào cuối tệp khác và tạo tệp mới.

Trong bài viết này, chúng ta sẽ tìm hiểu bạn cách sử dụng lệnh cat thông qua các ví dụ thực tế.

Cú pháp lệnh

Trước khi đi vào cách sử dụng lệnh cat, chúng ta hãy bắt đầu bằng cách xem lại cú pháp cơ bản.

Các biểu thức tiện ích cat có dạng sau:

cat [OPTIONS] [FILE_NAMES]

Sao chép

  • OPTIONS– cat các tùy chọn . Sử dụng cat --help để xem tất cả các tùy chọn có sẵn.
  • FILE_NAMES – Không hoặc nhiều tên tệp.

Hiển thị nội dung tệp

Cách sử dụng cơ bản và phổ biến nhất của lệnh cat là đọc nội dung của tệp.

Ví dụ: lệnh sau sẽ hiển thị nội dung của /etc/issuetệp trên thiết bị đầu cuối:

cat /etc/issue

Chuyển hướng nội dung của tệp

Thay vì hiển thị đầu ra tới stdout(trên màn hình), bạn có thể chuyển hướng nó đến một tệp.

Lệnh sau sẽ sao chép nội dung của file1.txt sang file2.txt sử dụng >toán tử ( ):

cat file1.txt > file2.txt

Thông thường, bạn sẽ sử dụng lệnh cp để sao chép một tệp.

Nếu file file2.txt không tồn tại, lệnh sẽ tạo nó. Nếu không, nó sẽ ghi đè lên file.

Sử dụng >>toán tử ( ) để nối nội dung của file1.txt vào file2.txt:

cat file1.txt >> file2.txt

Tương tự như trước đây, nếu tệp không có mặt, nó sẽ được tạo.

Để hiển thị nội dung của tệp có số dòng, hãy gọi cat với tùy chọn -n:

cat -n /etc/lsb-release
1  DISTRIB_ID=Ubuntu
2 DISTRIB_RELEASE=18.04
3 DISTRIB_CODENAME=bionic
4 DISTRIB_DESCRIPTION="Ubuntu 18.04.1 LTS"

Loại bỏ các dòng trống lặp lại

Sử dụng -s để bỏ qua các dòng đầu ra trống lặp lại:

cat -s file.txt

Hiển thị các kí tự TAB

Tùy chọn -T cho phép bạn phân biệt trực quan giữa các tab và không gian.

cat -T /etc/hosts
127.0.0.1^Ilocalhost
127.0.1.1^Iubuntu1804.localdomain

Các ký tự TAB sẽ được hiển thị dưới dạng ^I.

Hiển thị Kết thúc Dòng

Để hiển thị ký tự kết thúc dòng ẩn, hãy sử dụng đối số -e:

cat -e /etc/lsb-release
DISTRIB_ID=Ubuntu$
DISTRIB_RELEASE=18.04$
DISTRIB_CODENAME=bionic$
DISTRIB_DESCRIPTION="Ubuntu 18.04.1 LTS"$

Phần cuối Dòng sẽ được hiển thị dưới dạng $.

Nối các tệp

Khi chuyển hai hoặc nhiều tên tệp làm đối số cho lệnh cat, nội dung của các tệp sẽ được nối với nhau. cat đọc các tệp theo trình tự được đưa ra trong các đối số của nó và hiển thị nội dung của tệp theo cùng một trình tự.

Ví dụ: lệnh sau sẽ đọc nội dung của file1.txt và file2.txt và hiển thị kết quả trong terminal:

cat file1.txt file2.txt

Bạn có thể nối hai hoặc nhiều tệp văn bản và ghi chúng vào một tệp.

Lệnh sau sẽ nối các nội dung của file1.txt và file2.txt và viết chúng vào một tập tin mới combinedfile.txt bằng cách sử dụng ( >) điều hành:

cat file1.txt file2.txt > combinedfile.txt

Nếu combinedfile.txt không tồn tại, lệnh sẽ tạo nó. Nếu không, nó sẽ ghi đè lên tệp.

Để nối các nội dung của file1.txt và file2.txt và nối kết quả vào file3.txt để sử dụng >>toán tử ( ):

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

Nếu tệp không có mặt, nó sẽ được tạo.

Khi nối các tệp với cat, bạn có thể sử dụng các đối số tương tự như được hiển thị trong phần trước.

Tạo tệp

Việc tạo các tệp nhỏ với cat nó thường dễ dàng hơn so với việc mở một trình soạn thảo văn bản như nano , Vim, Sublime Text hoặc Visual Studio Code .

Để tạo một tệp mới, hãy sử dụng lệnh cat theo sau bởi toán tử chuyển hướng ( >) và tên của tệp bạn muốn tạo. Nhấn Enter, nhập văn bản và sau khi hoàn tất, nhấn CRTL+D để lưu tệp.

Trong ví dụ sau, chúng ta đang tạo một tệp mới có tên file1.txt:

cat > file1.txt

Nếu tệp có tên file1.txt hiện diện, tệp đó sẽ bị ghi đè. Sử dụng >> toán tử ” để nối đầu ra vào tệp hiện có.

cat >> file1.txt

Phần kết luận

Lệnh cat có thể hiển thị, kết hợp và tạo tập tin mới.

Nếu bạn có bất kỳ câu hỏi hoặc phản hồi nào, vui lòng để lại bình luận.

0 0 votes
Article Rating
Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments