ฉันเคยใช้sed
มาระยะหนึ่งแล้ว แต่นี่เป็นเรื่องแปลกที่ฉันมาด้วยซึ่งฉันไม่สามารถแก้ไขได้
ให้ฉันอธิบายปัญหาของฉันกับกรณีจริง
ฉาก # 1
printf "ls" | xclip -selection clipboard
echo "ls" | xclip -selection clipboard
ในคำสั่งแรกฉันไปป์printf
เอาท์พุทxclip
เพื่อที่จะได้รับการคัดลอกไปยังคลิปบอร์ด ตอนนี้สิ่งที่printf
แตกต่างecho
ไม่ได้แทรกบรรทัดใหม่ในตอนท้ายโดยค่าเริ่มต้น ดังนั้นหากฉันวางเนื้อหานี้ลงในเทอร์มินัลls
คำสั่งที่คัดลอกจะไม่ทำงานโดยอัตโนมัติ
ในวินาทีมีบรรทัดใหม่ในตอนท้ายดังนั้นการวางเนื้อหาของคลิปบอร์ดยังส่งผลให้การรันคำสั่งในคลิปบอร์ด
นี่เป็นสิ่งที่ไม่พึงปรารถนาสำหรับฉัน ดังนั้นฉันต้องการลบการขึ้นบรรทัดใหม่โดยใช้sed
แต่มันล้มเหลวดังอธิบายในฉากด้านล่าง
ฉาก # 2
echo "ls" | sed -r 's/\n//g' | xclip -selection clipboard
เนื้อหาในคลิปบอร์ดยังมีบรรทัดใหม่ เมื่อฉันวางลงในเทอร์มินัลคำสั่งจะทำงานโดยอัตโนมัติ
\r
ฉันยังพยายามเอาตัวละครที่กลับรถ แต่นาดา ดูเหมือนว่าฉันขาดสิ่งที่สำคัญมาก / พื้นฐานไปที่นี่
generate-text | xclip
กรณีนี้ คำตอบนี้จะลบ newline สุดท้ายเท่านั้น