Dalam nada yang sama dengan Cepat membuat file besar di sistem Linux , saya ingin cepat membuat file besar di sistem Windows. Secara umum saya berpikir 5 GB. Konten tidak masalah. Perintah bawaan atau file batch pendek akan lebih disukai, tetapi saya akan menerima aplikasi jika tidak ada cara mudah lainnya.
windows
batch-file
Leigh Riffel
sumber
sumber
fsutil file createnew
TIDAK membuat file jarang:c:\>fsutil file createnew test.txt 0x100000
File c:\test.txt is created
c:\>fsutil sparse queryflag test.txt
This file is NOT set as sparse
Anda dapat menggunakan alat Sysinternals Contig . Ini memiliki
-n
saklar yang membuat file baru dengan ukuran tertentu. Tidak sepertifsutil
itu, itu tidak memerlukan hak administratif.sumber
contig
secara efektif pergi ke byte terakhir dan menulis satu di0
sana (lihat saja dengan Process Monitor). Windows kemudian mengisi sisanya dengan nol. Ini mungkin tentang seefisien yang Anda bisa dapatkan dengan file non-jarang dan pembuatan file berukuran sekitar 5 GiB hanya membutuhkan waktu beberapa detik bahkan pada hard disk saya. Saya kira saat itu saya sudah mencoba pada SSD atau dengan file yang lebih kecil. Tapi ini agak cepat (dan tentunya lebih cepat daripada menulis sendiri semua byte dari file kosong itu.Saya sedang mencari cara untuk menghasilkan file besar dengan data, bukan hanya file jarang. Datang melintasi teknik di bawah ini :
sumber
echo "This is just a sample line appended to create a big file.. " > dummy.txt for /L %i in (1,1,14) do type dummy.txt >> dummy.txt
(Jalankan kedua perintah di atas satu demi satu atau Anda dapat menambahkannya ke file batch.) Perintah di atas membuat file 1 MB dummy.txt dalam beberapa detik.Lihat RDFC http://www.bertel.de/software/rdfc/index-en.html
RDFC mungkin bukan yang tercepat, tetapi tidak mengalokasikan blok data. Yang paling cepat harus menggunakan API tingkat lebih rendah untuk hanya mendapatkan rantai klaster dan memasukkannya ke MFT tanpa menulis data.
Berhati-hatilah karena tidak ada peluru perak di sini - jika "penciptaan" kembali secara instan itu berarti Anda mendapatkan file jarang yang hanya memalsukan file besar, tetapi Anda tidak akan mendapatkan blok data / rantai sampai Anda menulis ke dalamnya. Jika Anda baru saja membaca, Anda akan mendapatkan angka nol yang sangat cepat yang dapat membuat Anda percaya bahwa drive Anda tiba-tiba menjadi sangat cepat :-)
sumber
Periksa Alat Kit Sumber Daya Windows Server 2003 . Ada utilitas bernama Creatfil.
Ini mirip dengan mkfile di Solaris.
sumber
Saya membutuhkan file 10 GB biasa untuk pengujian, jadi saya tidak bisa menggunakan
fsutil
karena ini membuat file jarang (terima kasih @ZXX).Saya ingin membuat file 10 GB, tetapi karena alasan tertentu hanya muncul sebagai 4 GB, jadi saya ingin aman dan berhenti di 4 GB. Jika Anda benar-benar ingin memastikan file Anda akan ditangani dengan baik oleh sistem operasi dan aplikasi lain, berhentilah mengembangkannya pada 1 GB.
sumber
rm
adalah perintah Unix / Linux, sedangkan perintahdel
DOS / Windows? ...%i
tetapi dalam file batch Anda menggunakan tanda persen ganda, seperti%%i
.@echo off
, jadi jelas a.bat
. Itu sebabnya ada dua persen tanda.file-4gb.txt
sebelum Anda membuatnya? Bukankah itu menghasilkan kesalahan? Apakah Anda benar-benar bermaksud membuatfile-4gb.txt
di baris itu? Atau ganti namafile-big.txt
file lama ? Ini tidak jelas, bahkan untuk file batch. Jika Anda bermaksud untuk mengganti namanya, maka perintah yang Anda cari mungkinren
. Sepertiren file-big.txt file-4gb.txt
. Saya pikir Anda bingung dengan iturm
.Buka Windows Task Manager, temukan proses terbesar yang Anda jalankan klik kanan, dan klik
Create dump file
.Ini akan membuat file relatif terhadap ukuran proses dalam memori di folder sementara Anda.
Anda dapat dengan mudah membuat file berukuran dalam gigabytes.
sumber
Pendek dari menulis aplikasi lengkap, kami orang-orang Python dapat mencapai file ukuran apa pun dengan empat baris, potongan yang sama pada Windows dan Linux (
os.stat()
garis hanya cek):sumber
PowerShell one-liner untuk membuat file
C:\Temp
untuk mengisi disk C: hanya menyisakan 10 MB:sumber
Menggunakan:
sumber
int
? Apakah ini akan berfungsi untuk file 5 GB? Apakah ini terbatas pada 2 atau 4 GB? Parameter ketigaSetFilePointer()
adalah 0 berarti tidak akan berfungsi untuk file 5 GB.Saya sedang mencari cara untuk membuat file boneka besar dengan alokasi ruang baru-baru ini. Semua solusi terlihat canggung. Akhirnya saya baru saja memulai
DISKPART
utilitas di Windows (tertanam sejak Windows Vista):Di mana MAXIMUM adalah ukuran file yang dihasilkan, 20 GB di sini.
sumber
Saya menemukan sebuah utilitas luar biasa yang dapat dikonfigurasi di https://github.com/acch/genfiles .
Ini mengisi file target dengan data acak, sehingga tidak ada masalah dengan file jarang, dan untuk tujuan saya (pengujian algoritma kompresi) memberikan tingkat kebisingan putih yang bagus.
sumber
File temp harus disimpan dalam Folder Windows Temp. Berdasarkan jawaban dari Rod Anda dapat menggunakan liner berikut untuk membuat file temp 5 GB yang mengembalikan nama file
Penjelasan:
[System.IO.Path]::GetTempFileName()
menghasilkan nama file acak dengan ekstensi acak di Windows Temp Folder[System.IO.File]::Create($_)
yang membuat file.SetLength(5gb)
. Saya sedikit terkejut menemukan, bahwa PowerShell mendukung Byte Conversion , yang sangat membantu..close
agar aplikasi lain dapat mengaksesnya;$_
nama file dikembalikan dan dengan| ? { $_ }
itu dipastikan bahwa hanya nama file dikembalikan dan bukan string kosong dikembalikan oleh[System.IO.File]::Create($_)
sumber
Cara paling sederhana yang saya temukan adalah utilitas gratis ini: http://www.mynikko.com/dummy/
Membuat file dummy dengan ukuran sewenang-wenang yang diisi dengan spasi atau diisi dengan konten yang tidak dapat dikompresi (pilihan Anda). Berikut screenshotnya:
sumber
Biasa 'C ... ini dibangun di bawah MinGW GCC pada Windows XX dan harus bekerja pada platform C' generik '.
Ini menghasilkan file null dengan ukuran tertentu. File yang dihasilkan BUKAN hanya entri ruang-penghuni direktori, dan pada kenyataannya menempati jumlah byte yang ditentukan. Ini cepat karena tidak ada penulisan aktual terjadi kecuali byte yang ditulis sebelum tutup.
Contoh saya menghasilkan file yang penuh dengan nol - ini bisa bervariasi berdasarkan platform; program ini pada dasarnya mengatur struktur direktori untuk data apa pun yang berkeliaran.
sumber
Saya menemukan solusi menggunakan DEBUG di http://www.scribd.com/doc/445750/Create-a-Huge-File , tapi saya tidak tahu cara mudah untuk skrip dan sepertinya tidak bisa untuk membuat file yang lebih besar dari 1 GB.
sumber
... 1 MB file dummy.txt dalam beberapa detik.
Lihat di sini: http://www.windows-commandline.com/how-to-create-large-dummy-file/
sumber
Anda dapat menggunakan perintah PowerShell kucing.
Pertama buat file teks sederhana dengan beberapa karakter. Semakin banyak karakter awal yang Anda masukkan, semakin cepat ia menjadi lebih besar. Sebut saja out.txt. Kemudian di Powershell:
Tunggu selama itu perlu untuk membuat file cukup besar. Lalu tekan ctrl-c untuk mengakhirinya.
sumber
Anda dapat mencoba kode C ++ ini:
Mungkin perlu beberapa saat untuk menghasilkan tergantung pada kecepatan CPU Anda ...
sumber
Jawaban sederhana dengan Python: Jika Anda perlu membuat file teks nyata yang besar, saya hanya menggunakan
while
loop sederhana dan mampu membuat file 5 GB dalam waktu sekitar 20 detik. Saya tahu ini kasar, tetapi cukup cepat.sumber
Cepat dieksekusi atau cepat mengetik pada keyboard? Jika Anda menggunakan Python di Windows, Anda dapat mencoba ini:
sumber
Solusi GUI lain: WinHex.
Berlawanan dengan beberapa solusi yang sudah diajukan, itu sebenarnya menulis data (kosong) pada perangkat.
Ini juga memungkinkan untuk mengisi file baru dengan pola yang dipilih atau data acak:
sumber
Saya telah membuat beberapa tambahan pada
fsutil
metode yang sama seperti yang disebutkan dalam jawaban yang dipilih. Ini untuk membuat file dengan banyak ekstensi berbeda dan / atau dari berbagai ukuran.Kode dapat dikloning dari https://github.com/iamakidilam/bulkFileCreater.git
sumber