นี่เป็นคำถามที่เกิดขึ้นค่อนข้างบ่อย โดยเฉพาะอย่างยิ่งเมื่อมีคนต้องการค้นหาไฟล์ที่มีขนาดเล็กกว่า 1 KBมีหลายวิธีในการค้นหาไฟล์ 0 ไบต์ใน Linux แต่วิธีที่ง่ายที่สุดคือการใช้คำสั่ง find คำสั่ง find สามารถใช้เพื่อค้นหาไฟล์และไดเร็กทอรีบนคอมพิวเตอร์ของคุณตัวอย่างต่อไปนี้จะค้นหาไฟล์ทั้งหมดที่มีขนาดศูนย์ไบต์:find -ขนาด0

หากคุณต้องการค้นหาภายในบางไดเร็กทอรี คุณสามารถใช้ตัวเลือก -ความลึกตัวอย่างเช่น คำสั่งต่อไปนี้จะค้นหาไฟล์ทั้งหมดที่มีขนาดศูนย์ไบต์และอยู่ในไดเร็กทอรีปัจจุบัน:find -ขนาด 0 -ความลึก 1

คุณยังสามารถใช้สัญลักษณ์แทนเมื่อค้นหาด้วยการค้นหาตัวอย่างเช่น หากคุณต้องการค้นหาไฟล์ทั้งหมดที่มีขนาดศูนย์ไบต์และไม่มีอยู่ในไดเร็กทอรีใด คุณสามารถใช้คำสั่งต่อไปนี้:find -ชื่อ '*.

คำสั่งค้นหาไฟล์ 0 ไบต์ใน Linux คืออะไร?

คำสั่งในการค้นหาไฟล์ 0 ไบต์ใน Linux คือ find . -type f -print0 | xargs rm

การดำเนินการนี้จะค้นหาไฟล์ทั้งหมดและลบไฟล์ที่มีขนาดศูนย์ไบต์

เหตุใดจึงมีไฟล์ 0 ไบต์ในระบบ Linux ของฉัน

มีเหตุผลสองสามประการที่คุณอาจพบไฟล์ 0 ไบต์ในระบบ Linux ของคุณประการแรก อาจเป็นไปได้ว่าไฟล์นั้นไม่มีอยู่จริงหากคุณพยายามเข้าถึงไฟล์โดยใช้ ls -l คุณจะเห็นว่าไฟล์นั้นไม่มีอยู่จริงในกรณีนี้ คุณอาจต้องตรวจสอบว่ามีไฟล์อยู่บนดิสก์หรือไม่ และหากไม่มี ให้สร้างมันขึ้นมา ประการที่สอง เป็นไปได้ว่าไฟล์มีขนาดเล็กเกินไปที่จะตรวจพบโดย ls -lไฟล์ที่มีขนาดเล็กกว่า 1 KB โดยทั่วไปจะถูกละเว้นโดย ls -l และจะแสดงเป็นศูนย์ไบต์ในเอาต์พุตสุดท้าย ระบบไฟล์บางระบบ (เช่น ext2) สามารถรายงานไฟล์ที่มีขนาด 0 ไบต์ว่ามีการเติมข้อมูลครบถ้วนแม้ว่าจะไม่มีข้อมูลก็ตาม อย่างไรก็ตาม ในทุกกรณี โดยปกติแล้วจะง่ายที่สุดที่จะตรวจสอบว่าไฟล์มีอยู่จริงและมีความเหมาะสม ขนาดก่อนที่จะพยายามเข้าถึง หากคุณยังคงไม่พบสิ่งที่ต้องการหลังจากตรวจสอบไฟล์ระบบและไดเรกทอรีอย่างละเอียดแล้ว โปรดติดต่อผู้ดูแลระบบหรือฝ่ายสนับสนุนด้านเทคนิคเพื่อขอความช่วยเหลือเพิ่มเติม"

0bytefiles: คำที่ใช้เมื่อระบบไฟล์ linux รายงานไฟล์ว่าไม่มีข้อมูล แม้ว่าจริง ๆ แล้วอาจไม่มีอะไรเลยเนื่องจากข้อจำกัดด้านขนาด หรือเนื่องจากโปรแกรมอื่นได้ประมวลผล/ใช้ข้อมูลดังกล่าวแล้วในขณะเดียวกันบนคอมพิวเตอร์/อุปกรณ์อื่น เป็นต้น สิ่งนี้เกิดขึ้น โดยทั่วไปแล้วจะมีไฟล์ขนาดเล็กมาก (

ฉันจะลบไฟล์ 0 ไบต์ใน Linux ได้อย่างไร

มีสองสามวิธีในการลบไฟล์ 0 ไบต์ใน Linuxวิธีหนึ่งคือการใช้คำสั่ง findคำสั่ง find สามารถใช้เพื่อค้นหาไฟล์และไดเร็กทอรีที่ไม่มีข้อมูลหรือมีข้อมูลน้อยกว่า 0 ไบต์หากต้องการลบไฟล์ด้วย find คุณสามารถใช้ตัวเลือก -deleteตัวอย่างเช่น หากคุณต้องการลบไฟล์ test.txt คุณสามารถใช้คำสั่งต่อไปนี้:

หา . -type f -delete test.txt

อีกวิธีในการลบไฟล์ 0 ไบต์ใน Linux คือการใช้คำสั่ง rmคำสั่ง rm สามารถใช้เพื่อลบไฟล์และไดเร็กทอรีหากต้องการลบไฟล์ด้วย rm คุณสามารถใช้ตัวเลือก -rตัวอย่างเช่น หากคุณต้องการลบไฟล์ test.txt ออกจากคอมพิวเตอร์ คุณสามารถใช้คำสั่งต่อไปนี้:

การทดสอบ rm –r

การลบไฟล์ 0 ไบต์ใน Linux ปลอดภัยหรือไม่

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

อะไรทำให้ไฟล์ 0 ไบต์ใน Linux

มีหลายสาเหตุที่คุณอาจเห็นไฟล์ 0 ไบต์ในระบบไฟล์ Linux ของคุณสาเหตุทั่วไปบางประการ ได้แก่:

คำสั่ง find ของ Linux ค้นหาศูนย์ไบต์ (เร็กคอร์ดความยาวเป็นศูนย์) โดยปกติเกิดจากปัจจัยอย่างน้อยหนึ่งอย่าง เช่น การลบชิ้นส่วนขนาดใหญ่ (> 1 MiB) การติดตั้งพาร์ติชั่นที่ไม่ได้ต่อเชื่อมด้วยประเภทระบบไฟล์ที่เข้ากันไม่ได้ (เช่น ext2 บน ext

คำสั่งต่อไปนี้แสดงวิธีการแสดงรายการไดเร็กทอรีศูนย์ไบต์ (ตัวเลือก -L):

เอาต์พุต "ls -l":

รวม 4 drwxr-xr-x 2 รูทราก 4096 6 ธ.ค. 09:4

ใน "ls -ld" เราจะเห็นเพียง "." ไดเร็กทอรีไม่มีเนื้อหาในขณะที่ไดเร็กทอรี ".bash_history" มีไบนารีที่ปฏิบัติการได้ของ bash อยู่ภายใน ดังนั้นกระบวนการทุบตีจึงทำงานสำเร็จแม้จะไม่พบเนื้อหาภายใน ". ." ไดเรกทอรีเอง!พฤติกรรมนี้เกิดขึ้นเพราะ "/" ไดเร็กทอรีไม่มีรายการที่ผู้ใช้ทั่วไปอ่านได้ในขณะที่ ".bash_history" มีเชลล์สคริปต์ที่รันโดยผู้ใช้ปัจจุบัน ดังนั้นคำสั่ง ls จึงไม่พิมพ์อะไรเกี่ยวกับ "/" แม้ว่ามันจะมีศูนย์ไบต์!

หากเราต้องการให้คำสั่ง ls พิมพ์ขนาดรวม (เป็นไบต์) พร้อมกับแต่ละรายการใน "/" เราสามารถใช้ตัวเลือก "-t" ดังต่อไปนี้:"ls -lt":

รวม 8192 drwxr-xr-x 2 ไม่มีใคร ไม่มีใคร 4096 5 ม.ค. 11:2

  1. คุณได้ลบหรือตัดไฟล์ขนาดใหญ่ แต่ข้อมูลบางส่วนยังไม่ถูกล้างออกจากดิสก์ คุณได้ติดตั้งพาร์ติชั่นที่มีประเภทระบบไฟล์ที่ไม่ถูกต้อง คุณได้ทำให้ระบบไฟล์ของคุณเสียหาย คุณกำลังใช้ Linux เวอร์ชันที่ไม่รองรับแบบกระจาย ไฟล์ ฮาร์ดไดรฟ์ของคุณเต็ม คอมพิวเตอร์ของคุณไม่มีฮาร์ดแวร์บางตัว มีบางสิ่งที่ปิดกั้นไม่ให้สแกนแผนผังไดเร็กทอรี มีบางอย่างที่บล็อกเคอร์เนลไม่ให้เข้าถึงเซกเตอร์ของดิสก์ มีบางอย่างที่ทำให้ระบบไฟล์ของคุณเสียหาย มีซอฟต์แวร์บางตัวที่รบกวนการทำงานของระบบไฟล์ปกติโดยส่วนใหญ่ การแก้ไขไฟล์ 0 ไบต์ใน Linux ทำได้ง่ายดายเพียงแค่กู้คืนประเภทระบบไฟล์ที่ถูกต้องบนพาร์ติชั่นของคุณ ล้างข้อมูลที่ถูกละเลย และ/หรือซ่อมแซมระบบไฟล์ที่เสียหายโดยใช้ fsck หรือยูทิลิตี้อื่น อย่างไรก็ตาม อาจมีบางครั้งที่เป็นไปไม่ได้ เพื่อแก้ไขปัญหาโดยไม่ต้องติดตั้งระบบปฏิบัติการของคุณใหม่.. ในกรณีดังกล่าว คุณอาจต้องกู้คืนข้อมูลที่สูญหายโดยการฟอร์แมตฮาร์ดไดรฟ์ใหม่และ เริ่มต้นใหม่..นี่คือเคล็ดลับบางประการในการค้นหาและแก้ไขไฟล์ 0 ไบต์ใน Linux: ตรวจสอบว่ามีไฟล์ขนาดใหญ่ที่ถูกลบหรือถูกตัดทอนหรือไม่ หากเป็นเช่นนั้น อาจทำให้เกิดปัญหากับการจัดสรรพื้นที่ดิสก์และส่งผลให้ไฟล์เป็น 0 ไบต์ ตรวจสอบให้แน่ใจว่า พาร์ติชั่นทั้งหมดในคอมพิวเตอร์ของคุณได้รับการติดตั้งอย่างถูกต้อง หากไม่เป็นเช่นนั้น แสดงว่าบล็อกของข้อมูลไม่สามารถเข้าถึงได้อย่างถูกต้อง ตรวจสอบว่าคุณใช้ Linux เวอร์ชันที่ถูกต้อง เวอร์ชันเก่าบางเวอร์ชันไม่สนับสนุนไฟล์ที่กระจัดกระจายซึ่งอาจนำไปสู่ ปัญหาเกี่ยวกับการสร้างดัชนีและการค้นหาพื้นที่ว่างบนดิสก์ ลองเรียกใช้ fsck -a /dev/sdX เพื่อตรวจสอบความเสียหาย หากทุกอย่างล้มเหลว ให้พิจารณาฟอร์แมตฮาร์ดไดรฟ์ของคุณและเริ่มต้นใหม่ คู่มือนี้สร้างขึ้นตามเนื้อหาที่พบใน http://www-0ibmcomputersystems ...filesystems/linux_find_0byte_files/.
  2. , ความเสียหายของสื่อจัดเก็บข้อมูลพื้นฐาน (เช่น อาร์เรย์ RAID) ฯลฯ...
  3. drwx------ 2 รูทรูท 4096 25 พ.ย. 21:3 น. lrwxrwxrwx 1 รูทรูท 10 25 พ.ย. 21:3bash_history -> ../../bin/bash lrwxrwxrwx 1 รูทรูท 10 พ.ย. 25 21:37 น. -> ../../bin
  4. drwx------ 2 ไม่มีใคร ไม่มีใคร 4096 5 ม.ค. 11:2 น. lrwxrwxrwx 1 ไม่มีใครไม่มีใคร 10 5 ม.ค. 11:2bash_history -> ../../bin/sh -c 'echo $PWD' lrwxrwxrwx 1 ไม่มีใครไม่มีใคร 10 ม.ค. 5 11:27 bin -> ..

ฉันจะป้องกันไม่ให้ไฟล์ 0 ไบต์ปรากฏในระบบ Linux ของฉันได้อย่างไร

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

การลบไฟล์ 0 ไบต์จะช่วยปรับปรุงประสิทธิภาพของระบบ myLinux หรือไม่

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

มีผลกระทบเชิงลบใด ๆ ของการลบไฟล์ 0 ไบต์ในLinux หรือไม่?

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

ฉันสามารถทำอะไรกับ 0bytefiles นอกเหนือจากการลบ

นอกจากนี้ยังสามารถใช้ 0bytefiles เพื่อสร้างไฟล์ใหม่ที่มีศูนย์ไบต์นอกจากนี้ยังสามารถใช้เพื่อลบไฟล์ที่มีขนาดใหญ่กว่า 0 ไบต์ได้อีกด้วยสุดท้ายนี้ยังสามารถใช้เพื่อล้างพื้นที่ดิสก์ด้วยการลบไฟล์ที่ไม่ได้ใช้