Tôi có một kịch bản shell Unix mà làm như sau:kịch bản Unix gắn thêm^M ở cuối mỗi dòng
- tạo ra một bản sao lưu của một tập tin
- gắn thêm một số văn bản vào một tập tin
Bây giờ trong # 2 nếu tôi chèn một văn bản,^M được nối thêm vào tất cả các dòng của tập tin.
Ví dụ:
echo " a" >> /cust/vivek.txt
echo " b" >> /cust/vivek.txt
vi vivek.txt
abc^M
bcd^M
a^M
b^M
Bất kỳ cách nào để tránh điều này?
Cảm ơn,
Vivek
cho chúng tôi biết văn bản được nối thêm vào tập tin theo tập lệnh –
Bạn có tạo tệp này trên máy Windows và sau đó chuyển tệp trên máy unix/linux không? Kết thúc dòng được diễn giải khác nhau trong môi trường MS-DOS và Linux/Unix. Trên MS-DOS, kết thúc dòng được chỉ định bởi ký tự dòng mới và trả về vận chuyển, trong khi trên Unix, nguồn cấp dữ liệu dòng mới cho biết kết thúc của dòng. Điều này gây ra^M ký tự, nếu bạn không cẩn thận về các chế độ chuyển giữa MS-DOS và Unix/Linux – Incognito
tôi đã sao chép các tập tin cơ bản từ cửa sổ máy chỉ, bây giờ bất kỳ cách nào để giải quyết này? –