ฉันมีไฟล์ข้อความมากมายที่ฉันต้องการแปลงจากชุดอักขระใด ๆ เป็นการเข้ารหัสแบบ UTF-8
มีเครื่องมือบรรทัดคำสั่งหรือ Perl (หรือภาษาที่คุณเลือก) หนึ่ง liners ฉันสามารถใช้เพื่อทำสิ่งนี้ en masse?
ฉันมีไฟล์ข้อความมากมายที่ฉันต้องการแปลงจากชุดอักขระใด ๆ เป็นการเข้ารหัสแบบ UTF-8
มีเครื่องมือบรรทัดคำสั่งหรือ Perl (หรือภาษาที่คุณเลือก) หนึ่ง liners ฉันสามารถใช้เพื่อทำสิ่งนี้ en masse?
คำตอบ:
iconv ทำการแปลงระหว่างการเข้ารหัสตัวละครหลายตัว ดังนั้นการเพิ่ม bash magic เล็กน้อยและเราสามารถเขียน
for file in *.txt; do
iconv -f ascii -t utf-8 "$file" -o "${file%.txt}.utf8.txt"
done
นี้จะทำงานiconv -f ascii -t utf-8
เพื่อทุกไฟล์ที่ลงท้ายด้วย.txt
การส่งไฟล์ recoded ไปยังไฟล์ที่มีชื่อเดียวกัน แต่สิ้นสุดในแทน.utf8.txt
.txt
ไม่ใช่ว่าสิ่งนี้จะทำอะไรกับไฟล์ของคุณ (เพราะ ASCII เป็นส่วนย่อยของ UTF-8) แต่เพื่อตอบคำถามของคุณเกี่ยวกับวิธีการแปลงระหว่างการเข้ารหัส