দ্রুত একটি উইন্ডোজ সিস্টেমে বড় ফাইল তৈরি করুন


245

দ্রুত একটি লিনাক্স সিস্টেমে একটি বৃহত ফাইল তৈরি করার মতো শিরাতে আমি একটি উইন্ডোজ সিস্টেমে দ্রুত একটি বড় ফাইল তৈরি করতে চাই। বড় আকারে আমি 5 জিবি ভাবছি। বিষয়বস্তু কোন ব্যাপার না। একটি অন্তর্নির্মিত কমান্ড বা সংক্ষিপ্ত ব্যাচের ফাইলটি পছন্দনীয় হবে তবে অন্য কোনও সহজ উপায় না থাকলে আমি একটি আবেদন গ্রহণ করব।

উত্তর:


399
fsutil file createnew <filename> <length>

<length>বাইট যেখানে হয়

fsutil যদিও প্রশাসনিক সুবিধাগুলি প্রয়োজন।


6
@ জেডএক্সএক্স +1 আমার প্রয়োজনে স্থানটি অনুপলব্ধ হিসাবে দেখার জন্য আমার কেবল ফাইল সিস্টেমের প্রয়োজন ছিল, তবে অন্য কারও যদি এটির প্রয়োজন হয় তবে আপনার তথ্য সহায়ক।
লেইফ রিফেল

22
fsutil ফাইল createnew একটি স্পার্স ফাইল তৈরি করে না
প্রতি মাইল্ডনার

7
"fsutil sparse setflag temp.txt" স্পার্স পতাকা সেট করে, এটি একটি স্পার ফাইল করে। "fsutil sparse setrange temp.txt 0 1024" স্বল্পতার পরিসীমা নির্ধারণ করে :)
কোল্ডব্ল্যাকাইস

প্রশাসকের সুযোগ-সুবিধা ছাড়াই কি উপায় আছে?
উইজলগ

3
@ জেডএক্সএক্স fsutil file createnewবিরল ফাইল তৈরি করে না: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
ivan_pozdeev

36

আপনি সিসিনটার্নালস কনটিগ সরঞ্জামটি ব্যবহার করতে পারেন । -nএটিতে একটি স্যুইচ রয়েছে যা প্রদত্ত আকারের একটি নতুন ফাইল তৈরি করে। বিপরীতে fsutil, এটি প্রশাসনিক সুবিধার প্রয়োজন হয় না।


2
কি দারুন! ডাউনলোড এবং চালানোর জন্য খুব দ্রুত। আমি যে লাইনটি ব্যবহার করেছি তা হ'ল মি: \ কনটিগ-এন এম: \ স্পেসবফার.টিএমপি 5368709120
লেইফ রিফেল

6
কেবল এটি পরীক্ষা করতে চান যে এটি কোনও ছড়িয়ে ছিটিয়ে থাকা ফাইল বা ফাইলটিতে আসলে কী ডেটা রয়েছে?
স্লোলাইফ

2
এটি কোনও স্পার ফাইল নয় (যতদূর আমি জানি) এবং ফাইলটি খালি।
জোয়

1
আমি এখানে বিভ্রান্ত হয়ে পড়েছি ... যদি এটি তাত্ক্ষণিক হয়, এবং এটি কোনও বিরল ফাইল না হয়, তবে এটি কীভাবে প্রকৃতপক্ষে ডিস্কের স্থান ব্যবহার করবে?
জেসন এস

2
@ জেসনস: contigকার্যকরভাবে শেষ বাইটে গিয়ে 0সেখানে একটি একক লিখেছেন (কেবলমাত্র প্রসেস মনিটরের সাথে দেখুন)। উইন্ডোজ তারপরে বাকীটি জিরো দিয়ে পূর্ণ করে। এটি সম্ভবত তত দক্ষ হিসাবে আপনি অপ্রয়োজনীয় ফাইলগুলির সাথে পেতে পারেন এবং 5 GiB আকারের একটি ফাইল তৈরি করতে আমার হার্ড ডিস্কে এমনকি কয়েক সেকেন্ড সময় লাগে। আমার অনুমান তখনই আমি এসএসডি বা ছোট ফাইল দিয়ে চেষ্টা করেছি। কিন্তু এটা নিজের দ্বারা বরং দ্রুত (এবং স্পষ্টভাবে দ্রুত খালি ফাইল সব বাইট লিখতে চেয়ে আছে।
জোয়ি

23

আমি কেবল স্পার্স ফাইল নয়, ডেটা সহ বড় ফাইলগুলি তৈরি করার উপায় অনুসন্ধান করছিলাম। নীচের কৌশলটি জুড়ে এসেছিল :

আপনি যদি সত্যিকারের ডেটা সহ কোনও ফাইল তৈরি করতে চান তবে নীচের কমান্ড লাইন স্ক্রিপ্টটি ব্যবহার করতে পারেন।

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

(উপরের দুটি কমান্ড একের পর এক চালান বা আপনি এগুলি একটি ব্যাচের ফাইলে যুক্ত করতে পারেন।)

উপরের কমান্ডগুলি কয়েক সেকেন্ডের মধ্যে 1 এমবি ফাইল dummy.txt তৈরি করে ...


6
উপরের লিঙ্কটি থেকে নিষ্কাশন করুন: আপনি যদি সত্যিকারের ডেটা সহ কোনও ফাইল তৈরি করতে চান তবে নীচের কমান্ড লাইন স্ক্রিপ্টটি ব্যবহার করতে পারেন। 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 (উপরের দুটি কমান্ড একের পর এক চালান বা আপনি এগুলি একটি ব্যাচের ফাইলে যুক্ত করতে পারেন।) উপরের কমান্ডগুলি কয়েক সেকেন্ডের মধ্যে একটি 1 এমবি ফাইল ডামি.এসটিএসটি তৈরি করে।
টনি স্টার্ক

মনোযোগ দিন: আপনাকে অবশ্যই প্রথম লাইনটি অনুলিপি করতে হবে, এন্টার টিপুন এবং দ্বিতীয় লাইনটি অনুলিপি করতে হবে। আমি পুরো স্ক্রিপ্টটি আমার শেলের মধ্যে অনুলিপি করার চেষ্টা করেছি তবে কিছুই খুশি হয়নি।
মাগিরানু

15

আরডিএফসি http://www.bertel.de/software/rdfc/index-en.html দেখুন

আরডিএফসি সম্ভবত দ্রুততম নয় তবে এটি ডেটা ব্লকগুলি বরাদ্দ করে। একেবারে দ্রুততমটিকে কেবল ক্লাস্টার চেইনগুলি অর্জন করতে এবং ডেটা না লিখে এমএফটি-তে রেখে দিতে নিম্ন স্তরের এপিআই ব্যবহার করতে হবে ।

এখানে কোনও রূপালী বুলেট নেই - সাবধানতা অবলম্বন করুন - যদি "সৃষ্টি" তাত্ক্ষণিকভাবে ফিরে আসে তবে এর অর্থ হল আপনার কাছে একটি ছড়িয়ে ছিটিয়ে থাকা ফাইল রয়েছে যা কেবলমাত্র একটি বড় ফাইল নকল করে, তবে আপনি এটি না লিখে ডেটা ব্লক / চেইন পাবেন না। আপনি যদি কেবলমাত্র পড়েন তবে আপনি খুব দ্রুত শূন্য পেয়ে যাবেন যা আপনাকে বিশ্বাস করতে পারে যে আপনার ড্রাইভটি হঠাৎ করেই অত্যন্ত উদ্বেগজনকভাবে দ্রুত হয়েছে :-)


এটি সেরা উত্তর বলে মনে হচ্ছে। FSUTIL একটি স্পার ফাইল তৈরি করে যা অনেক ক্ষেত্রে বৈধ পরীক্ষার দৃশ্য নয়। সিসিনটার্নালস কনটেইগ কখনই আমার পক্ষে কাজ করে বলে মনে হয় না, যখন আমি "কনটিগ-লেন্ডফিল.বিন 00০০০০০০০০০০ এর মতো একটি কমান্ড ব্যবহার করি এটি আকারে একটি ১.GB জিবি ফাইল তৈরি করে ... ??? আরডিএফসির জন্য ধন্যবাদ কারণ এটি প্রথম চেষ্টা করে নিখুঁতভাবে কাজ করেছে আমার এটিএ ডিস্কের সর্বাধিক লেখার গতি
সাইক্লোন0044

যেমনটি উপরে বলা হয়েছে, এফএসটিল "ক্রিয়েইনউ" বিচ্ছিন্ন ফাইল তৈরি করে না, এটি কেবল অনুরোধ করা ফাইলের জন্য অনুরোধ করা স্থানটি (অর্থাত্ পূর্ণ স্থান) বরাদ্দ করে (এমএফটি-তে)। তারপরে যদি আপনি ফাইলটির বৈশিষ্ট্যগুলি পরীক্ষা করেন তবে বরাদ্দ আকার (বিরক্তিকরভাবে "ডিস্কের উপরের আকার" নামকরণ করা হয় কারণ এটি কোনও ডিভাইসে থাকতে পারে যা "ডিস্ক" নয়) প্রকৃত আকারের সাথে একই বা খুব কাছাকাছি। জিরোতে পুরোপুরি ভরা একটি আসল স্পার্স ফাইলের আকার খুব ছোট হবে size আমি খুঁজে পেয়েছি যে একমাত্র সরঞ্জাম যা কোনও অ-স্পার্স ফাইলকে একটি স্পার্স ফাইলগুলিতে পরিণত করতে পারে (এবং প্রকৃতপক্ষে এটির আকার হ্রাস করে, কেবল এটি পতাকাঙ্কিত করে না) হ'ল স্পার্সটেষ্ট।
গ্যাব্রিয়েলবি

13

পরীক্ষা করে দেখুন উইন্ডোজ সার্ভার 2003 রিসোর্স কিট সরঞ্জাম । ক্রিয়েটিফিল নামে একটি ইউটিলিটি রয়েছে।

 CREATFIL.EXE
 -? : This message
 -FileName -- name of the new file
 -FileSize -- size of file in KBytes, default is 1024 KBytes

এটি সোলারিসের এমকেফাইলের অনুরূপ।


1
আমি বরং সংস্থান কিট ডাউনলোড করতে হবে না।
লেইফ রিফেল

আপনার কেবলমাত্র রিসোর্স কিট থেকে 1 এক্স প্রয়োজন, আপনার উত্পাদন সিস্টেমে আপনার পুরো জিনিসটি থাকতে হবে না।
বায়রন হিটলক

1
আমি এটি দিয়ে চেষ্টা করব, তবে অতিরিক্ত ফাইল নির্ভরতা না থাকায়।
লেইফ রিফেল

ফাইলটি এখন আমার জন্য সঠিকভাবে ডাউনলোড হচ্ছে না তবে আমি জোহানেস রোসেলের দ্বারা উল্লিখিত কন্টিগ সরঞ্জামের চেয়ে দ্রুতগতির তা কল্পনা করতে পারি না।
লেইগ রিফেল

1
ধন্যবাদ! ডাউনলোড করা প্যাকেজটি rktools.exe এবং প্রসারিত হলে এটি 11.7 মেগাবাইট এবং 18.2 এমবি। ওহ, এবং এটি "ক্রিয়েটিফিল.এক্সই" এবং "ক্রিয়েফিল.এক্সই" নয়। এই ফাইলটি একা 5.5 কেবি আকারের এবং এটিই আপনার সত্যিকারের প্রয়োজন। কোয়াড কোর 3.0 গিগাহার্জ ইন্টেল সিপুতে 1 জিবি ফাইল তৈরি করতে আমার 1 মিনিটেরও কম সময় লেগেছে। উপরের পোস্ট হিসাবে fsutil.exe সরঞ্জাম সহ, এটি তৈরি করতে এটি কেবল একটি সেকেন্ডের ভগ্নাংশ নেয়। সুতরাং এটি সত্য, সেই সরঞ্জামটি স্পার্স ফাইল তৈরি করে। এটি আরও বড়, এটি 73,5 কেবি। পরীক্ষার উদ্দেশ্যে বৃহত ফাইল উত্পন্ন করার জন্য এইটি আরও ভাল।
সমীর

11

পরীক্ষার জন্য আমার নিয়মিত 10 জিবি ফাইলের দরকার ছিল, তাই আমি ব্যবহার করতে পারিনি fsutilকারণ এটি স্পার্স ফাইল তৈরি করে (ধন্যবাদ @ জেডএক্সএক্স)।

@echo off

:: Create file with 2 bytes
echo.>file-big.txt

:: Expand to 1 KB
for /L %%i in (1, 1, 9) do type file-big.txt>>file-big.txt

:: Expand to 1 MB
for /L %%i in (1, 1, 10) do type file-big.txt>>file-big.txt

:: Expand to 1 GB
for /L %%i in (1, 1, 10) do type file-big.txt>>file-big.txt

:: Expand to 4 GB
del file-4gb.txt
for /L %%i in (1, 1, 4) do type file-big.txt>>file-4gb.txt

del file-big.txt

আমি একটি 10 ​​জিবি ফাইল তৈরি করতে চেয়েছিলাম, তবে কোনও কারণে এটি কেবল 4 গিগাবাইট হিসাবে প্রদর্শিত হয়েছিল, তাই আমি নিরাপদে থাকতে চাই এবং 4 জিবি থামাতে চাই। আপনি যদি সত্যিই নিশ্চিত হতে চান যে আপনার ফাইলটি অপারেটিং সিস্টেম এবং অন্যান্য অ্যাপ্লিকেশনগুলি সঠিকভাবে পরিচালনা করবে, তবে এটি 1 জিবি থেকে প্রসারিত করা বন্ধ করুন।


আপনার একক শতাংশ অক্ষর ব্যবহার করা দরকার, দ্বিগুণ নয়। এছাড়াও, আপনার প্রথম বন্ধনীতে অতিরিক্ত স্থানের দরকার নেই। আমি আপনার জন্য এটি সম্পাদনা করব।
সমীর

আপনি এখানে অপারেটিং সিস্টেমটি কী সাথী ব্যবহার করেছেন? rm, একটি ইউনিক্স / লিনাক্স কমান্ড যখন delডস / উইন্ডোস কমান্ড ... কে?
সমীর

এটি কি ব্যাচের ফাইল বলে মনে করা হচ্ছে বা আপনি এই আদেশগুলি সরাসরি সেন্টিমিটারে জারি করবেন? সিঙ্গেল শতাংশের চিহ্নটি সিএমডিতে ব্যবহৃত হয়, %iতবে তবে ব্যাচের ফাইলে আপনি ডাবল শতাংশ চিহ্ন ব্যবহার করেন, পছন্দ করেন %%i
সমীর

@ স্যামি: এটি শুরু হয় @echo off, সুতরাং এটি স্পষ্টতই একটি .bat। এ কারণেই এর দ্বিগুণ শতাংশ লক্ষণ ছিল।
f.ardelian

ঠিক আছে, তাহলে আমরা ডাবল শতাংশের চিহ্নটি ফিরিয়ে আনতে চাইছি। file-4gb.txtআপনি এটি তৈরির আগে মুছবেন কেন ? এর ফলে কি ত্রুটি হবে না? আপনি কি আসলে file-4gb.txtএই লাইনে তৈরি করতে চেয়েছিলেন ? বা পুরানো file-big.txtফাইলটির নতুন নামকরণ করবেন ? এটি একটি ব্যাচের ফাইলের জন্যও অস্পষ্ট। যদি আপনি এটির নামকরণ বোঝাতে চেয়েছিলেন, তবে আপনি যে আদেশটি সন্ধান করেছিলেন সেটি সম্ভবত ren। লাইক ren file-big.txt file-4gb.txt। আমি মনে করি আপনি এটি নিয়ে বিভ্রান্ত হয়েছেন rm
সমীর

7

উইন্ডোজ টাস্ক ম্যানেজার খুলুন, ডান ক্লিকে আপনার চলমান সবচেয়ে বড় প্রক্রিয়াটি সন্ধান করুন এবং ক্লিক করুন Create dump file

এটি আপনার অস্থায়ী ফোল্ডারে মেমরির প্রক্রিয়া আকারের সাথে সম্পর্কিত একটি ফাইল তৈরি করবে।

আপনি সহজেই একটি গিগা বাইট আকারের একটি ফাইল তৈরি করতে পারেন।

এখানে চিত্র বিবরণ লিখুন

এখানে চিত্র বিবরণ লিখুন


2
চমৎকার সমাধান! বিভিন্ন আকার পেতে, আপনার বিভিন্ন ধরণের অ্যাপ্লিকেশন চলমান থাকলে সহায়ক
ডন

6

পূর্ণ অ্যাপ্লিকেশন লেখার সংক্ষিপ্তসার, পাইথন ছেলেরা উইন্ডোজ এবং লিনাক্সে চার লাইন, একই স্নিপেট (যে os.stat()লাইনটি কেবল একটি চেক) সহ কোনও আকারের ফাইলগুলি অর্জন করতে পারে :

>>> f = open('myfile.txt','w')
>>> f.seek(1024-1) # an example, pick any size
>>> f.write('\x00')
>>> f.close()
>>> os.stat('myfile.txt').st_size
1024L
>>>

1
একটি সমস্যা সমাধানের জন্য পাইথন ইনস্টল করা আসলে ওভারকিল। কেন কেবল পাওয়ারশেল বা সি # - gist.github.com/nadams810/6539070 এর মতো অন্তর্নির্মিত কিছু ব্যবহার করবেন না (সি # অ্যাপ্লিকেশনগুলি সংকলনের জন্য আপনার ভিজ্যুয়াল স্টুডিওরও প্রয়োজন নেই)।
নাটালি অ্যাডামস

1
। নেট, সি # এবং পাওয়ারশেল অগত্যা ক্রস প্ল্যাটফর্ম নয়।
জিমেল

1
এগুলি উইন্ডোজে তৈরি করা হয়েছে যা ওপি যা চেয়েছিল তা অনুমান করে (ধরে নিলে আপনার সিস্টেমটি সম্পূর্ণরূপে আপ টু ডেট রয়েছে)।
নাটালি অ্যাডামস

@NatalieAdams কিন্তু এই উত্তর হয় বেশ সহায়ক যদি আপনি ইতিমধ্যে পেয়েছেন পাইথন অন্যান্য সমস্যা সমাধানের জন্য ইনস্টল করা নেই। :)
ক্রিপটাইচ মনিকার সাথে

6

C:\Tempডিস্ক সি পূরণ করতে একটি ফাইল তৈরি করতে পাওয়ারশেল ওয়ান-লাইনার : মাত্র 10 এমবি রেখে:

[io.file]::Create("C:\temp\bigblob.txt").SetLength((gwmi Win32_LogicalDisk -Filter "DeviceID='C:'").FreeSpace - 10MB).Close

3
এটি কিছু আসল সামগ্রী বা স্পার ফাইল সহ ফাইল তৈরি করবে?
সামসেল্ববপ্রুবু

6

ব্যবহার করুন:

/*
Creates an empty file, which can take all of the disk
space. Just specify the desired file size on the
command line.
*/

#include <windows.h>
#include <stdlib.h>

int main (int argc, char* ARGV[])
{
    int size;
    size = atoi(ARGV[1]);
    const char* full = "fulldisk.dsk";
    HANDLE hf = CreateFile(full,
                           GENERIC_WRITE,
                           0,
                           0,
                           CREATE_ALWAYS,
                           0,
                           0);
    SetFilePointer(hf, size, 0, FILE_BEGIN);
    SetEndOfFile(hf);
    CloseHandle(hf);
    return 0;
}

কী int? এটি কি 5 জিবি ফাইলের জন্য কাজ করবে? এটি কি 2 বা 4 জিবি সীমাবদ্ধ? যেটির তৃতীয় প্যারামিটার SetFilePointer()0 এর পরামর্শ দেয় এটি 5 জিবি ফাইলের জন্য কাজ করবে না।
পিটার মর্টেনসেন

4

আমি সম্প্রতি স্থান বরাদ্দ সহ একটি বড় ডামি ফাইল তৈরির জন্য একটি উপায় খুঁজছিলাম। সমস্ত সমাধান বিশ্রী দেখায়। অবশেষে আমি সবে DISKPARTউইন্ডোজে ইউটিলিটি শুরু করেছি (উইন্ডোজ ভিস্তার পরে এম্বেড করা):

DISKPART
CREATE VDISK FILE="C:\test.vhd" MAXIMUM=20000 TYPE=FIXED

যেখানে MAXIMUM ফলাফল ফাইলের আকার, এখানে 20 গিগাবাইট।


এখন পর্যন্ত সেরা সমাধান।
ফ্র্যাঙ্ক এফওয়াইসি

আমার জন্য কাজ করে না। দুর্ভাগ্যক্রমে কোনও ফাইল তৈরি হয়নি। আমি প্রশাসক প্রিভিলিজেসের সাথে চেষ্টা করেছি tried
মাগিরানু

4

আমি একটি দুর্দান্ত ইউটিলিটি পেয়েছি যা https://github.com/acch/genfiles এ কনফিগারযোগ্য ।

এটি লক্ষ্যবস্তু ফাইলটিকে এলোমেলো ডেটা সহ পূরণ করে, তাই স্পার্স ফাইলগুলির সাথে কোনও সমস্যা নেই এবং আমার উদ্দেশ্যে (সংক্ষেপণের অ্যালগোরিদমগুলির পরীক্ষা করা) এটি সাদা স্তরগুলির একটি দুর্দান্ত স্তর দেয়।


এই ইউটিলিটিটি একটি একক ফাইল জাভা অ্যাপ্লিকেশন যা জাভা সহ যে কোনও প্ল্যাটফর্মে কাজ করা উচিত।
পল

@ মিউজিকপোলিস - লিঙ্কটি মারা গেছে
ডিসিপি

উল্লেখযোগ্য। দুর্ভাগ্যক্রমে, ছয় বছর পরে এটি হতে বাধ্য।
MusikPolice

3

টেম্প ফাইলগুলি উইন্ডোজ টেম্প ফোল্ডারে সংরক্ষণ করা উচিত। রডের উত্তরের ভিত্তিতে আপনি নিম্নলিখিত একটি লাইনার ব্যবহার করে 5 জিবি টেম্প ফাইল তৈরি করতে পারেন যা ফাইলটির নাম দেয়

[System.IO.Path]::GetTempFileName() | % { [System.IO.File]::Create($_).SetLength(5gb).Close;$_ } | ? { $_ }

ব্যাখ্যা:

  • [System.IO.Path]::GetTempFileName() উইন্ডোজ টেম্প ফোল্ডারে এলোমেলো এক্সটেনশন সহ একটি এলোমেলো ফাইলের নাম উত্পন্ন করে
  • পাইপলাইনটি [System.IO.File]::Create($_)ফাইলটি তৈরি করে এমন নামটি পাস করার জন্য ব্যবহৃত হয়
  • ফাইলের নামটি নতুন তৈরি করা ফাইলটিতে সেট করা আছে .SetLength(5gb)। আমি আবিষ্কার করে কিছুটা অবাক হয়েছিলাম, পাওয়ারশেল বাইট রূপান্তরকে সমর্থন করে যা সত্যই সহায়ক।
  • .closeঅন্যান্য অ্যাপ্লিকেশনগুলিকে এটি অ্যাক্সেস করার অনুমতি দিতে ফাইল হ্যান্ডেলটি বন্ধ করা দরকার
  • সঙ্গে ;$_ফাইলের নাম ফিরিয়ে দেওয়া হয় এবং | ? { $_ }এটা নিশ্চিত করা হয় যে শুধুমাত্র ফাইলের নাম ফিরিয়ে দেওয়া হয় এবং খালি স্ট্রিং দ্বারা ফিরে[System.IO.File]::Create($_)

3

আমি খুঁজে পাওয়া সবচেয়ে সহজ উপায় হ'ল এই নিখরচায় ইউটিলিটি: http://www.mynikko.com/dummy/

স্বেচ্ছাসেবী আকারের ডামি ফাইলগুলি তৈরি করে যা হয় ফাঁকা স্থানগুলিতে ভরা হয় বা অ-সংকোচনযোগ্য সামগ্রী (আপনার পছন্দ) দিয়ে পূর্ণ হয়। এখানে একটি স্ক্রিনশট:

এখানে চিত্র বর্ণনা লিখুন


3

সরল ওল 'সি ... এটি উইন্ডোজ এক্সএক্স-এ মিনিজিডব্লিউ জিসিসির অধীনে তৈরি হয় এবং যে কোনও' জেনেরিক 'সি প্ল্যাটফর্মে কাজ করা উচিত।

এটি একটি নির্দিষ্ট আকারের নাল ফাইল উত্পন্ন করে। ফলস্বরূপ ফাইলটি কেবল একটি ডিরেক্টরি স্থান-দখলকারী এন্ট্রি নয়, এবং বাস্তবে নির্দিষ্ট সংখ্যক বাইট দখল করে। এটি দ্রুত কারণ বন্ধের আগে লেখা বাইট ব্যতীত কোনও আসল লেখাগুলি ঘটে না।

আমার উদাহরণটি শূন্যে পূর্ণ একটি ফাইল তৈরি করে - এটি প্ল্যাটফর্মের দ্বারা পৃথক হতে পারে; এই প্রোগ্রামটি মূলত যা কিছু তথ্য ঘিরে রয়েছে তার জন্য ডিরেক্টরি কাঠামো সেট আপ করে।

#include <stdio.h>
#include <stdlib.h>

FILE *file;

int main(int argc, char **argv)
{
    unsigned long  size;

    if(argc!=3)
    {
        printf("Error ... syntax: Fillerfile  size  Fname \n\n");
        exit(1);
    }

    size = atoi(&*argv[1]);

    printf("Creating %d byte file '%s'...\n", size, &*argv[2]);

    if(!(file = fopen(&*argv[2], "w+")))
    {
        printf("Error opening file %s!\n\n", &*argv[2]);
        exit(1);
    }

    fseek(file, size-1, SEEK_SET);
    fprintf(file, "%c", 0x00);
    fclose(file);
}

আমি আপনাকে কীভাবে আপনার কোডটি ফর্ম্যাট করেছি তা পরীক্ষা করতে পরামর্শ দিই। এবং বিটিডব্লিউ। প্রশ্নটির ইতিমধ্যে একটি খুব ভাল উত্তর রয়েছে, এবং ফিসেক + ফরাইটটি ইতিমধ্যে পাইটন এবং উইনাপি-তে উপস্থাপন করা হয়েছে সুতরাং এটি কোনও সাহায্যের সামান্য। এটি দুর্দান্ত তবে আপনি একটি সম্পূর্ণ উদাহরণ সরবরাহ করেছেন। তার জন্য +1। তবে ইতিমধ্যে সমাধান হওয়া প্রশ্নের পুনরায় জবাব না দেওয়ার চেষ্টা করুন, এটি কেবলমাত্র সময়ের অপচয় যা আপনি কাউকে আরও কিছুটা সাহায্য করতে পারেন :)
কোয়েটজলকোটল

2

আমি http://www.scribd.com/doc/445750/Create-a-Huge-File এ DEBUG ব্যবহার করে একটি সমাধান পেয়েছি , তবে আমি এটির স্ক্রিপ্ট করার সহজ উপায় জানি না এবং এটি সক্ষম হতে পারে বলে মনে হয় না script 1 জিবি এর চেয়ে বড় ফাইল তৈরি করতে।


1
আপনি কি 5 টি ফাইল তৈরি করতে পারবেন না এবং সেগুলি যুক্ত করতে পারবেন? থ্রেডিং ব্যবহার করে সেগুলি একযোগে তৈরি করুন এবং তারপরে সংযোজন করুন: ডি
দাসৌকি

প্রোগ্রামিং না করে আমি এটি থ্রেড করতে পারি কিনা জানি না, তবে হ্যাঁ, আমার প্রয়োজনীয় আকারটি পেতে আমি কয়েকবার ফাইলটি অনুলিপি করতে পারি। আমার ক্ষেত্রে আমার নিজের ফাইলটি 5 গিগাবাইট হওয়ার দরকার নেই, কেবল স্থানটি ব্যবহৃত হয়েছে।
লেইফ রিফেল

2
থ্রেডিং শোনার সাহায্যে একাধিক ফাইলগুলিতে লিখন লেখা একটি ভয়ানক ধারণা, ধীরে ধীরে হার্ড ড্রাইভগুলি দেওয়া যায় ... এছাড়াও, এগুলিকে যুক্ত করা সময়ের নিরিখে মোটামুটি ব্যয়বহুল যাতে সম্ভবত "দ্রুত" মানদণ্ডটি ব্যর্থ হয়।
জোয়


2

আপনি বিড়াল পাওয়ারশেল কমান্ডটি ব্যবহার করতে পারেন।

প্রথমে কয়েকটি অক্ষর সহ একটি সাধারণ পাঠ্য ফাইল তৈরি করুন। আপনি যত বেশি প্রাথমিক অক্ষর প্রবেশ করেন, তত তাড়াতাড়ি বড় হয়। আসুন এটি কল করুন। Txt। তারপরে পাওয়ারশেল এ:

cat out.txt >> out.txt

ফাইলটিকে যথেষ্ট বড় করার জন্য যতক্ষণ অপেক্ষা করা উচিত। তারপরে এটি শেষ করতে ctrl-c টিপুন।


1

আপনি এই সি ++ কোডটি ব্যবহার করে দেখতে পারেন:

#include<stdlib.h>
#include<iostream>
#include<conio.h>
#include<fstream>
#using namespace std;

int main()
{
    int a;
    ofstream fcout ("big_file.txt");
    for(;;a += 1999999999){
        do{
            fcout << a;
        }
        while(!a);
    }
}

আপনার সিপিইউ গতির উপর নির্ভর করে উত্পন্ন করতে কিছুটা সময় লাগবে ...


পোস্টারটি দ্রুত জিজ্ঞাসা করলেন। এর জন্য একটি সি ++ সংকলক ইনস্টল করা প্রয়োজন।

1

পাইথনে সরল উত্তর: আপনার যদি একটি বড় আসল পাঠ্য ফাইল whileতৈরি করতে হয় তবে আমি কেবল একটি সাধারণ লুপ ব্যবহার করেছি এবং প্রায় 20 সেকেন্ডের মধ্যে 5 জিবি ফাইল তৈরি করতে সক্ষম হয়েছি। আমি জানি এটি অশোধিত, তবে এটি যথেষ্ট দ্রুত।

outfile = open("outfile.log", "a+")

def write(outfile):
    outfile.write("hello world hello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello world"+"\n")
    return

i=0
while i < 1000000:
    write(outfile)
    i += 1
outfile.close()

0

কার্যকর করতে দ্রুত বা একটি কীবোর্ডে টাইপ করতে দ্রুত? আপনি যদি উইন্ডোজে পাইথন ব্যবহার করেন তবে আপনি এটি ব্যবহার করে দেখতে পারেন:

cmd /k py -3 -c "with open(r'C:\Users\LRiffel\BigFile.bin', 'wb') as file: file.truncate(5 * 1 << 30)"

0

আরেকটি জিইউআই সমাধান: উইনহেক্স।

“File” > “New” > “Desired file size” = [X]
“File” > “Save as” = [Name]

ইতিমধ্যে প্রস্তাবিত কয়েকটি সমাধানের বিপরীতে, এটি আসলে ডিভাইসে (খালি) ডেটা লিখে।

এটি একটি নির্বাচনযোগ্য প্যাটার্ন বা এলোমেলো ডেটা দিয়ে নতুন ফাইলটি পূরণ করতে দেয়:

“Edit” > “Fill file” (or “Fill block” if a block is selected)

-1

আমি fsutilনির্বাচিত উত্তরে উল্লিখিত একই পদ্ধতিতে কিছু সংযোজন করেছি । এটি অনেকগুলি বিভিন্ন এক্সটেনশনের এবং / অথবা বিভিন্ন আকারের ফাইল তৈরি করা।

set file_list=avi bmp doc docm docx eps gif jpeg jpg key m4v mov mp4 mpg msg nsf odt pdf png pps ppsx ppt pptx rar rtf tif tiff txt wmv xls xlsb xlsm xlsx xps zip 7z
set file_size= 1
for %%f in (%file_list%) do (
fsutil file createnew valid_%%f.%%f %file_size%
) > xxlogs.txt

কোডটি https://github.com/iamakidilam/bulkFileCreater.git থেকে ক্লোন করা যেতে পারে

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.