Skapa en stor fil från kommandoraden eller diskverktyget för teständamål

Stora tomma filer används ofta för teständamål under diskåtkomsttest, utveckling, QA, nollställning av data och skript. Även om det verkligen inte är tillämpligt för de flesta användare, är det enkelt att göra det vem som helst kan prova även om du inte har något specifikt behov.

Vi täcker tre sätt att snabbt generera filer av nästan vilken storlek som helst, två kommer att använda kommandoraden; en som är operativsystem agnostic och den andra MacOS och Mac OS X specifika, och ett annat mer användarvänligt tillvägagångssätt som använder Disk Utility app som är inbyggd i Mac OS X.


Det här är uppenbarligen riktat till lite mer avancerade användare med viss flyt i kommandoraden. För att följa med, öppna appen Terminal för att komma igång.

Skapa en stor fil från kommandoraden

Det enklaste sättet att direkt generera en stor tom fil är att använda kommandot 'mkfile', som omedelbart kan skapa en fil av vilken storlek som helst, oavsett om den är liten i byte eller stor i gigabyte. Syntax för mkfile är som följer:

mkfile -n size[b|k|m|g] filename

För att till exempel skapa en 1GB-fil som heter "LargeTestFile" på skrivbordet skulle kommandot vara:

mkfile -n 1g ~/Desktop/LargeTestFile

Filen skapas direkt och tar upp hela storleken. Stora filer som skapas från mkfile är fulla av nollor.

Du kan bekräfta den genererade filstorleken med kommandot Get Get Info, eller genom att använda ls:

ls -lh ~/Desktop/LargeTestFile

Den enda nackdelen med kommandot mkfile är att det verkar vara begränsat till Mac OS X, vilket innebär att om du letar efter en plattformskompatibel lösning som fungerar över andra unix- och linuxvariationer, kommer du att vilja använda "dd" istället.

Dd-kommandot är lite mindre uppenbart att använda än mkfile, men det är stil ganska rakt framåt, du måste ange ett filnamn, en blockstorlek och ett blockräkning:

dd if=/dev/zero of=FileName bs=1024 count=1000

Ett annat tillvägagångssätt är att använda sökflaggen med en viss enkel multiplikation av en megabyte-blockstorlek (1024), så följande kommando skulle skapa en fil som är 100 MB stor (1024 x 100):

dd if=/dev/zero of=LargeTestFile.img bs=1024 count=0 seek=$[1024*100]

Den senare multipliceringsmetoden från CyberCit kan vara lite enklare om du inte är bra på att uppskatta stora byte storlekar.

Skapa en enorm fil med skivverktyg

Även om de flesta användare som vill skapa stora tomma filer, förmodligen kommer att föredra kommandoraden, kan du också använda Disk Utility.

  • Starta Disk Utility och välj "New Image"
  • Namn filen som lämpligt, dra sedan ner undermenyn "Storlek" och välj en filstorlek som passar dina behov
  • Ignorera alla andra inställningar och välj "Skapa"

DiskUtility skapar en skivavbild av den angivna storleken, vilket fungerar bra för testning. Leta reda på den nybildade DMG-enheten i Finder och du ser att den tar upp hela storleken som anges, i det här fallet storleken på en 2, 6 GB DVD:

Till skillnad från dd eller mkfile kommer skivavbildningen faktiskt att skrivas som standard om inte annat valts, vilket kanske inte är användbart för dessa utvecklingsändamål.

Oavsett vilken metod du använder, kommer du förmodligen att ta bort de stora testfilerna efteråt, annars kan din hårddisk snabbt bli uppskattad av de oanvända värdelösa testfilerna med enorm storlek. Om du skapade testfilerna i en dold mapp och du inte längre kan hitta dem själv, glöm inte att du kan göra specifika sökningar med filstorlek med Spotlight i OS X Finder för att snabbt spåra ett stort objekt i filen systemet.