ฉันใช้คำสั่ง ":> file.log" เพื่อตัดทอน file.log ให้มีความยาวเป็นศูนย์ ฉันได้รับจากอินเทอร์เน็ต แต่ฉันไม่เข้าใจว่ามันทำงานอย่างไร ฉันคิดว่ามันจะคัดลอกสตรีมไปยังไฟล์ แต่ฉันไม่สามารถหาได้ด้วยตนเองซึ่งสตรีมนั้นใช้
ฉันใช้คำสั่ง ":> file.log" เพื่อตัดทอน file.log ให้มีความยาวเป็นศูนย์ ฉันได้รับจากอินเทอร์เน็ต แต่ฉันไม่เข้าใจว่ามันทำงานอย่างไร ฉันคิดว่ามันจะคัดลอกสตรีมไปยังไฟล์ แต่ฉันไม่สามารถหาได้ด้วยตนเองซึ่งสตรีมนั้นใช้
คำตอบ:
คำสั่งไม่ได้เป็นเพียง:>
:
ใน bash (และอาจเป็น shell อื่น ๆ ) เป็นคำสั่ง no-op ในตัว การ>
เปลี่ยนเส้นทางการส่งออกไปยังไฟล์ (ตัดทอนมันก่อน) เนื่องจาก:
ไม่มีเอาต์พุตผลลัพธ์สุทธิของบรรทัดคำสั่งของคุณ: > file.log
จะทำให้file.log
ความยาวเป็นศูนย์
จากbash
หน้าคนท้องถิ่นของฉัน:
: [arguments]
No effect; the command does nothing beyond expanding arguments
and performing any specified redirections. A zero exit code is
returned.
คุณอาจลืม:
ส่วนและเพียงพิมพ์>file.log
มันควรให้ผลลัพธ์ที่เหมือนกัน