สะท้อนข้อความด้วยบรรทัดใหม่ในทุบตี


35

ฉันต้องการที่จะเพิ่มข้อความลงในไฟล์ ดังนั้นฉันจึงเขียนเป็นทุบตี

echo text >> file.conf

อย่างไรก็ตามมันจะไม่ออกจากบรรทัดใหม่ ดังนั้นฉันสามารถทำได้เพียงครั้งเดียว ฉันจะเพิ่มบรรทัดใหม่ได้อย่างไร


5
คุณหมายถึงอะไร พิเศษขึ้นบรรทัดใหม่? echoเพิ่มขึ้นบรรทัดใหม่ตามค่าเริ่มต้น
หยุดชั่วคราวจนกว่าจะมีการแจ้งให้ทราบต่อไป

4
echoโดยค่าเริ่มต้นจะขึ้นบรรทัดใหม่ - คุณต้องการที่จะออกจากสอง? นอกจากนี้หากคุณใช้งานบนระบบ linux และเปิดไฟล์บนระบบ windows หรือ mac ตรวจสอบให้แน่ใจว่าโปรแกรมแก้ไขของคุณรองรับ * new new nix หรือไม่หรือจะปรากฏทุกบรรทัดในบรรทัดเดียวแม้ว่าจะมีหลายบรรทัดก็ตาม
Darth Android

คำตอบ:


79

ตัวเลือกที่ 1:

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

ตัวเลือก 2:

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

ตัวเลือก 3:

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

7
คุณสามารถวางอาร์กิวเมนต์ว่าง ( echo ""=> echo) นอกจากนี้ตัวเลือก 4: echo $'text\n'ซึ่งเป็นประโยชน์สำหรับคำสั่งใด ๆ ที่$''ถูกตีความโดยทุบตี

7

ฉันคิดว่าคำตอบที่เหมาะสมควรเป็นคำสั่งของคุณ

echo text >> file.conf

เพิ่มบรรทัดพิเศษ แต่หลังจากข้อความใหม่ไม่ใช่ก่อนหน้า

ฉันเดาว่าคุณต้องการเพิ่มบรรทัดพิเศษก่อนข้อความนั้นอาจเป็นเพราะไฟล์เริ่มต้นของคุณไม่ได้อยู่ในบรรทัดใหม่ ในกรณีที่คุณสามารถใช้

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

แต่เป็น-eตัวเลือกให้คุณใช้\nอักขระบรรทัดใหม่แทน


3

เพียงเพิ่มคำตอบของอากิระ

ตัวเลือก 4:

ใช้ctrl-v ctrl-mคอมโบคีย์สองครั้งเพื่อแทรกอักขระควบคุมบรรทัดใหม่สองตัวในเทอร์มินัล Ctrl-v ให้คุณแทรกอักขระควบคุมลงในเทอร์มินัล คุณสามารถใช้ปุ่ม Enter หรือ Return แทน ctrol-m หากต้องการ มันแทรกสิ่งเดียวกัน

นี้ดูเหมือนว่าจะจบลง echo text^M^M >> file.conf


2
หากคุณต้องการ linefeeds แทน carriage return (linux / unix) ให้ลองecho "text^J^J" >> file.confพิมพ์ ^ J จริง ๆ แล้วอาจแทรกขึ้นบรรทัดใหม่ตามตัวอักษรให้แน่ใจว่าใส่เครื่องหมายคำพูดแล้วมันจะดี
Darth Android
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.