วิธีการดาวน์โหลดลิงค์ด้วย unicode โดยใช้ wget
บางครั้งลิงก์มีอักขระ Unicode อยู่ในนั้นเช่นhttp://www.example.com/файл.zip หากคุณชี้เบราว์เซอร์ไปที่เบราว์เซอร์จะแจ้งให้คุณดาวน์โหลดไฟล์เป็นфайл.zip แต่ถ้าคุณลองทำด้วยwgetไฟล์จะมาพร้อมกับการเข้ารหัสเปอร์เซ็นต์การเข้ารหัส (เช่น% D0% BB) และ(invalid encoding)สตริงหลังชื่อไฟล์ ฉันสามารถเพิ่มพารามิเตอร์ใดใน wget หรือเทคนิคบรรทัดคำสั่งอื่น ๆ เพื่อให้ทำงานเป็น Chrome และ Firefox และบันทึกไฟล์ตามที่ระบุในลิงก์ที่แสดงผล - ในกรณีนี้เป็นфайл.zip โซลูชันควรทำงานได้โดยไม่ต้องเขียนไว้อย่างชัดเจนในคำสั่งดังนั้นwget -O файл.zip http://www.example.com/файл.zipวิธีแก้ปัญหาที่ชัดเจนจึงไม่ใช่วิธีที่ดี ฉันรู้ว่าทันทีที่คุณเรียกใช้wget http://www.example.com/файл.zipจะพยายามดึงhttp://www.example.com/%D1%84%D0%B0%D0%B9%D0%BB.zipนั่นคือมันจะแปลงลิงก์เป็นเปอร์เซ็นต์ การเข้ารหัสซึ่งอาจเป็นสาเหตุว่าทำไมการบันทึกจึงไม่ทำให้ชื่อไฟล์ "ถูกต้อง" ฉันโพสต์คำถามที่เกี่ยวข้องบ้างที่นี่ซึ่งคำตอบอาจมีหรือไม่มีประโยชน์กับคำถามนี้