เนื้อหาว่างของไฟล์ที่ระบุโดยไม่ต้องลบผ่าน Command Line

Anonim

หากคุณทำงานในบรรทัดคำสั่งและต้องการล้างเนื้อหาของไฟล์อย่างรวดเร็ว คุณสามารถทำได้โดยใส่เครื่องหมายมากกว่าและเว้นวรรคหน้าชื่อไฟล์ที่ต้องการ

วิธีการล้างเนื้อหาของไฟล์จาก Command Line

เคล็ดลับในการลบเนื้อหาของไฟล์ในขณะที่รักษาไฟล์นั้นมีลักษณะดังต่อไปนี้:

> ชื่อไฟล์

วิธีการนั้นใช้ได้ใน bash และเชลล์อื่น ๆ อีกมากมาย แต่คุณสามารถใช้รูปแบบ echo ได้หากไม่ทำงานใน zsh หรือเชลล์อื่น สำหรับ zsh ให้ใช้สิ่งต่อไปนี้เพื่อล้างเนื้อหาของไฟล์จากบรรทัดคำสั่งโดยใช้ echo null และ redirection:

echo -n > ชื่อไฟล์

เนื้อหาทั้งหมดภายในไฟล์เป้าหมายจะถูกลบออกทันทีโดยไม่มีการเตือน ปล่อยว่างไว้ในขณะที่ยังคงรักษาการมีอยู่ของไฟล์ ชื่อไฟล์ และการอนุญาต ซึ่งมักจะดีกว่าและรวดเร็วกว่าการลบและสร้างไฟล์ใหม่ด้วยตนเอง

ตัวอย่างที่ใช้งานได้จริงสำหรับการล้างเนื้อหาของไฟล์บันทึก เช่น

> ~/Library/Logs/updates.log

หรือบรรลุผลเดียวกันกับการเปลี่ยนเส้นทางเสียงก้อง:

echo -n > ~/Library/Logs/updates.log

คุณยังสามารถใช้คำสั่งนี้เพื่อสร้างไฟล์ใหม่ขนาด 0 ไบต์ที่ตำแหน่ง คล้ายกับการใช้คำสั่งสัมผัส

คุณจะพบว่าสิ่งนี้มีประโยชน์อย่างยิ่งหากคุณต้องการคงสิทธิ์ของไฟล์ที่กำหนดไว้เหมือนเดิม แต่ต้องการเขียนทับเนื้อหา ซึ่งเป็นเหตุการณ์ทั่วไปที่เกิดขึ้นกับไฟล์บันทึกและรายการที่คล้ายกัน

เนื้อหาว่างของไฟล์ที่ระบุโดยไม่ต้องลบผ่าน Command Line