ฉันต้องการสคริปต์ที่ป้อนไฟล์และ echos เนื้อหาด้วยการลบ linebreaks - "คำที่ห่อหุ้ม" เพื่อที่จะพูด
ฉันได้พยายาม:
#!/bin/bash
find $HOME '$1' | while read line; do echo "${line}"; done
แต่มันก็ไม่ได้ผลตอบแทนอะไรเลย
ฉันต้องการสคริปต์ที่ป้อนไฟล์และ echos เนื้อหาด้วยการลบ linebreaks - "คำที่ห่อหุ้ม" เพื่อที่จะพูด
ฉันได้พยายาม:
#!/bin/bash
find $HOME '$1' | while read line; do echo "${line}"; done
แต่มันก็ไม่ได้ผลตอบแทนอะไรเลย
คำตอบ:
ลองทำสิ่งนี้:
echo $(cat $1)
echo `cat some_file.ext`
ฉันพบคำตอบที่เกี่ยวข้องใน stackoverflow:
/programming/1251999/sed-how-can-i-replace-a-newline-n
วิธีที่เร็วที่สุดที่ดูเหมือนจะใช้ tr:
tr '\n' ' ' </your/file
หรือตัวอย่างของคุณ:
cat `find $HOME '$1"` | tr '\n' ' '
ต้องการเรียนรู้เพิ่มเติมเกี่ยวกับคำสั่งทำของหลักสูตรtr
man tr
stackoverflow anser มีวิธีการทำเช่นนี้กับ sed (จะเป็นตัวเลือกแรกของฉัน แต่ sed เป็นบรรทัดที่มุ่งเน้นและทำให้ไม่ตีความตัวแบ่งบรรทัดเนื่องจากตัวคั่นฟิลด์เป็นส่วนโค้ง) และวิธีการอ่านและทุบตีใกล้กับคุณ วิธีการเริ่มต้น
bash
,line
, ,end
remove