উত্তর:
সহজ ভাবে, আপনি বিশেষ করে না হলে প্রয়োজন ব্যবহার করতে -C
বলতে tar
কিছু অন্যান্য নির্দেশিকাতে পরিবর্তন করতে, কেবল কমান্ড লাইন সংরক্ষণাগার পূর্ণ পাথ নির্দিষ্ট হয়। তারপরে আপনি আর্কাইভের অভ্যন্তরে যে ডিরেক্টরি ডিরেক্টরিটি চান সেটি তৈরি করতে আপনি যে ডিরেক্টরিতে চান তা হতে পারেন।
নিম্নলিখিত সংরক্ষণাগার তৈরি করবে /var/www/file.tar.gz
এবং করা file1
এটা কোন ইন-সংরক্ষণাগার পথ তথ্য দিয়ে বর্তমান ডিরেক্টরি থেকে (যাই হোক না কেন যে হতে হবে)।
tar czf /var/www/file.tar.gz file1
পাথ (হয় সংরক্ষণাগার, উপাদান ফাইল বা উভয়) অবশ্যই আপেক্ষিক হতে পারে। যদি থাকে file1
তবে /tmp
আপনি ভিতরে আছেন এবং /var/spool
সংরক্ষণাগারটি তৈরি করতে চান /var/www
, আপনি এর মতো কিছু ব্যবহার করতে পারেন:
tar czf ../www/file1.tar.gz /tmp/file1
থিমটিতে মিলিয়ন মিল রয়েছে, তবে এটি আপনাকে শুরু করা উচিত। যোগ v
পতাকা যদি আপনি তা দেখতে চান tar
আসলে আছে।
$PWD
তাই উদাহরণের মধ্যে একটি নিখুঁত পথটি ব্যবহার করা সবচেয়ে নিরাপদ বলে মনে হয়েছিল।
file1
টার আর্কাইভের পথটি হবে /tmp
। এটি আপনার প্রত্যাশা মতো বা নাও হতে পারে।
আমি সংকুচিত তথ্যগুলিকে একটি স্ট্রিমে পরিণত করি (-) এবং সহজেই আমি নিজের পছন্দমতো নাম পরিবর্তন করে (>) সনাক্ত করি (এছাড়াও আমি সর্বদা আপেক্ষিক পথটি (./) টান করি যাতে সংকোচনের সময় মোকাবেলা করা সহজ)
tar -cvf - ./dir-to-compress/* > /location-of-new-file/filename.tar
-C
এটি অনেক বেশি বুদ্ধিমান (এবং সংক্ষিপ্ত)।
আমি মনে করি এটি:
tar czf file.tar.gz -C /var/www/ file1
যা আমার পক্ষে কাজ করে। এটি ডিরেক্টরি পরিবর্তন করতে এবং তারপরে ফাইল চয়ন করতে বলে।
-C
(এটি অস্পষ্টভাবে এর নথিভুক্ত হিসাবে অদ্ভুত নয়)। বিশদগুলির জন্য দেখুন সার্ভারফল্ট / কিউ / ৪১16০০০০ / ৮6262৮৮ ।