Tin tức và phân tích của tất cả các thiết bị di động

thay thế chuỗi văn bản trong tập tin [Guide]

Chỉnh sửa thủ công các tệp văn bản trên Linux có thể rất tẻ nhạt. Đó là lý do tại sao bạn nên biết cách nhanh chóng thay thế chuỗi văn bản trong tệp bằng dòng lệnh. Nếu bạn là người mới sử dụng Linux và không biết cách thực hiện, chúng tôi có thể trợ giúp! Hãy làm theo khi chúng tôi chỉ cho bạn cách thay thế một chuỗi văn bản trong một tệp trên Linux!

Thay thế chuỗi văn bản trong tệp – sed

Tiện ích sed là cách tốt nhất để thay thế chuỗi văn bản trong tệp trên Linux. Lý do? Nó rất dễ sử dụng và làm công việc của nó rất tốt. Sed thường được cài đặt sẵn trên 99% hệ điều hành Linux nên không cần cài đặt để sử dụng.

Việc thay thế một chuỗi văn bản trong tệp bằng Sed được thực hiện bằng lệnh sed -i. Đây là cách sử dụng nó. Đầu tiên, hãy mở một cửa sổ đầu cuối trên máy tính để bàn Linux của bạn. Bạn có thể mở một cửa sổ đầu cuối bằng cách nhấn Ctrl + Alt + T trên bàn phím.

Khi cửa sổ đầu cuối mở và sẵn sàng sử dụng, hãy nhập sed -i tại dấu nhắc đầu cuối. Đây là phần đầu của lệnh thay thế.

sed -i

Sau khi gõ sed -i thêm “dấu ngoặc kép”. Trích dẫn này là cần thiết vì tất cả văn bản được thay thế bằng sed -i phải bắt đầu sau ký tự đó.

sed -i '

Sau dấu “đầu tiên, hãy nhập s /. s / nằm ngay trước văn bản hiện có mà bạn muốn thay thế bằng sed.

sed -i 's/

Bây giờ s/ đã được nhập vào dòng lệnh đầu cuối, đã đến lúc cho sed biết văn bản nào cần thay thế trong tệp. Trong ví dụ này, chúng tôi sẽ thay thế từ “apple”.

sed -i 's/apple

Khi văn bản chúng ta muốn thay thế đã được nhập vào lệnh, bước tiếp theo là nhập văn bản mới để thay thế nó. Trong ví dụ này, chúng tôi sẽ thay thế “quả táo” bằng “quả cam”.

sed -i 's/apples/oranges

Khi văn bản chúng tôi muốn thay thế được nhập vào lệnh (màu cam), hãy đóng lệnh bằng g /. G/ yêu cầu sed thay thế tất cả các lần xuất hiện của văn bản (quả táo) bằng văn bản mới (quả cam). Nó sẽ trông giống như ví dụ dưới đây.

Lưu ý: nếu bạn không muốn thay thế mọi văn bản trong tệp (ví dụ: táo thành cam), hãy xóa gi và chạy dưới dạng sed -i ‘s /apples/oranges/’ thay thế.

sed -i 's/apple/orange/g'

Cuối cùng, cho sed biết tệp nào chứa văn bản cần được thay thế. Trong ví dụ này, mục tiêu là fruit.txt trong thư mục chính của bạn.

sed -i 's/apples/oranges/g' ~/fruit.txt

Nhấn Enter để thực hiện lệnh và thay thế chuỗi văn bản trong tệp.

Thay thế chuỗi văn bản trong tệp – Perl

Một cách khác để thay thế chuỗi văn bản trong tệp trên Linux là sử dụng ngôn ngữ lập trình Perl. Perl thường được sử dụng để xử lý văn bản, vì vậy nó có thể thay thế các chuỗi văn bản trong tệp một cách tự nhiên và hoàn hảo cho trường hợp sử dụng này.

Để bắt đầu, hãy đảm bảo rằng bạn đã cài đặt Perl trên PC Linux của mình. Hầu hết các hệ điều hành Linux đều được cài đặt Perl. Tuy nhiên, nếu bạn không có nó, hãy kiểm tra trang trợ giúp của hệ điều hành của bạn để biết thông tin về cách chạy nó.

Sử dụng Perl để thay thế các chuỗi văn bản trong một tệp yêu cầu một thiết bị đầu cuối. Mở một thiết bị đầu cuối trên máy tính để bàn Linux của bạn bằng cách nhấn Ctrl + Alt + T trên bàn phím. Hoặc tìm kiếm “Terminal” trong menu ứng dụng và khởi chạy nó theo cách đó.

Khi cửa sổ đầu cuối mở và sẵn sàng hoạt động, hãy bắt đầu bằng cách nhập perl -pe trên dòng lệnh. Lệnh perl -pe là cần thiết để thay thế một chuỗi văn bản trong một tệp.

perl -pe

Sau khi gõ perl -pe tại dấu nhắc đầu cuối, bạn sẽ phải bắt đầu với dấu ngoặc kép đầu tiên. Ký tự này cho Perl biết vị trí của vùng thay thế văn bản trong lệnh.

perl -pe '

Sau dấu ngoặc kép đầu tiên, hãy thêm s / theo sau là chuỗi văn bản bạn muốn thay thế, tiếp theo là một dấu / khác. Ví dụ: để thay thế từ “apples” trong tệp fruit.txt, hãy viết văn bản sau.

perl -pe 's/apples/

Sau khi nhập các từ bạn muốn thay thế, hãy thêm một từ để thay thế văn bản hiện có. Ví dụ: nếu bạn muốn thay thế “apples” trong “fruits.txt” bằng “oranges”, hãy thêm từ “oranges” sau perl -pe ‘s /apples/ để làm cho nó giống như perl -pe’s /apples/oranges/ .

perl -pe 's/apples/oranges/

Khi cả hai chuỗi văn bản đều có trong lệnh, bạn cần chỉ định tệp đầu vào mà Perl sử dụng. Ví dụ: nếu bạn muốn thay thế văn bản trong tệp “fruit.txt”, bạn phải chỉ định nó trong lệnh.

Lưu ý: Trong ví dụ này, tệp “fruit.txt” nằm trong thư mục chính của bạn (~/). Đảm bảo thay thế “~/fruit.txt” bằng vị trí của tệp văn bản để lệnh hoạt động.

perl -pe 's/apples/oranges/' ~/fruit.txt

Bây giờ tệp đầu vào (tệp bạn đang sửa đổi bằng Perl) được thêm vào lệnh, lệnh sẽ giống như bên dưới.

perl -pe 's/apples/oranges/' ~/fruit.txt > /tmp/output.txt;cat /tmp/output.txt > ~/fruit.txt

Sau khi chạy lệnh trên, chuỗi văn bản sẽ được thay thế bằng văn bản được chỉ định mới. Trong ví dụ của chúng tôi, chúng tôi đã thay thế “quả táo” bằng “quả cam”. Để xem các thay đổi, hãy nhập lệnh bên dưới.

cat fruit.txt