আপনি কীভাবে কেবল উইন্ডোজের অন্তর্নির্মিত ক্ষমতা ব্যবহার করে স্ক্রিপ্ট থেকে জিপ বা আনজিপ করতে পারেন?


294

উইন্ডোজ এ আপনি কিছু ফাইল জিপ করতে পারেন

ডান ক্লিক করুন → প্রেরণ করুনসংক্ষেপিত (জিপড) ফোল্ডার

এবং .zipফাইলটিতে ডাবল ক্লিক করে আনজিপ করুন এবং ফাইলগুলি বের করুন।

কোনও তৃতীয় পক্ষের সফ্টওয়্যার ইনস্টল করার প্রয়োজন ছাড়াই স্ক্রিপ্ট (.bat ফাইল) থেকে সেই ক্ষমতাগুলি প্রয়োগ করার কোনও উপায় আছে কি ?



16
ঠিক আছে, এটি সম্ভবত কোনও ব্যাচ ফাইল বা কোনও প্রোগ্রাম থেকে কল করার জন্য। (এই কারণেই আমি এখানে আছি - একটি জিপ ফাইল হওয়া দরকার এমন একটি ওয়েবসাইটের জন্য একটি সামান্য পণ্য "বিল্ড" করার জন্য দ্রুত। বি্যাট ফাইল তৈরি করার চেষ্টা করছি))
জন কোম্বস

46
উন্মাদ যে এই প্রশ্নটি বন্ধ ছিল।
স্যাম গোল্ডবার্গ

1
এই প্রশ্নটি কি সুপার ব্যবহারকারীর কাছে সরানো সম্ভব?
Hanxue

21
এখনও 2018 সালে খুব দরকারী এবং প্রাসঙ্গিক:: পি
মাইকেল জ্বর

উত্তর:


82

২০১৩ সালে ফিরে, এটি সম্ভব ছিল না। মাইক্রোসফ্ট এটির জন্য কোনও এক্সিকিউটেবল সরবরাহ করে নি।

এটি করার জন্য কিছু ভিবিএসের জন্য এই লিঙ্কটি দেখুন। /superuser/201371/create-zip-folder-from-the-command-line-windows

উইন্ডোজ 8 অন থেকে .NET ফ্রেমওয়ার্ক 4.5 ডিফল্টরূপে ইনস্টল করা আছে, সিস্টেম.আইও.কম্পশন.জপআর্কাইভ এবং পাওয়ারশেল উপলভ্য, কেউ এটি অর্জনের জন্য স্ক্রিপ্ট লিখতে পারেন, https://stackoverflow.com/a/26843122/71312 দেখুন


1
পিএস এটি মঞ্জুরি দেয় এবং উইন্ডোজে প্রাক ইনস্টলড থাকে এবং কমান্ড লাইনের মাধ্যমে উপলভ্য থাকে তবে এটি সঠিক নয়।
ড্যান অ্যাটকিনসন

4
@ ড্যান অ্যাটকিনসন আপডেট হয়েছে। এটির পুনরায় জবাব দেওয়া হয়েছিল ২০১৩ সালে, লিঙ্কটি কিছু ভিবিএস উপায় সরবরাহ করেছিল। PS উপায়ের প্রয়োজন। নেট 4.5, যার উইন্ডোজ 8 বা তার বেশি প্রয়োজন।
ডায়রিবয়

আপডেটের জন্য ধন্যবাদ! সেই অনুযায়ী আমার ভোট সংশোধন করেছেন। :)
ড্যান অ্যাটকিনসন

6
@ মিশেলমরোজেক ওয়েল "কমান্ড লাইন" কোনও কমান্ড লাইনের সাথে জেনারেলভাবে বোঝায়, বিশেষত সিএমডি / কম্যান্ড নয়, এবং পিএস অবশ্যই একটি কমান্ড লাইন, যেমন বাশ, শ, * * নিক্সে রয়েছে। তবে কেবল একটি আরও যেতে, যেহেতু আপনি কমান্ড লাইন থেকে পাওয়ারশেল চালাতে পারবেন, এটি প্রশ্নের উত্তর দেয় এমনকি আপনি যদি বিশ্বাস করতে চান যে সেমিড / কমান্ডটি একমাত্র একমাত্র কমান্ড লাইন।
রবার্ট ম্যাককি

1
এটি 2013 সালে ফিরে সম্ভব হয়েছিল (কোনও অতিরিক্ত সফ্টওয়্যার ইনস্টল না করে)। দেখুন সুপার ইউজার প্রশ্নউইন্ডোজ এক্সপি 2001 সালে আসার পর থেকে এটি সম্ভব হয়েছে Windows উইন্ডোজ এক্সপিতে অন্তর্নির্মিত জিপ কার্যকারিতাটি লাভ করা যেতে পারে কারণ এটি কোনও সিওএম ইন্টারফেসের মাধ্যমে উন্মুক্ত ।
পিটার মর্টেনসেন

180

স্টিভেন পেনির পাওয়ারশেল সমাধানটি প্রসারণ করার জন্য, আপনি এটিকে পাওয়ারশেল.এক্সে কল করে একটি ব্যাচ ফাইলে অন্তর্ভুক্ত করতে পারেন:

powershell.exe -nologo -noprofile -command "& { Add-Type -A 'System.IO.Compression.FileSystem'; [IO.Compression.ZipFile]::ExtractToDirectory('foo.zip', 'bar'); }"

ইভান শিলো যেমন বলেছিলেন, এটি পাওয়ারশেল 2 এর সাথে কাজ করবে না, এটি পাওয়ারশেল 3 বা তার বেশি এবং নেট ফ্রেমওয়ার্ক 4 প্রয়োজন requires


1
প্রকৃতপক্ষে, এটি .NET 4.5 এ উপলব্ধ করা হয়েছিল।
qJake

10
যারা (আমার মত) যারা কীভাবে আসল ডিরেক্টরিতে এক্সট্রাক্ট করতে চান (নতুন ডিরেক্টরি তৈরি করার পরিবর্তে) কেবলমাত্র লক্ষ্য প্যারামিটারটি সেট করে '.', যেমন:powershell.exe -nologo -noprofile -command "& { Add-Type -A 'System.IO.Compression.FileSystem'; [IO.Compression.ZipFile]::ExtractToDirectory('foo.zip', '.'); }"
মঞ্চকিন

কম্প্রেশন বাড়াতে আমরা এই আদেশগুলি ব্যবহার করতে পারি? এটি ফাইলের আকার হ্রাস করতে আল্ট্রা সংক্ষেপণ করতে চান?
নাইজেল এফ ডি এস

1
এর উদ্দেশ্য কী & {}? পিএস 5 সহ এটিও কাজ করে:powershell.exe -nologo -noprofile -command "Add-Type -A 'System.IO.Compression.FileSystem'; [IO.Compression.ZipFile]::ExtractToDirectory('foo.zip', '.');"
ড্যান্টন

@ রইড্যান্টন src.zip এবং dest.zip সংজ্ঞায়নের জন্য স্ট্রিংফরমটার কীভাবে ব্যবহার করবেন?
পাইসাদ

161

নেট 4.5 হিসাবে , পাওয়ারশেল এটি করতে পারে:

Add-Type -A System.IO.Compression.FileSystem
[IO.Compression.ZipFile]::CreateFromDirectory('foo', 'foo.zip')
[IO.Compression.ZipFile]::ExtractToDirectory('foo.zip', 'bar')

শেষ দুটি লাইনের জন্য, barএবং fooআপনার ফোল্ডারটি যে নামটি পছন্দ করতে চান বা নাম যা পূর্ববর্তীকরণ ফোল্ডারেরই হোক না কেন তার সাথে প্রতিস্থাপন করা যেতে পারে। foo.zipউভয় ক্ষেত্রেই জিপ ফাইল হিসাবে কাজ করে সে হিসাবে সংরক্ষণ করতে বা আনজিপ করা থেকে।


17
এটি .NET 4.5 হিসাবে রয়েছে।
qJake

কম্প্রেশন বাড়াতে আমরা এই আদেশগুলি ব্যবহার করতে পারি? এটি ফাইলের আকার হ্রাস করতে আল্ট্রা সংক্ষেপণ করতে চান?
নাইজেল এফডিএস

আমার কাছে .NET v4.0.30319, v2.0.50727, v1.1.4322, v1.0.3705 এখান থেকে ইনস্টল করা একটি ভিএম এর মাধ্যমে ইনস্টল করা আছে: বিকাশকারী.মাইক্রোসফটকম / en-us/microsoft-edge/tools/vms এবং এটি কাজ করে। ... সুতরাং আমি অনুমান করছি যে আপনার প্রয়োজন নেই
N

এটি আধুনিক সিস্টেমে সর্বাধিক ব্যবহারিক সমাধান, এটি 2 জিবি আকারের উপরে একটি জিপ লিখবে, যেখানে স্ট্যান্ডার্ড পাওয়ারশেল "কমপ্রেস-সংরক্ষণাগার" ব্যর্থ হবে।
শুক্রী অ্যাডামস

135

আপনার যদি জাভা ইনস্টল করা থাকে, আপনি jarকমান্ডটি ব্যবহার করে একটি জিপ সংরক্ষণাগারটিতে সংকোচন করতে পারেন :

jar -cMf targetArchive.zip sourceDirectory

c = একটি নতুন সংরক্ষণাগার ফাইল তৈরি করে।

এম = সুনির্দিষ্ট করে যে সংরক্ষণাগারটিতে ম্যানিফেস্ট ফাইল যুক্ত করা উচিত নয়।

f = লক্ষ্য ফাইলের নাম ইঙ্গিত করে।


3
দুর্দান্ত, ধন্যবাদ, ঠিক আমি যা খুঁজছিলাম ... এফওয়াইআই - আমাকে ডসের মধ্যে বিয়োগ চরটি সরিয়ে ফেলতে হয়েছিল ... যেমন জার সিএমএফ টার্গেট.জিপ সোর্সডির
mlo55

3
খারাপ নয়, তবে আপনার জেডিকে ইনস্টল করা দরকার, জেআরই নয়।
পিডেমি

2
খুব ভাল, সম্ভবত
অ্যাড্রিয়ান

YMMD। দুর্দান্ত ধারণা আমাকে অনেক সময় বাঁচিয়েছে
gorefest

3
এটি কি "... কেবলমাত্র উইন্ডোজ অন্তর্নির্মিত ক্ষমতাগুলি ব্যবহার করে?" (আমার জোর)
পিটার মর্টেনসেন

84

পাওয়ারশেল 5.0

থেকে Microsoft.PowerShell.Archiveআপনি ব্যবহার করতে পারেন:

উদাহরণ:

  • result.zipপুরো Testফোল্ডার থেকে তৈরি করুন :

    Compress-Archive -Path C:\Test -DestinationPath C:\result
    
  • result.zipনির্দিষ্ট Testফোল্ডারে থাকা সামগ্রীগুলি বের করুন :

    Expand-Archive -Path result.zip -DestinationPath C:\Test
    

13
এটি দুর্দান্ত কাজ করে, আপনাকে ধন্যবাদ। এখানে শেষ হওয়া যে কোনও ব্যক্তির জন্য, আপনি powershell Compress-Archive -Path C:\SomeFile.ext -DestinationPath C:\SomeFile.zipকোনও স্ক্রিপ্ট তৈরি না করেই কমান্ড লাইন থেকে ডানদিকে ব্যবহার করতে পারেন (ধরে নিবেন যে আপনি পাওয়ারশেল ভি 5 ইনস্টলড করেছেন, যা আপনি কমপক্ষে উইন্ডোজ to এ ফিরে যেতে পারেন)।
বেমস

আপনি যদি পুনরায় কাজ করার পরিকল্পনা করে থাকেন তবে অ্যাড-ফর্স বিকল্পটি দুর্দান্ত কাজ করে।
রবিন সালিহ

1
@ বিমস, আপনাকে ধন্যবাদ! তবে আমার মনে হয় আপনি অন্যদিকে রাস্তা / গন্তব্য পাগল?
ইয়েপিং

এটি কাজ করে, তবে সংরক্ষণাগারটি আলাদাভাবে সংকুচিত হয় তবে আপনি উইন্ডোজ এক্সপ্লোরার "পাঠানো -> সংক্ষেপিত (জিপড) ফোল্ডার" ব্যবহার করলে কী হবে তা পাওয়ারশেল সংস্করণটি বড় এবং কিছু প্রোগ্রাম নিষ্কাশন করতে পারে না
এরিক লাবশোস্কি

ইনপুট ফাইলটিতে
কমপ্রেস

37

এটি হুবহু জিপ নয়, তবে উইন্ডোজ সরঞ্জাম ব্যবহার করে কোনও ফাইল সঙ্কুচিত করার একমাত্র উপায়:

makecab <source> <dest>.cab

সঙ্কুচিত করতে:

expand <source>.cab <dest>

উন্নত উদাহরণ (ss64.com থেকে):

Create a self extracting archive containing movie.mov:
C:\> makecab movie.mov "temp.cab"
C:\> copy /b "%windir%\system32\extrac32.exe"+"temp.cab" "movie.exe"
C:\> del /q /f "temp.cab"

আরও তথ্য: মেক্যাব , প্রসারিত , মেক্যাব উন্নত ব্যবহার



34

7-জিপ ব্যবহার:

জিপ : আপনার একটি ফোল্ডার রয়েছে fooএবং এটিতে জিপ করতে চানmyzip.zip

"C:\Program Files\7-Zip\7z.exe" a  -r myzip.zip -w foo -mem=AES256

আনজিপ করুন : আপনি এটি ( myzip.zip) বর্তমান ডিরেক্টরিতে ( ./) থেকে আনজিপ করতে চান

"C:\Program Files\7-Zip\7z.exe" x  myzip.zip  -o./ -y -r

31
দয়া করে প্রশ্নটি লক্ষ্য করুন:without the need to install any 3rd party
রই গ্যাভেরেল

16
@ রোয়েগ্যাভেরেল 7 জিপটি যে কোনও উইন্ডোজ ইনস্টলেশনতে আপনি ইনস্টল করা প্রথম জিনিসগুলির মধ্যে একটি হওয়া উচিত: পি
ডেভেলপারএমডব্লিউ

3
@ বিকাশ - এটি কেন? বি। আমি উত্পাদনে 100 ডলার মেশিন পরিচালনা করছি যার উপর 7 জিপ নেই। এটি ইনস্টল করতে আমাকে ডিভোপসটি সে সমস্ত মেশিনে এবং সমস্ত নতুন মেশিনে ইনস্টল করতে হবে যা গুচ্ছগুলিতে যুক্ত হবে। আমি বরং এড়াতে চাই।
রই গাভিরেল

1
@ রোল্যান্ড: আপনি দয়া করে প্রশস্ত হতে পারেন; কোথায় ভুল হয়েছে? এটি সকলকে সহায়তা করবে।
মনির

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

9

আমি এই সঠিক প্রশ্নের উত্তর খুঁজতে চাইছি এবং আমার গবেষণা থেকে, ডায়রিবয়ের প্রতিক্রিয়াটি সঠিক বলে মনে হচ্ছে।

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

আমি কমপ্রেস.এক্সেও পেয়েছি যা আমার কম্পিউটারে হয়েছে। এটি মূলত বেশিরভাগ উইন্ডোজ মেশিনে নয় এবং 2003 এর রিসোর্স কিটের অংশ। এটি একটি জিপড ফাইলকে ধরণের তৈরি করে তবে এটি উইন্ডোজ সেটআপ ডিস্কের ফাইলগুলির সাথে সত্যই মিল (ফাইলের এক্সটেনশন বা নামের শেষ অক্ষর হিসাবে আন্ডারস্কোর রয়েছে)। এবং extract.exe কমান্ড সেই ফাইলগুলি বের করে।

তবে মন্ত্রটি হ'ল, যদি এটি জিইউআইয়ের মাধ্যমে স্থানীয়ভাবে করা যায় তবে সম্ভবত এটি কমান্ড লাইনের মধ্যে ব্যাচ, .vbs বা অন্য কোনও ধরণের স্ক্রিপ্টের মাধ্যমে করার উপায় রয়েছে। উইন্ডোতে যেহেতু একটি জিপ ফাইল তৈরির জন্য 'প্রেরণে' বিকল্পটি ছিল তাই আমি জানতাম কমান্ড লাইনের মাধ্যমে এটি করার একটি উপায় আছে এবং আমি কিছু বিকল্প পেয়েছি।

এখানে একটি দুর্দান্ত লিঙ্ক যা উইন্ডোজ নেটিভ কমান্ড ব্যবহার করে কোনও ফাইল জিপ করবেন তা দেখায়।

/superuser/110991/can-you-zip-a-file-from-the-command-prompt-using-only-windows-built-in-capabili

আমি একাধিক নেস্টেড ফাইল এবং ফোল্ডার সমন্বিত একটি ডিরেক্টরি দিয়ে এটি পরীক্ষা করেছি এবং এটি পুরোপুরি কার্যকর হয়েছে। কমান্ড লাইনের বিন্যাসটি অনুসরণ করুন।

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

/superuser/149489/does-windows-7-have-unzip-at-the-command-line-installed-by-default

কমান্ড লাইন ব্যবহার করে একটি ফাইল আনজিপ করবেন কীভাবে?



8

আপনি একটি বিএটি ফাইলে মোড়ানো একটি ভিবিএস স্ক্রিপ্ট ব্যবহার করতে পারেন। এই কোডটি আপেক্ষিক PATH এ কাজ করে।

কোনও তৃতীয় পক্ষের সরঞ্জাম বা নির্ভরতার প্রয়োজন নেই। শুধু সেট SOURCEDIRএবং OUTPUTZIP

ফাইলের নাম: জিপআপ.বাট

echo Set fso = CreateObject("Scripting.FileSystemObject") > _zipup.vbs
echo InputFolder = fso.GetAbsolutePathName(WScript.Arguments.Item(0)) >> _zipup.vbs
echo ZipFile = fso.GetAbsolutePathName(WScript.Arguments.Item(1)) >> _zipup.vbs

' Create empty ZIP file.
echo CreateObject("Scripting.FileSystemObject").CreateTextFile(ZipFile, True).Write "PK" ^& Chr(5) ^& Chr(6) ^& String(18, vbNullChar) >> _zipup.vbs

echo Set objShell = CreateObject("Shell.Application") >> _zipup.vbs
echo Set source = objShell.NameSpace(InputFolder).Items >> _zipup.vbs
echo objShell.NameSpace(ZipFile).CopyHere(source) >> _zipup.vbs

echo ' Keep script waiting until compression is done
echo Do Until objShell.NameSpace( ZipFile ).Items.Count = objShell.NameSpace( InputFolder ).Items.Count >> _zipup.vbs
echo     WScript.Sleep 200 >> _zipup.vbs
echo Loop >> _zipup.vbs

CScript  _zipup.vbs  %SOURCEDIR%  %OUTPUTZIP%

del _zipup.vbs

ব্যবহারের উদাহরণ

SET SOURCEDIR=C:\Some\Path
SET OUTPUTZIP=C:\Archive.zip
CALL ZipUp

অন্যথা, আপনি লাইন প্রতিস্থাপন এই ফাইলটি parametrize করতে পারেন CScript _zipup.vbs %SOURCEDIR% %OUTPUTZIP%সঙ্গে CScript _zipup.vbs %1 %2, যে ক্ষেত্রে এটি সহজভাবে কল করে এমনকি আরো সহজে থেকে বলা যেতে পারে CALL ZipUp C:\Source\Dir C:\Archive.zip


যে লাইনটি প্রাথমিক জিপ ফাইল তৈরি করে তা এড়ানো দরকার অন্যথায় এটি স্ক্রিপ্টে শেষ হয় না।
কাপ


আমি উত্তর হিসাবে একটি সঠিকভাবে পালানো সংস্করণ যুক্ত করেছি।
fsteff

5

এই সমস্ত সমাধানে আমার সমস্যা আছে।

এগুলি হুবহু এক নয় এবং তারা সকলে RMB --> send to --> compressed (zipped) folderএকই উত্স ফোল্ডার থেকে তৈরির তুলনায় সামান্য আকারের পার্থক্যযুক্ত এমন ফাইল তৈরি করে । আমার নিকটতম আকার-পার্থক্যটি হল 300 কেবি পার্থক্য (স্ক্রিপ্ট> ম্যানুয়াল), এটি দিয়ে তৈরি:

powershell Compress-Archive -Path C:\sourceFolder -CompressionLevel Fastest -DestinationPath C:\destinationArchive.zip

(লক্ষ্য করুন-- সংক্ষেপণ লেভেলতিনটি সম্ভাব্য মান রয়েছে : দ্রুততম, NoCompression & সর্বাপেক্ষা কাম্য, (ডিফল্ট: সর্বাপেক্ষা কাম্য))

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

তবে কিছু কারণে এটি কোনও স্বয়ংক্রিয় সংকোচনের সাথে এটি কাজ করে না, তবে এটি ম্যানুয়াল আরএমবি সংকোচনের সাথে কাজ করে, ডাইনিটিকে আমি সত্যিই অদ্ভুত বলে মনে করি।

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


কি "wbr" এবং "আরএমবি" ?
পিটার মর্টেনসেন

আরএমবি = ডান মাউস বোতাম। <wbr> = একটি এইচটিএমএল ট্যাগ যা ব্রাউজারে একটি "ওয়ার্ড ব্রিক সুযোগ" নির্দেশ করে (সরানো হয়েছে, কারণ এটি কাজ করে না)।
সেবাস্তিয়ান নর

4

যদি আপনাকে কোনও স্ক্রিপ্টের অংশ হিসাবে এটি করতে হয় তবে জাভা ব্যবহার করা সবচেয়ে ভাল উপায়। ধরে নিচ্ছেন বিন ডিরেক্টরিটি আপনার পথে রয়েছে (বেশিরভাগ ক্ষেত্রে), আপনি কমান্ড লাইনটি ব্যবহার করতে পারেন:

jar xf test.zip

জাভা যদি আপনার পথে না থাকে তবে এটি সরাসরি উল্লেখ করুন:

C:\Java\jdk1.6.0_03\bin>jar xf test.zip

3

মুক্ত উত্স আপনার বন্ধু :-)

এখানে আনজিপটি দেওয়া আছে : http://gnuwin32.sourceforge.net/packages/unzip.htm

একটি জিপ কমান্ডও রয়েছে: http://gnuwin32.sourceforge.net/packages/zip.htm

বাইনেরিতে ডাউনলোড যথেষ্ট।


উইন্ডোজ 8-এ, এটি একটি ত্রুটি ফেলে: bzip2.dll অনুপস্থিত।
ডগ

1
@ ডগ এটি বলে যে bzip2 পৃষ্ঠায় একটি প্রয়োজনীয়তা এবং ডাউনলোড করার জন্য একটি লিঙ্ক রয়েছে
স্যাম

11
মূল প্রশ্নটি কীভাবে উইন্ডোজ স্ট্যান্ডার্ড অন্তর্নির্মিত ব্যবহার করতে হয়। তদুপরি, আপনার ব্যবহারকারীদের বিভিন্ন তৃতীয় পক্ষের সমাধানগুলি ইনস্টল করার প্রয়োজন অনাকাঙ্ক্ষিত কারণ আপনার নিজস্ব সরঞ্জাম বা সমাধান এখন কেবলমাত্র তাদের ব্যবহারকারীদের মধ্যে সীমাবদ্ধ যার কাছে তাদের কম্পিউটারে প্রশাসনিক অনুমতি রয়েছে বা যারা তাদের সিস্টেমে সামান্য নির্ভরতা বাড়ানোর সংগ্রহের বিষয়ে চিন্তা করেন না who । ওপেন সোর্স আপনার বন্ধু হতে পারে, কিন্তু ওপেন সোর্স প্যাকেজ যে আপনার প্রয়োজন অন্যান্য ওপেন সোর্স প্যাকেজ যা আপনি অন্য ওপেন সোর্স প্যাকেজগুলি ইনস্টল করতে প্রয়োজন এবং তাই নিশ্চিতভাবে হয় ইনস্টল না আপনার বন্ধু।
স্টিভ হোল্যাশ


1
এটি এখনও তৃতীয় পক্ষের সোটওয়্যার ব্যবহার করে
12 Добромиров

3

এটি @ পডটেক.ইওয়ের দেওয়া উত্তরের একটি আপডেট সংস্করণ

এই সংস্করণে সমস্ত vbs কোড সঠিকভাবে ব্যাচ ফাইলে পালিয়ে গেছে। এটি একটি উপ-রুটিনেও তৈরি করা হয়েছে, যা আপনার ব্যাচের স্ক্রিপ্টের যে কোনও জায়গা থেকে একক লাইন দিয়ে কল করা যেতে পারে:

:: === Main code:

call :ZipUp "C:\Some\Path" "C:\Archive.zip"


:: === SubRoutines:

:ZipUp
::Arguments: Source_folder, destination_zip
(
    echo:Set fso = CreateObject^("Scripting.FileSystemObject"^)
    echo:InputFolder = fso.GetAbsolutePathName^(WScript.Arguments.Item^(0^)^)
    echo:ZipFile = fso.GetAbsolutePathName^(WScript.Arguments.Item^(1^)^)
    echo:
    echo:' Create empty ZIP file.
    echo:CreateObject^("Scripting.FileSystemObject"^).CreateTextFile^(ZipFile, True^).Write "PK" ^& Chr^(5^) ^& Chr^(6^) ^& String^(18, vbNullChar^)
    echo:
    echo:Set objShell = CreateObject^("Shell.Application"^)
    echo:Set source = objShell.NameSpace^(InputFolder^).Items
    echo:objShell.NameSpace^(ZipFile^).CopyHere^(source^)
    echo:
    echo:' Keep script waiting until compression is done
    echo:Do Until objShell.NameSpace^( ZipFile ^).Items.Count = objShell.NameSpace^( InputFolder ^).Items.Count
    echo:    WScript.Sleep 200
    echo:Loop
)>_zipup.vbs
CScript //Nologo _zipup.vbs "%~1" "%~2"
del _zipup.vbs
goto :eof

2

আপনি বলছেন আপনি কোনও তৃতীয় পক্ষের সফ্টওয়্যার ছাড়াই এটি করার চেষ্টা করছেন। আপনি। নেট "তৃতীয় পক্ষ" সফ্টওয়্যার বিবেচনা করবেন কিনা তা নিশ্চিত নই।

তবে আপনি। নেট এ আপনার নিজস্ব কমান্ড লাইন ইউটিলিটি তৈরি করতে পারেন। এর জন্য কয়েকটি লাইনের কোডের বেশি হওয়া উচিত নয়।

জিপফিল ক্লাস


0

@ জেসন ডাফেটের উত্তর এবং তার মন্তব্যগুলিকে যুক্ত করে, এখানে এমন একটি স্ক্রিপ্ট রয়েছে যা ব্যবহারকারীর কাছ থেকে ইনপুট এবং আউটপুট (যথাক্রমে ফাইলের নাম এবং ডিরেক্টরি নাম) পায়:

@echo off
set input=%1
set output=%2
powershell.exe "Add-Type -A 'System.IO.Compression.FileSystem'; [IO.Compression.ZipFile]::ExtractToDirectory('%input%', '%output%');"

ব্যবহার:

unzip.bat path\to\file.zip path\to\output\directory

-4

একটি ফাইল জিপ করতে:

C:\> zip -9 -m -o file.dat.zip file.dat
  • -9 সর্বোচ্চ সংকোচনের
  • -ম সফল সংকোচনের পরে আসল ফাইলটি মুছুন
  • -ও মূল ফাইলের মতো জিপ ফাইলের পরিবর্তনের তারিখ সেট করে
  • খুব খারাপ এটির পরিবর্তে এটি পছন্দসই জিপ ফাইলের নাম দিতে হবে কেবলমাত্র ফাইলটি সঙ্কুচিত করতে নামটিতে জিপ এক্সটেনশন যুক্ত করা

4
দুটি জিনিস: (1) উইন্ডো সহ "জিপ" সরবরাহ করা হয়নি, সুতরাং এটি সম্ভবত আপনার কাছে একটি তৃতীয় পক্ষ। এবং আমার প্রশ্নের হিসাবে উল্লেখ করা হয়েছে, আমি তৃতীয় পক্ষগুলি ইনস্টল করতে পারি না। (২) আপনার পছন্দসই নাম সরবরাহ করার কারণটি হ'ল জিপ করা ফাইল তৈরি করা এবং সংরক্ষণাগার সংরক্ষণ করা (কোনও সিন্ডারের ফোল্ডারের মতো) এবং আপনার সেখানে একাধিক ফাইল থাকতে পারে।
রুই গাভিরেল

@ রোয়েগ্যাভেরেল সার্ভারে আমি জিপ কমান্ড লাইনটি ইউটিলিটি পেয়েছি যেখানে উইনজিপ জিইউআই সরঞ্জাম ইনস্টল করা হয়নি তাই আমি অনুমান করলাম যে খালি সি এল এল সরঞ্জামটি উইন্ডোজের সাথে এসেছে। অন্যদিকে ইউনিক্স / লিনাক্স কমপ্রেস ইউটিলিটিগুলি যেমন কমপ্রেস, বিজিপ ২ এবং জিজিপ মূল ফাইলের একই নামের প্লাস এক্সটেনশন (.Z, .bz2 বা .gz) সহ একটি সংক্ষেপিত ফাইল তৈরি করে, যদি আপনি পছন্দসই নামটি পাস না করেন। সংকুচিত ফাইল.
তুলিনস কর্ডোভা

-4

আপনি ব্যবহার করে একটি জিপ করা বা নেটিভ সংকুচিত উইন্ডোজ ফাইল কমপ্রেস করতে সম্প্রসারণ কমান্ড যেমন

expand MyFile.zip myFile

9
আমি চেষ্টা করেছিলাম, তবে এটি MyFile.zip কে মাইফিল ফোল্ডারে অনুলিপি করেছে
fhnaseer

এটি আমাকে সি: expand> প্রসারিত /?
তুষার

11
প্রসারিত শুধুমাত্র .cab ফাইলের সাথে কাজ করে এবং এটি জিপ ফাইলগুলির জন্য উপযুক্ত নয়।
20

2
অন্যান্য মন্তব্য এখানে। Expand file.zip fileএক্সটেনশন ছাড়াই কেবল জিপ অনুলিপি করে file এটি কোনও ফোল্ডারে জিপকে সঙ্কুচিত করে না।
ডেভ মার্লে
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.