Giới thiệu
Trong lab này, bạn sẽ học cách sử dụng lệnh unix2dos
để chuyển đổi các tập tin văn bản từ định dạng Unix/Linux sang định dạng DOS/Windows. Lệnh unix2dos
được sử dụng để xử lý sự khác biệt trong các ký tự xuống dòng giữa hai hệ điều hành này. Bạn sẽ bắt đầu bằng cách tạo một tập tin văn bản mẫu ở định dạng Unix, sau đó sử dụng lệnh unix2dos
để chuyển đổi nó sang định dạng DOS. Ngoài ra, bạn sẽ học cách chuyển đổi nhiều tập tin cùng một lúc, điều này có thể hữu ích khi làm việc với một số lượng lớn các tập tin văn bản.
Lab này bao gồm các bước sau:
- Giới thiệu về lệnh
unix2dos
- Chuyển đổi các tập tin văn bản từ định dạng Unix sang định dạng DOS
- Xử lý các ký tự xuống dòng trong các tập tin văn bản
Giới thiệu về lệnh unix2dos
Trong bước này, bạn sẽ tìm hiểu về lệnh unix2dos
, lệnh này được sử dụng để chuyển đổi các tập tin văn bản từ định dạng Unix/Linux sang định dạng DOS/Windows. Sự khác biệt chính giữa hai định dạng này là cách chúng xử lý các ký tự xuống dòng.
Trong các hệ thống giống Unix, ký tự xuống dòng được biểu diễn bằng một ký tự LF
(Line Feed) duy nhất, trong khi ở Windows/DOS, ký tự xuống dòng được biểu diễn bằng sự kết hợp của các ký tự CR
(Carriage Return) và LF
.
Hãy bắt đầu bằng cách tạo một tập tin văn bản mẫu ở định dạng Unix:
echo "This is a sample text file." > sample_unix.txt
Ví dụ đầu ra:
This is a sample text file.
Bây giờ, hãy sử dụng lệnh unix2dos
để chuyển đổi tập tin từ định dạng Unix sang định dạng DOS:
unix2dos sample_unix.txt
Ví dụ đầu ra:
unix2dos: converting file sample_unix.txt to DOS format ...
Bây giờ bạn có thể kiểm tra nội dung của tập tin đã chuyển đổi:
cat sample_unix.txt
Ví dụ đầu ra:
This is a sample text file.^M
Chú ý ký tự ^M
ở cuối dòng, ký tự này biểu thị ký tự CR
(Carriage Return) đã được thêm vào.
Lệnh unix2dos
cũng có thể được sử dụng để chuyển đổi nhiều tập tin cùng một lúc:
unix2dos *.txt
Lệnh này sẽ chuyển đổi tất cả các tập tin văn bản trong thư mục hiện tại từ định dạng Unix sang định dạng DOS.
Chuyển đổi các tập tin văn bản từ định dạng Unix sang định dạng DOS
Trong bước này, bạn sẽ học cách sử dụng lệnh unix2dos
để chuyển đổi nhiều tập tin văn bản từ định dạng Unix/Linux sang định dạng DOS/Windows.
Trước tiên, hãy tạo thêm một vài tập tin văn bản mẫu ở định dạng Unix:
echo "This is another sample text file." > sample_unix2.txt
echo "This is the third sample text file." > sample_unix3.txt
Bây giờ, hãy chuyển đổi tất cả các tập tin văn bản trong thư mục hiện tại từ định dạng Unix sang định dạng DOS:
unix2dos *.txt
Ví dụ đầu ra:
unix2dos: converting file sample_unix.txt to DOS format ...
unix2dos: converting file sample_unix2.txt to DOS format ...
unix2dos: converting file sample_unix3.txt to DOS format ...
Bây giờ bạn có thể kiểm tra nội dung của các tập tin đã chuyển đổi:
cat sample_unix.txt
Ví dụ đầu ra:
This is a sample text file.^M
cat sample_unix2.txt
Ví dụ đầu ra:
This is another sample text file.^M
cat sample_unix3.txt
Ví dụ đầu ra:
This is the third sample text file.^M
Chú ý ký tự ^M
ở cuối mỗi dòng, ký tự này biểu thị ký tự CR
(Carriage Return) đã được thêm vào.
Lệnh unix2dos
cũng có thể được sử dụng để chuyển đổi một tập tin duy nhất:
unix2dos sample_unix.txt
Ví dụ đầu ra:
unix2dos: converting file sample_unix.txt to DOS format ...
Xử lý các ký tự xuống dòng trong các tập tin văn bản
Trong bước này, bạn sẽ học cách xử lý các ký tự xuống dòng trong các tập tin văn bản, đây là một khía cạnh quan trọng của việc xử lý và chỉnh sửa văn bản.
Như bạn đã học trong các bước trước, ký tự xuống dòng được biểu diễn khác nhau trong các hệ thống Unix/Linux và Windows/DOS. Trong Unix, ký tự xuống dòng được biểu diễn bằng một ký tự LF
(Line Feed) duy nhất, trong khi ở Windows/DOS, ký tự xuống dòng được biểu diễn bằng sự kết hợp của các ký tự CR
(Carriage Return) và LF
.
Hãy tạo một tập tin văn bản mẫu với cả ký tự xuống dòng Unix và DOS:
echo "This is a line with Unix newline." > sample_mixed.txt
echo -e "This is a line with DOS newline.\r\n" >> sample_mixed.txt
Bây giờ, hãy kiểm tra nội dung của tập tin:
cat sample_mixed.txt
Ví dụ đầu ra:
This is a line with Unix newline.
This is a line with DOS newline.
Chú ý sự khác biệt trong các ký tự xuống dòng giữa hai dòng.
Để loại bỏ các ký tự CR
và chuyển đổi tập tin sang định dạng xuống dòng Unix, bạn có thể sử dụng lệnh tr
:
tr -d '\r' < sample_mixed.txt > sample_unix.txt
Hãy xác minh nội dung của tập tin đã chuyển đổi:
cat sample_unix.txt
Ví dụ đầu ra:
This is a line with Unix newline.
This is a line with DOS newline.
Lệnh tr
loại bỏ tất cả các lần xuất hiện của ký tự \r
(Carriage Return) từ tập tin đầu vào và ghi kết quả vào tập tin đầu ra.
Bạn cũng có thể sử dụng lệnh dos2unix
, lệnh này ngược lại với unix2dos
, để chuyển đổi một tập tin từ định dạng DOS sang định dạng Unix:
dos2unix sample_mixed.txt sample_unix2.txt
Ví dụ đầu ra:
dos2unix: converting file sample_mixed.txt to Unix format...
Hãy xác minh nội dung của tập tin sample_unix2.txt
:
cat sample_unix2.txt
Ví dụ đầu ra:
This is a line with Unix newline.
This is a line with DOS newline.
Lệnh dos2unix
có tác dụng tương tự như sử dụng lệnh tr
để loại bỏ các ký tự CR
.
Tóm tắt
Trong lab này, bạn đã học về lệnh unix2dos
, lệnh này được sử dụng để chuyển đổi các tập tin văn bản từ định dạng Unix/Linux sang định dạng DOS/Windows. Sự khác biệt chính giữa hai định dạng này là cách chúng xử lý các ký tự xuống dòng, với Unix sử dụng một ký tự LF
(Line Feed) duy nhất và Windows/DOS sử dụng sự kết hợp của các ký tự CR
(Carriage Return) và LF
. Bạn đã tạo các tập tin văn bản mẫu ở định dạng Unix và sử dụng lệnh unix2dos
để chuyển đổi chúng sang định dạng DOS, quan sát việc thêm ký tự ^M
ở cuối mỗi dòng. Bạn cũng đã học cách chuyển đổi nhiều tập tin cùng một lúc bằng lệnh unix2dos *.txt
.
Ngoài ra, bạn đã khám phá quy trình chuyển đổi các tập tin văn bản từ định dạng Unix sang định dạng DOS, tạo thêm các tập tin mẫu và sử dụng lệnh unix2dos
để chuyển đổi tất cả chúng trong thư mục hiện tại.