echo văn bản với dòng mới trong bash


35

Tôi muốn nối văn bản vào một tập tin. Vì vậy, tôi đã viết trong bash

echo text >> file.conf

Tuy nhiên, nó không để lại một dòng mới. Vì vậy, tôi chỉ có thể làm điều này một lần. Làm cách nào để thêm dòng mới?


5
Ý anh là gì? Một phụ xuống dòng? echothêm một dòng mới theo mặc định.
Tạm dừng cho đến khi có thông báo mới.

4
echotheo mặc định không để lại một dòng mới - bạn có cần nó để lại hai không? Ngoài ra, nếu bạn đang chạy chương trình này trên hệ thống linux và mở tệp trên hệ thống windows hoặc mac, hãy đảm bảo trình soạn thảo của bạn hỗ trợ các dòng mới * nix hoặc nó sẽ xuất hiện tất cả trên một dòng mặc dù trên nhiều dòng.
Darth Android

Câu trả lời:


79

lựa chọn 1:

% echo -e "text\n" >> file.conf

Lựa chọn 2:

% ( echo text ; echo "" ) >> file.conf

tùy chọn 3:

% echo text >> file.conf
% echo ""  >> file.conf

7
Bạn có thể bỏ đối số trống ( echo ""=> echo). Ngoài ra, tùy chọn 4 : echo $'text\n', hữu ích cho bất kỳ lệnh nào khi $''được giải thích bởi bash.

7

Tôi nghĩ rằng câu trả lời thích hợp nên là lệnh của bạn

tiếng vang văn bản >> file.conf

không thêm một dòng, nhưng sau văn bản mới, không phải trước đó.

Tôi đoán rằng bạn muốn thêm một dòng bổ sung trước văn bản đó, có thể là do tệp ban đầu của bạn không kết thúc ở một dòng mới. Trong trường hợp đó bạn có thể sử dụng

echo -e "\ ntext" >> file.conf

thay vào đó, vì -etùy chọn cho phép bạn sử dụng \nký tự dòng mới .


3

Chỉ để thêm vào phản ứng của akira

Tùy chọn 4:

sử dụng ctrl-v ctrl-mcác tổ hợp phím hai lần để chèn hai ký tự điều khiển dòng mới vào thiết bị đầu cuối. Ctrl-v cho phép bạn chèn các ký tự điều khiển vào thiết bị đầu cuối. Bạn có thể sử dụng phím enter hoặc return thay vì ctrol-m nếu muốn. Nó chèn điều tương tự.

Điều này kết thúc giống như echo text^M^M >> file.conf


2
Nếu bạn cần nguồn cấp dữ liệu thay vì trả về vận chuyển (linux / unix), hãy thử echo "text^J^J" >> file.confNhập ^ J thực sự có thể chèn một dòng mới theo nghĩa đen, chỉ cần đảm bảo đặt dấu ngoặc kép và nó sẽ tốt.
Darth Android
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.