কার্ল এবং উইজেটের মধ্যে পার্থক্য কী? [বন্ধ]


38

এগুলি curlএবং উভয়ই wgetফাইল ডাউনলোড করার জন্য ব্যবহার করা হয়, ইত্যাদি, একে অপরকে ব্যবহার করার কোনও কারণ আছে কি?


1
"যথাযথ ব্যবহার" সংজ্ঞা দিন
এবি

12
মতামত ভিত্তিক হিসাবে ভোট বন্ধ করার বিষয়ে: দুটি সরঞ্জামের মধ্যে পার্থক্য সম্পর্কে জিজ্ঞাসা কীভাবে মতামত-ভিত্তিক উত্তরকে উত্সাহিত করে?
মাইকেল মার্টিন-স্মুকার

1
@ মাইকেলমার্টিন-স্মাকার "ধরুন আমার কোনও ওয়েবপৃষ্ঠা ডাউনলোড করার দরকার আছে www.google.com বলতে দেওয়া, আমি কি উইজেট বা কার্ল খুঁজব?" মতামত ভিত্তিক না হলে তা কী?
মুরু

2
@ মুরু, এটি "একটি ওয়েব পৃষ্ঠা ডাউনলোড" বলতে আপনার অর্থের উপর নির্ভর করে। যদি আপনি বোঝাতে চান কোনও HTTP অনুরোধ প্রেরণ করুন এবং ফলাফলগুলি ফিরে পান, কার্লটি আদর্শ। আপনি যদি কোনও পৃষ্ঠা ডাউনলোড করার অর্থ, অন্য পৃষ্ঠাগুলির সাথে লিঙ্ক করেন এবং সম্পর্কিত সম্পদগুলি, কার্ল কাজ করবে না এবং উইজেটই একমাত্র বিকল্প। তাদের মধ্যে বাস্তবগত পার্থক্য রয়েছে যা এটিকে মতামত ভিত্তিক নয়।
বারবিকিউ

3
@ মুরু আমি অনুমান করি যে প্রশ্নের পেছনে আমাদের অনুভূতির বিভিন্ন ব্যাখ্যা রয়েছে। আমার ব্যাখ্যায় অনুভূতিটি হ'ল: "আমি এই দুটি সরঞ্জামের কথা শুনেছি যা একই কাজ করে বলে মনে হয় them তাদের মধ্যে পার্থক্য কী এবং আমি কখন অন্যটির থেকে একটি বেছে নেব? এই নির্দিষ্ট ক্ষেত্রে কী হবে?" ... যা আমার কাছে যুক্তিসঙ্গত প্রশ্নের মতো মনে হচ্ছে।
মাইকেল মার্টিন-স্মাকার

উত্তর:


33

"সঠিক ব্যবহার" সংজ্ঞায়িত করার পরে, ব্যবহার করুন wget

কেন? এই জন্য:

রিকার্সিভ! কার্লের তুলনায় উইজেটের প্রধান শক্তিশালী দিক হ'ল পুনরাবৃত্তভাবে ডাউনলোড করার ক্ষমতা, বা এমনকি প্রত্যন্ত উত্স থেকে উল্লিখিত সমস্ত কিছু ডাউনলোড করা, এটি কোনও HTML পৃষ্ঠা বা কোনও এফটিপি ডিরেক্টরি তালিকা হতে পারে।


নির্লজ্জ এখান থেকে অনুলিপি করা

curl

  • গ্রন্থাগারcurlচালিত হয় libcurl- একটি স্থিতিশীল এপিআই সহ একটি ক্রস প্ল্যাটফর্ম লাইব্রেরি যা প্রত্যেকে প্রত্যেকে ব্যবহার করতে পারে। এই পার্থক্যটি প্রধান, যেহেতু এটি অভ্যন্তরীণভাবে কীভাবে করা যায় সে সম্পর্কে সম্পূর্ণ ভিন্ন মনোভাব তৈরি করে। "নিছক" কমান্ড লাইন সরঞ্জামের চেয়ে কোনও পাঠাগার তৈরি করা কিছুটা শক্ত is

  • পাইপcurlপ্রচলিত ইউনিক্স catকমান্ডের মতো আরও কাজ করে , এটি আরও স্টাফ প্রেরণ করে stdoutএবং stdin"সবকিছুই পাইপ" পদ্ধতিতে আরও পড়তে থাকে। wgetআরও cpএকই মত , একই অ্যানালগ ব্যবহার করে।

  • একক শটcurlমূলত ডেটাগুলির একক শট স্থানান্তর করতে তৈরি করা হয়। এটি কেবলমাত্র ইউআরএলগুলি স্থানান্তর করে যা ব্যবহারকারী নির্দিষ্ট করে এবং এতে কোনও পুনরাবৃত্ত ডাউনলোডিং যুক্তি বা কোনও ধরণের এইচটিএমএল পার্সার থাকে না।

  • আরও প্রোটোকলcurlএফটিপি, এফটিপিএস, গোফর, এইচটিটিপি, এইচটিটিপিএস, এসসিপি, এসএফটিপি, টিএফটিপি, টেলনেট, ডিআইসিটি, এলডিএপি, এলডিএপিএস, ফাইল, পিওপি 3, আইএমএপি, এসএমবি / সিআইএফএস, এসএমটিপি, আরটিএমপি এবং আরটিএসপি সমর্থন করে। উইজেট কেবল এইচটিটিপি, এইচটিটিপিএস এবং এফটিপি সমর্থন করে।

  • আরও বহনযোগ্যcurlএর চেয়ে অনেক বেশি প্ল্যাটফর্ম তৈরি করে এবং চালায় wget। উদাহরণস্বরূপ: ওএস / 400, টিপিএফ এবং অন্যান্য "বহিরাগত" প্ল্যাটফর্মগুলি যা ইউনিক্সের ক্লোনগুলি সরাসরি-ফরোয়ার্ড করে না।

  • আরও এসএসএল লাইব্রেরি এবং এসএসএল সমর্থনcurlএগারোটির মধ্যে একটি (11!) বিভিন্ন এসএসএল / টিএলএস লাইব্রেরি দিয়ে তৈরি করা যেতে পারে এবং এটি প্রোটোকলের বিশদগুলির জন্য আরও নিয়ন্ত্রণ এবং বিস্তৃত সমর্থন সরবরাহ করে। curlসর্বজনীন কী পিনিং সমর্থন করে।

  • HTTP authcurlআরও HTTP প্রমাণীকরণ পদ্ধতি সমর্থন করে, বিশেষত HTTP প্রক্সিগুলির উপরে: বেসিক, ডাইজেস্ট, এনটিএলএম এবং আলোচনা

  • সক্সcurlপ্রক্সি অ্যাক্সেসের জন্য বেশ কয়েকটি SOCKS প্রোটোকল সংস্করণ সমর্থন করে

  • দ্বিমুখীcurlআপলোড এবং প্রেরণ ক্ষমতা সরবরাহ করে। wgetকেবল সরল HTTP পোস্ট সমর্থন সরবরাহ করে।

  • এইচটিটিপি মাল্টিপার্ট / ফর্ম-ডেটা প্রেরণ , যা ব্যবহারকারীদের HTTP "আপলোড" করতে এবং সাধারণভাবে ব্রাউজারগুলি অনুকরণ করতে এবং HTTP অটোমেশনকে বিস্তৃত পরিমাণে করতে দেয়

  • curlgzipকন্টেন্ট-এনকোডিং সমর্থন করে এবং স্ফীত করে এবং স্বয়ংক্রিয় ডিকম্প্রেশন করে

  • curl স্থানান্তর-এনকোডড এইচটিটিপি সরবরাহ করে এবং ডিকম্প্রেশন সম্পাদন করে, উইজেট দেয় না

  • curl এইচটিটিপি / 2 সমর্থন করে এবং এটি ডুয়াল-স্ট্যাক হ্যাপি আইবলস ব্যবহার করে সংযোগ স্থাপন করে

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


wget

  • wgetশুধুমাত্র কমান্ড লাইন। কোনও লাইব্রেরি নেই।

  • পুনরাবৃত্তি ! wgetকার্লের তুলনায় প্রধান শক্তিশালী দিক হ'ল পুনরাবৃত্তভাবে ডাউনলোড করার ক্ষমতা বা এমনকি দূরবর্তী উত্স থেকে উল্লিখিত সমস্ত কিছু ডাউনলোড করা, এটি কোনও HTML পৃষ্ঠা বা কোনও এফটিপি ডিরেক্টরি তালিকা হতে পারে।

  • পুরাতনwget১৯৯৫-এর দিকে ট্রেস রয়েছে, ১৯৯ curlof এর শেষের দিকে আর খুঁজে পাওয়া যায় না।

  • জিপিএলwget100% জিপিএল ভি 3। কার্ল এমআইটি লাইসেন্সযুক্ত।

  • জিএনইউwgetজিএনইউ প্রকল্পের অংশ এবং সমস্ত কপিরাইট এফএসএফকে দেওয়া হয়েছে। কার্ল প্রকল্পটি পুরোপুরি একা এবং স্বতন্ত্র এবং কোনও সংস্থা কোনওভাবেই পিতামাতার সাথে ড্যানিয়েলের মালিকানাধীন প্রায় সমস্ত কপিরাইট নেই।

  • wgetকোন অতিরিক্ত অপশন প্রয়োজন কেবল একটি স্থানীয় ফাইল একটি দূরবর্তী URL টি ডাউনলোড করতে যখন curlপ্রয়োজন -oবা -O

  • wget কুকি ডোমেনগুলি পরিচালনা করার জন্য সর্বজনীন প্রত্যয় তালিকার সমর্থন করে, কার্ল দেয় না।

  • wget SSL / TLS সমর্থনের জন্য কেবল GnuTLS বা ওপেনএসএসএল সমর্থন করে

  • wget এইচটিটিপি প্রক্সির উপরে কেবলমাত্র লেখক প্রকার হিসাবে কেবল বুনিয়াদি লেখকে সমর্থন করে

  • wget কোনও SOCKS সমর্থন নেই

  • অসময়ে ভাঙ্গা স্থানান্তর থেকে পুনরুদ্ধার এবং ডাউনলোড করা চালিয়ে যাওয়ার দক্ষতার কার্লে কোনও অংশ নেই।

  • wget কিওয়ার্টি কীবোর্ডে কেবল বাম হাত ব্যবহার করে টাইপ করা যায়!


1
হ্যাঁ, উইজেট মিরর করার জন্য দুর্দান্ত!
জোয়েটউইডেল

1
"কার্ল প্রকল্পটি পুরোপুরি একা এবং স্বতন্ত্র এবং কোনও সংস্থা পিতামাতার সাথে ড্যানিয়েলের মালিকানাধীন প্রায় সমস্ত কপিরাইট নেই" " নিশ্চিত নয় যে এটি একটি খারাপ জিনিস ...
বারবিকিউ

"অসময়ে ভাঙ্গা স্থানান্তর থেকে পুনরুদ্ধার এবং ডাউনলোড চালিয়ে যাওয়ার দক্ষতার কার্লের কোনও অংশ নেই" " আমি কি এই বাক্যটি ভুল বুঝতে পেরেছি? curl -C -ভাঙা ডাউনলোড কি চালিয়ে দেওয়া হচ্ছে না ?
সিয়ুয়ান রেন

1
আপনি কেন বাজেটের প্রস্তাব দিচ্ছেন ? এমনকি আপনি নিজে যে তুলনাগুলি লিখেছেন তা দেখার পরেও কার্লটিকে আরও উচ্চতর বলে মনে হচ্ছে। wget can be typed in using only the left hand on a qwerty keyboard!, ডাব্লুটিএফ ?? wget requires no extra options to simply download a remote URL to a local file, while curl requires -o or -O.
আনমল সিং জাগি

2
আকার অত্যন্ত গুরুত্বপূর্ণ: একটি তাজা উবুন্টু ছবিতে, wget হয় আকার 2M বনাম কার্ল 5M ভরা (deps সঙ্গে, X3 মোট প্যাক করা নেই)
Eran ডব্লিউ

19

অনেক টুলস যে মত বিনামূল্যে ডাউনলোড করতে পারেন হয় curl, snarf, wget, pavuk, fget, fetch, lftp, aria2, HTTrackইত্যাদি আপনার প্রয়োজন এবং যা আপনি ডাউনলোড সহ ব্যবহার করতে চান বৈশিষ্ট্য অনুযায়ী এটি ব্যবহার করুন। বৈশিষ্ট্য সারণী পরীক্ষা করুন এবং সেই অনুযায়ী ব্যবহার করুন use

কার্ল:

  • কার্ল আরও প্রোটোকল এফটিপি, এফটিপিএস, এইচটিটিপি, এইচটিটিপিএস, এসসিপি, এসএফটিপি, টিএফটিপি, টেলনেট, ডিআইসিটি, এলডিএপি, এলডিএপিএস, ফাইল, পিওপি 3, আইএমএপি, এসএমটিপি, আরটিএমপি এবং আরটিএসপি সমর্থন করে
  • কার্ল আরও বেশি এসএসএল লাইব্রেরি সমর্থন করে
  • কার্ল আরও HTTP প্রমাণীকরণ পদ্ধতিগুলি সমর্থন করে, বিশেষত HTTP প্রক্সিগুলির উপর: বেসিক, ডাইজেস্ট, এনটিএলএম এবং আলোচনা
  • কার্লটি একটি স্থিতিশীল এপিআই সহ লাইবকার্ল-ক্রস-প্ল্যাটফর্ম লাইব্রেরি দ্বারা চালিত হয় যা প্রত্যেকে প্রত্যেকে ব্যবহার করতে পারে

উইজেট:

  • যখন উইজেট এইচটিটিপি, এইচটিটিপিএস এবং এফটিপি সমর্থন করে
  • উইজেট কেবল জিএনটিটিএলএস বা এসএসএল / টিএলএস সমর্থনের জন্য ওপেনএসএসএল সমর্থন করে
  • উইজেট এইচটিটিপি প্রক্সির উপরে একমাত্র লেখক প্রকার হিসাবে কেবলমাত্র বেসিক লেখকে সমর্থন করে
  • উইজেট কেবল কমান্ড লাইন সরঞ্জাম, এর কোনও লাইব্রেরি নেই।

আরও তথ্যের জন্য গুরুত্বপূর্ণ সংস্থানসমূহ:


"উইজেট হ'ল কমান্ড লাইন সরঞ্জাম এটি কেবল গ্রন্থাগার জানে।" আমি এই লাইন বুঝতে পারি না।
লুসিও

3

তাদের সাধারণভাবে অনেক কার্যকারিতা রয়েছে তবে curlতাদের আরও বিকল্প রয়েছে। জন্য wgetমাঝে মাঝে গাছের পাতা দিয়ে যথেষ্ট হতে পারে man wget, কিন্তু এর জন্য curlআমি অধ্যয়ন করতে হবে এই ওয়েব পেজ একটি ব্রাউজারে। আমি বিশ্বাস করি আপনার ব্রাউজার যা কিছু করতে পারে তা curlকরতে পারে।


2

উইজেট এবং কার্লের মধ্যে আরও একটি পার্থক্য রয়েছে যা আমি মনে করি তাৎপর্যপূর্ণ।

উইজেট হ'ল এককভাবে কমান্ড লাইন ইউটিলিটি যা মূলত দ্রুত এবং সহজভাবে ইন্টারনেট সামগ্রী পুনরুদ্ধার করার জন্য উদ্দিষ্ট।

অন্যদিকে কার্ল মূলত শক্তিশালী libcurl লাইব্রেরির জন্য একটি টার্মিনাল ফ্রন্ট এন্ড। Libcurl তাদের সমস্ত ফর্ম এবং স্বাদে URL গুলির সাথে কাজ করার জন্য সরঞ্জামগুলির একটি খুব শক্তিশালী সেট সরবরাহ করে এবং প্রায় সমস্ত ভাষা এবং প্ল্যাটফর্মের জন্য উপলব্ধ। কার্ল মূলত আপনাকে শেল স্ক্রিপ্টগুলিতে এই লাইব্রেরিটি ব্যবহার করার ক্ষমতা দেয়।

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