আমি কীভাবে কোনও আলাদা গন্তব্য ডিরেক্টরিতে গানজিপ করব?


80

আমি কীভাবে বর্তমানের গন্তব্য ডিরেক্টরি ছাড়া অন্য কোনও গন্তব্য ডিরেক্টরিতে গানজিপ করব?

এটি কার্যকর হয়নি:

gunzip *.gz /putthemhere/

উত্তর:


104

gunzipস্ট্যান্ডার্ড আউটপুটে আউটপুট জিজ্ঞাসা করুন এবং সেই ডিরেক্টরিতে কোনও ফাইলে পুনঃনির্দেশ করুন:

gunzip -c file.gz > /THERE/file

zcatএর জন্য একটি শর্টকাট gunzip -c

আপনি যদি একাধিক ফাইলগুলিকে সব ফাইলগুলিতে পুনরাবৃত্তি করতে চান:

for f in *.gz; do
  STEM=$(basename "${f}" .gz)
  gunzip -c "${f}" > /THERE/"${STEM}"
done

(এখানে basenameএক্সটেনশন ছাড়াই ফাইলের অংশটি পেতে ব্যবহার করা হয়)


3
ফাইলটি তৈরি করে তবে ফাইলের মালিকানা, অনুমতি ইত্যাদি সংরক্ষণ করে না এটি আপনার যথাযথ পরিস্থিতির উপর নির্ভর করে ভাল বা খারাপ হতে পারে।
ক্রিস জনসন

2

আপনার যদি একটি একক ফাইল বের করতে এবং মূলের মালিকানাধীন ডিরেক্টরিতে লিখতে হয় তবে ব্যবহার করুন sudo dd:

zcat filename.conf.gz | sudo tee /etc/filename.conf >/dev/null

যদি ফাইলটি কোনও দূরবর্তী উত্স থেকে আসে (যেমন, এসএসএস, কার্ল https ইত্যাদি), আপনি এটি এটি করতে পারেন:

ssh remoteserver cat filename.conf.gz | zcat | sudo tee /etc/filename.conf >/dev/null

(দ্রষ্টব্য যে এই উদাহরণগুলি কেবলমাত্র একটি একক ফাইলের জন্য কাজ করে , উদাহরণস্বরূপ * .gz এর বিপরীতে, যা ডিরেক্টরিতে সমস্ত জিপিড ফাইল রয়েছে))


মূল সুবিধাগুলি সহ লেখার জন্য, sudo tee $filename >/dev/nullব্যবহারের চেয়ে একটু বেশি মূ .় dd
21 ডিসেম্বর

1

আপনি যে স্থানে চান ফলাফলটি পুনঃনির্দেশ করতে আপনি> এর সাথে চেষ্টা করতে পারেন।

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