ทำไมไม่ควรใช้ช่องว่างในชื่อไฟล์?
การตั้งชื่อไฟล์แบบหลายคำ เช่น July 2017.csv ดูเป็นเรื่องง่ายและสะดวกเมื่อใช้งานผ่าน file explorer แบบกราฟิก
แต่จะสร้างปัญหาเมื่อทำงานใน shell
ตัวอย่างเช่น หากต้องการเปลี่ยนชื่อไฟล์ July 2017.csv เป็น 2017 July data.csv
คุณไม่สามารถพิมพ์คำสั่งแบบนี้ได้:
mv July 2017.csv 2017 July data.csv
เพราะ shell จะตีความว่าคุณกำลังพยายามย้ายไฟล์สี่ไฟล์ ได้แก่ July, 2017.csv, 2017, และ July (ซ้ำ)
ไปไว้ในไดเรกทอรีชื่อ data.csv
แทนที่จะทำเช่นนั้น ต้องใส่เครื่องหมายคำพูดครอบชื่อไฟล์
เพื่อให้ shell มองแต่ละชื่อเป็น parameter เดียว:
mv 'July 2017.csv' '2017 July data.csv'
สมมติว่ามีไฟล์สองไฟล์ชื่อ current.csv และ last year.csv
(ซึ่งมีช่องว่างในชื่อ)
แล้วพิมพ์คำสั่ง:
rm current.csv last year.csv
จะเกิดอะไรขึ้น:
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Introduction to Shell
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำจริง
เปลี่ยนทฤษฎีให้เป็นการลงมือทำด้วยแบบฝึกหัดเชิงโต้ตอบหนึ่งในของเรา
เริ่มแบบฝึกหัด