Lệnh ed trong linux là một trình soạn thảo văn bản dòng lệnh cổ điển, đơn giản nhưng mạnh mẽ. Nó cho phép bạn chỉnh sửa file trực tiếp từ terminal bằng các lệnh ngắn gọn. Mặc dù không trực quan như các trình soạn thảo hiện đại, lệnh ed vẫn hữu ích cho các tác vụ chỉnh sửa nhanh và tự động hóa.
Lệnh ed trong linux là gì?
Lệnh command ed in linux là một trình soạn thảo văn bản dòng lệnh cổ điển, thường được tìm thấy trên các hệ thống Unix và Linux. Nó không có giao diện đồ họa, thay vào đó, người dùng tương tác thông qua các lệnh đơn giản để chỉnh sửa nội dung. Mặc dù có vẻ hơi khó sử dụng so với các trình soạn thảo hiện đại, ed lại rất hữu ích trong các tình huống cần chỉnh sửa văn bản từ xa hoặc trong môi trường hạn chế tài nguyên. Nó đặc biệt phù hợp cho các tác vụ chỉnh sửa nhỏ và nhanh chóng, hoặc khi bạn cần một công cụ soạn thảo cơ bản mà không cần cài đặt thêm phần mềm. Hãy thử khám phá ed để hiểu thêm về lịch sử và sự đa dạng của các công cụ dòng lệnh trong Linux nhé!
Giới thiệu về Lệnh ed
Trong bước này, bạn sẽ tìm hiểu cách sử dụng cơ bản lệnh ed, một text editor mạnh mẽ trên hệ thống Unix.
Lệnh ed là công cụ mạnh mẽ để chỉnh sửa file text trực tiếp từ dòng lệnh, rất hữu ích cho scripting và automation.
Đầu tiên, hãy kiểm tra phiên bản ed đã được cài đặt trong Docker container Ubuntu 22.04 của chúng ta:
ed --version
Ví dụ về kết quả:
GNU ed version 1.17
Lệnh ed là một text editor theo dòng, bạn tương tác bằng cách nhập lệnh trên dòng hiện tại.
Để bắt đầu ed editor, chỉ cần gõ ed trong terminal, sau đó nhập các lệnh để thao tác với text.
ed
Một số lệnh ed cơ bản bao gồm:
a: Thêm text vào sau dòng hiện tạic: Thay đổi dòng hiện tạid: Xóa dòng hiện tạii: Chèn text vào trước dòng hiện tạil: Liệt kê dòng hiện tạip: In dòng hiện tạiq: Thoát khỏiededitor
Ví dụ, hãy tạo một file mới tên là example.txt và thêm một vài dòng text vào đó:
ed example.txt
a
This is a sample text file.
This is the second line.
.
w
q
Trong ví dụ này, chúng ta:
- Mở
ededitor và chỉ định fileexample.txt - Sử dụng lệnh
ađể thêm hai dòng text - Kết thúc chế độ thêm bằng cách nhập dấu chấm (
.) - Ghi các thay đổi vào file bằng lệnh
w - Thoát khỏi
ededitor bằng lệnhq
Bây giờ, hãy xác minh rằng file đã được tạo và chứa nội dung như mong đợi:
cat example.txt
Ví dụ về kết quả:
This is a sample text file.
This is the second line.
Trong bước tiếp theo, bạn sẽ học cách chỉnh sửa các file text hiện có bằng lệnh ed.
Chỉnh sửa File Text với ed
Trong bước này, bạn sẽ học cách chỉnh sửa các file text đã có bằng lệnh ed.
Đầu tiên, hãy tạo một file mới tên là example.txt với một số nội dung mẫu:
echo "This is the first line." > example.txt
echo "This is the second line." >> example.txt
echo "This is the third line." >> example.txt
Bây giờ, hãy mở file example.txt trong trình soạn thảo ed:
ed example.txt
Bạn sẽ thấy kết quả như sau:
34
Số này thể hiện số lượng ký tự trong file. Bây giờ, hãy thử một vài lệnh chỉnh sửa cơ bản:
1p
Lệnh này sẽ in ra dòng đầu tiên của file:
This is the first line.
Để thay đổi dòng đầu tiên, chúng ta có thể dùng lệnh c (change):
1c
This is the updated first line.
.
Dấu . trên một dòng mới cho biết kết thúc thay đổi. Hãy kiểm tra lại các thay đổi:
1p
This is the updated first line.
2p
This is the second line.
3p
This is the third line.
Để xóa một dòng, chúng ta có thể dùng lệnh d (delete):
2d
Lệnh này sẽ xóa dòng thứ hai. Hãy in lại file để xem các thay đổi:
1p
This is the updated first line.
2p
This is the third line.
Cuối cùng, để lưu các thay đổi và thoát khỏi trình soạn thảo ed, ta dùng lệnh w (write) và q (quit):
w
41
q
Số 41 thể hiện số lượng ký tự trong file đã được cập nhật.
Hãy kiểm tra lại các thay đổi bằng cách xem nội dung của file example.txt:
cat example.txt
Ví dụ kết quả:
This is the updated first line.
This is the third line.
Trong bước tiếp theo, bạn sẽ học về cách sử dụng lệnh ed nâng cao hơn.
Sử Dụng Nâng Cao Lệnh ed
Trong bước này, bạn sẽ học cách sử dụng nâng cao hơn của lệnh ed, bao gồm tìm kiếm, thay thế và làm việc với nhiều file.
Chúng ta hãy bắt đầu bằng cách tạo một file khác có tên example2.txt với một số nội dung mẫu:
echo "This is the first line of example2.txt." > example2.txt
echo "This is the second line of example2.txt." >> example2.txt
echo "This is the third line of example2.txt." >> example2.txt
Bây giờ, hãy mở cả hai file example.txt và example2.txt trong trình soạn thảo ed:
ed example.txt example2.txt
Bạn sẽ thấy kết quả đầu ra như sau:
41
41
Điều này cho biết rằng cả hai file đã được mở trong trình soạn thảo ed.
Để chuyển đổi giữa các file, bạn có thể sử dụng lệnh f (file):
f example.txt
1p
This is the updated first line.
f example2.txt
1p
This is the first line of example2.txt.
Để tìm kiếm một mẫu trong file hiện tại, bạn có thể sử dụng lệnh ?pattern?. Ví dụ: để tìm kiếm từ "line" trong file hiện tại:
?line?
This is the updated first line.
This is the third line.
Lệnh này sẽ in ra tất cả các dòng chứa từ "line".
Để thay thế một mẫu bằng một chuỗi mới, bạn có thể sử dụng lệnh s/pattern/replacement/. Ví dụ: để thay thế tất cả các lần xuất hiện của "line" bằng "sentence" trong file hiện tại:
g/line/s//sentence/p
This is the updated first sentence.
This is the third sentence.
Lệnh g được sử dụng để thực hiện thay thế trên toàn cục (trên tất cả các dòng phù hợp).
Cuối cùng, hãy thử nối nội dung của example2.txt vào example.txt:
f example.txt
$a
$(cat example2.txt)
.
w
q
Lệnh này sẽ nối nội dung của example2.txt vào cuối example.txt.
Hãy xác minh các thay đổi:
cat example.txt
Ví dụ về đầu ra:
This is the updated first line.
This is the third line.
This is the first line of example2.txt.
This is the second line of example2.txt.
This is the third line of example2.txt.
Chúc mừng! Bây giờ bạn đã học về cách sử dụng nâng cao của lệnh ed, bao gồm làm việc với nhiều file, tìm kiếm và thay thế.
Kết luận cho linux ed command
Vậy là chúng ta đã cùng nhau khám phá những điều cơ bản về linux ed command, một công cụ chỉnh sửa văn bản cổ điển nhưng vẫn hữu ích trong nhiều tình huống. Mặc dù có vẻ hơi khó làm quen ban đầu, nhưng khi đã nắm vững các lệnh cơ bản, bạn sẽ thấy ed có thể thực hiện các thao tác chỉnh sửa nhanh chóng và hiệu quả. Đừng ngại thử nghiệm và khám phá thêm các tính năng nâng cao của ed để tối ưu hóa quy trình làm việc của bạn. Hy vọng bài viết này đã giúp bạn hiểu rõ hơn về ed và có thêm một công cụ hữu ích trong bộ sưu tập kỹ năng Linux của mình. Chúc bạn thành công trên con đường chinh phục thế giới Linux đầy thú vị!