কমান্ড লাইন ব্যবহার করে নুপ্কি ফাইলগুলি আহরণ করা হচ্ছে


105

প্রথমত, নির্দিষ্ট .nupkg ফাইলগুলির সাথে ডিল করার সময় আমি ভিজ্যুয়াল স্টুডিওটি মোটেও ব্যবহার করতে চাই না।

আমি জানি নুগেট প্যাকেজ এক্সপ্লোরার নামক একটি সরঞ্জাম রয়েছে এবং এটি একটি গুই ব্যবহার করে একটি নির্দিষ্ট ফাইলের স্থানে নুপকিগ ফাইলগুলি রফতানি করতে পারে তবে আমি কমান্ড লাইনটি ব্যবহার করে প্রায় 50 .nupkg ফাইল চালাতে এবং আনপ্যাক করার জন্য একটি এমএসবিল্ড টাস্ক সেটআপ করতে চাইছি।

আমার প্রশ্নটি হ'ল, এমন কোনও সরঞ্জাম আছে যা আপনি কমান্ড লাইনের মাধ্যমে ব্যবহার করতে পারবেন যা একটি নির্দিষ্ট ফাইলের স্থানে .nupkg ফাইলগুলিকে আনপ্যাক করবে?

উত্তর:


106

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

nuget install MyPackage -Source %cd% -OutputDirectory packages

এটি লক্ষ্য ডিরেক্টরিতে আনপ্যাক করবে।


14
কেবলমাত্র একটি নোট যে মাইপ্যাকেজ আসলে একটি প্যাকেজ আইডি যা .nspec ফাইলটিতে উল্লিখিত এবং কোনও ফাইলের নাম নয়।
রড

এবং আপনাকে এডমিন সুবিধাগুলি সহ কনসোল থেকে
সোনিক সোল

7
Fww, পাওয়ারশেল-এ কমান্ডটি দেখতে পাওয়া যায়: মাইপ্যাকেজ -সোর্স $ পিডাব্লুডি -আউটপুট ডিরেক্টরি প্যাকেজ ইনস্টল করুন
মার্ক বল্টুক ২৯'১৮

আমার ধারণা,% সিডি% বর্তমান ডিরেক্টরিকে উল্লেখ করছে। আমি কীভাবে আমার স্থানীয় সিস্টেমে বিভিন্ন পাথ উল্লেখ করতে পারি? যখন আমি কোনও পথ ব্যবহার করি তখন এটি কার্যকর হয় না। "./example/path/"
শানবুন

1
আমার জন্য কাজ করার জন্য-উত্স পাওয়ার জন্য আমি ফাইল ডিরেক্টরিটির পরম পথটি ব্যবহার করেছি। আমি প্যাকেজের নাম অন্তর্ভুক্ত করিনি।
mac10688

146

নিউপিকেজি ফাইলগুলি কেবল জিপ ফাইল, তাই কোনও জিপ ফাইল প্রক্রিয়া করতে পারে এমন যে কোনও কিছুই একটি নুপকিজ ফাইল, অর্থাৎ 7zip প্রসেস করতে সক্ষম হওয়া উচিত।


15
এটির সাথে একটি প্রোভিসো রয়েছে, যা হ'ল নুগেট মনে হয় ফাইলের নামগুলি এনকোডিংয়ের জন্য কিছু করা আছে। সুতরাং, আপনি যদি জিপ সরঞ্জাম ব্যবহার করেন তবে উদাহরণস্বরূপ "A + B.txt" নামযুক্ত একটি ফাইলকে "A% 2B.txt" হিসাবে নিষ্কাশন করা হবে। নুগেট ইনস্টল (অ্যান্ডির উত্তর অনুযায়ী) ব্যবহার করে এটি এড়ানো যায়
অলি ওয়েনেল

1
ফাইল এনকোডিংয়ের সমস্যাটি 4.7.0+ এ স্থির করা হয়েছিল
ফাই

15

এটা পুনঃনামকরণ .zip , তাহলে এটি নিষ্কাশন।


এটি একটি অত্যন্ত পুরানো প্রশ্ন এবং যদি আপনি কেবল এমন একটি জিপ পরিবর্তন করেন যা প্রশ্নের উত্তর দেয় না, আপনি যদি জিপ সরঞ্জাম ব্যবহার করেন, উদাহরণস্বরূপ "A + B.txt" নামক একটি ফাইল "এ" হিসাবে নিষ্কাশিত হবে % 2B.txt "- আপনার জিপতে নামকরণ করারও দরকার নেই।
লুইস

4

এই একই জিনিস করেছেন:

clear
cd PACKAGE_DIRECTORY

function Expand-ZIPFile($file, $destination)
{
    $shell = New-Object -ComObject Shell.Application
    $zip = $shell.NameSpace($file)
    foreach($item in $zip.items())
    {
        $shell.Namespace($destination).copyhere($item)
    }
}

Dir *.nupkg | rename-item -newname {  $_.name  -replace ".nupkg",".zip"  }

Expand-ZIPFile "Package.1.0.0.zip" “DESTINATION_PATH”

2
ওলি ওয়েনেলের উপরে উল্লিখিত সমস্যাটি কি একই সমস্যায় ভুগছেন? যেমন "A + B.txt" উদাহরণস্বরূপ "A% 2B.txt" হিসাবে নিষ্কাশন করা হবে?
রাহাতুর

1

পাওয়ারশেল 5.1 (প্যাকেজম্যানেজমেন্ট মডিউল) সহ

Install-Package -Name MyPackage -Source (Get-Location).Path -Destination C:\outputdirectory

0

এটি আমার পক্ষে কাজ করেছে:

Rename-Item -Path A_Package.nupkg -NewName A_Package.zip

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