তারার সিভিএফ বা তারে সিভিএফ?


24

বিকল্পগুলির জন্য tar cvfz dir.tar.gz Directory/আমি '-' ছাড়াই টার ব্যবহার করতে শিখেছি, তবে আমি সম্প্রতি কিছুটা আলাদা tar -czvfসিনট্যাক্স পেয়েছি (আমার মনে হয় 'চ' অবশ্যই এই ক্ষেত্রে শেষ বিকল্প হতে হবে)।

উভয় লিনাক্স এবং ম্যাক ওএসে কাজ করে। '-' ছাড়াই ওউ সহ একটি প্রস্তাবিত বাক্য গঠন আছে যা ইউনিক্স স্বাদে আরও বেশি বহনযোগ্য?


1
আরও দেখুন: unix.stackexchange.com/questions/13573/…
unor

কারণ -fসর্বশেষ বিকল্প হতে হবে কারণ কারণ এটি একটি আর্গুমেন্ট লাগে এবং যে যুক্তি বিকল্প স্পর্শ দেওয়া যেতে পারে। tar -cvfz dir.tar.gz Directoryএর অর্থ এমন একটি সংরক্ষণাগার তৈরি করা zযার মধ্যে ফাইল রয়েছে dir.tar.gzএবং Directory
JoL

উত্তর:


27

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

পসিক্স এবং একক ইউনিক্সের পুরানো সংস্করণগুলিতে অপারেশন নির্দিষ্টকরণকারীর আগে tarকোনও কমান্ড অন্তর্ভুক্ত ছিল -। একক ইউনিক্স ভি 2 এর দুটি traditionalতিহ্যবাহী সংরক্ষণাগার ছিল cpioএবং tarতবে খুব কম ফ্ল্যাগই মানসম্মত হতে পারে কারণ বিদ্যমান বাস্তবায়নগুলি খুব আলাদা ছিল, তাই মানকগুলি একটি নতুন কমান্ড প্রবর্তন করেছিল pax, এটি সিঙ্গেল ইউনিক্স ভি 3-র মধ্যে একমাত্র স্ট্যান্ডার্ড আর্কিভার । আপনি স্ট্যান্ডার্ড সম্মতি, ব্যবহার চান pax, কিন্তু হুঁশিয়ার অনেক লিনাক্স ডিস্ট্রিবিউশন তাদের বেস ইনস্টলেশন এটা অন্তর্ভুক্ত করবেন না যে, আর কোন ব্যাপার paxমধ্যে Minix । আপনি যদি বাস্তবে বহনযোগ্যতা চান তবে ব্যবহার করুন tar cf filename.tar



1
আরও মনে রাখবেন যে যদি কোনও লিনাক্স ডিস্ট্রো থাকে তবে paxএটি সাধারণত সবচেয়ে খারাপ প্যাক্স বাস্তবায়ন (জিএনইউ প্যাক্স) নিয়ে আসে যা অনেকগুলি বাগের কারণে এড়ানো উচিত।
ধীরে ধীরে

এছাড়াও, psকমান্ডের একই আচরণ রয়েছে, আপনি -বিকল্পগুলি বাদ দিতে পারেন ।
ভয়ঙ্কর

1
@ অ্যাপর এটা ভুল অনেক সংস্করণ psআপনাকে বাদ দিতে দেয় না -। লিনাক্স সংস্করণটির সাথে বা তার বাইরে অপশন রয়েছে -তবে বেশিরভাগের আলাদা অর্থ রয়েছে (বিএসডি বনাম সিস্টেম ভি বনাম সামঞ্জস্যতা)।
গিলস 'অশুভ হওয়া বন্ধ করুন'

1
এটি সত্য যে বেশিরভাগ সময় আমি কেবল ব্যবহার করি ps aux... সুতরাং, আমি (আংশিকভাবে) ভুল হতে পারি। দুঃখিত।
ভয়ঙ্কর

13

আমি ডাইনোসর হতে পারি, তবে আমি মনে করি অভ্যাসগতভাবে "-cvf" এর পরিবর্তে "সিভিএফ" ব্যবহার করা সম্ভবত আরও বহনযোগ্য is আমি কল্পনা করি যে বেশিরভাগ লিনাক্স ডিএনএস জিএনইউ টার ব্যবহার করে, এবং আমি অনুমান করব যে * বিএসডিগুলিও করে, তবে আপনি এমন মালিকানাধর্মী ইউনিক্স পাবেন যা এখনও পুরানো এসআইএসভি টার ব্যবহার করে, যা আপনাকে বিকল্পগুলির মধ্যে '-' ব্যবহার না করার জন্য প্রয়োজন ছিল

আমি "-cvf" (বা "-xf" বা যাই হোক না কেন) ব্যবহার করি না এবং এমনকি রক্তপাত প্রান্তের আর্ক লিনাক্স নিয়েও আমার কোনও সমস্যা নেই।

এবং সাইড নোট হিসাবে, আমি মনে করি আপনি '-' এর পাশাপাশি বা ছাড়াই সান-স্ট্যান্ডার্ড "জার" কমান্ড বিকল্পগুলিও ব্যবহার করতে পারেন।


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

1
আপনি ভুল: এটি অ্যান্ড টি ইউনিক্স-এ ট্যারে একটি না লিখে লেখা হয়েছিল - তবে এটি গ্রহণ করে - এবং এড়িয়ে যায়। ডাকে কল করার একমাত্র পোর্টেবল উপায় হ'ল এটি ছাড়াই কল করা - এবং যদি আপনি কখনও "টার" বাস্তবায়ন খুঁজে পান যা জিনিসগুলি ছাড়া গ্রহণ করে না - তবে এটি ট্যার নয়।
ধীরে ধীরে

3

ইউএনআইএক্স-এ এমন কয়েকটি প্রোগ্রাম রয়েছে যা বর্তমান বিকল্পের মানটি অনুসরণ করে না।

একটি হ'ল dd, তবে আইডিএম মেইনফ্রেম প্রোগ্রাম DDR(ডিস্ক ডাম্প এবং পুনরুদ্ধার) থেকে ডিডি নেওয়া হয়েছিল ।

একটি হ'ল arঅন্যটি হ'ল tar। আমার তথ্য থেকে, টার আর এর অনুরূপ হতে চেয়েছিল।

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

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