เป็นอินพุตสำหรับการคำนวณระยะทาง ฉันมีไฟล์ (inp.txt) ที่มีพิกัด:
9.911 -2.781 30.097 7.768 -4.335 29.094
11.811 -1.900 30.082 13.294 -1.993 27.440
6.947 -0.742 31.786 6.390 -2.976 30.089
8.960 -2.090 32.359 11.764 1.604 25.408
9.156 -3.314 29.815 11.764 1.604 25.408
สามคอลัมน์แรกเป็นพิกัดของจุด (สมมติว่า A) ในขณะที่สามคอลัมน์สุดท้ายเป็นพิกัดของจุดที่สอง (สมมติว่า B) ฉันต้องการคำนวณระยะห่างระหว่าง A และ B และจุดอื่นๆ ทั้งหมดที่จัดเรียงในลักษณะเดียวกันในแถวต่อไปนี้ จากนั้นฉันคาดหวังว่าจะเป็นค่าระยะทางเอาต์พุต 5 ค่าในกรณีนี้
รหัส awk ของฉันที่ฉันใช้เพื่อจุดประสงค์นี้:
awk '{x1=$1;y1=$2;z1=$3} {x2=$4;y2=$5;z2=$6} END{print sqrt((x1-x2)^2 + (y1-y2)^2 + (z1-z2)^2)}' inp.txt >> out.txt
เมื่อเข้าไปแล้วฉันได้รับข้อผิดพลาด:
awk: fatal: cannot open file `{x1=$1;y1=$2;z1=$3} {x2=$4;y2=$5;z2=$6} END{print sqrt((x1-x2)^2 + (y1-y2)^2 + (z1-z2)^2)}' for reading (No such file or directory)
ฉันพยายามหาสาเหตุว่าทำไมฉันถึงได้รับข้อผิดพลาดนี้แต่ไม่สำเร็จ ขอบคุณสำหรับความช่วยเหลือใด ๆ