ฉันมีไฟล์ดังต่อไปนี้:
1234
ABCD
EFGH
ฉันต้องการแปลงให้เป็นดังต่อไปนี้:
2341
BCDA
FGHE
ไฟล์จริงมี 4,000 คำดังนั้นฉันต้องการทำอย่างมีประสิทธิภาพ ฉันลองใช้คำสั่งcut -c 2-4,1 file.txt
แต่มันสร้างเอาต์พุตที่แน่นอนเหมือนกับอินพุต ฉันคิดว่าฉันสามารถใช้คำสั่งที่แตกต่างกัน 3 คำ:
cut -c 1 file.txt > temp1.txt
cut -c 2-4 file.txt > temp2.txt
// combine the two with paste or pr
... แต่ฉันต้องการคำสั่งเดียวเพราะฉันต้องเรียกใช้หลายครั้งด้วยการแก้ไขเล็กน้อยดังนั้นการเรียกใช้หนึ่งคำสั่งจะเกิดข้อผิดพลาดน้อยกว่าการรัน 3 คำสั่งในแต่ละครั้ง
มีวิธีใดบ้างที่จะรวมคำแถลงที่ตัด 2 ฉบับเข้าด้วยกัน สิ่งที่ต้องการ:
cut -c 1 file.txt | pr (cut -c 2-4 file.txt)
หรือมีวิธีที่ดีกว่าในการทำเช่นนี้?