হয়তো এটি সর্বোত্তম আমি শুধু ব্যবহার ক্ষেত্রে বন্ধ শুরু।
আমি একটি বড় জিপ ফাইল আছে অনেক ফাইল পূর্ণ এবং আমি মূলত একটি কম সংকোচনের স্তরে zipped ছিল সন্দেহ।
আমি সেটি থেকে একটি নতুন জিপ ফাইল তৈরি করতে চাই (অথবা নতুন নয়, আশেপাশে আশেপাশে) এটি ভাল সংকুচিত হয় কিনা তা নিশ্চিত করতে ( -9
) প্রথমে এটি ডিস্কে আনজিপ না করে (আকারের মতো এবং মাউন্ট করা NFS হওয়া বিভিন্ন কারণে)। তাই যখন আমি শুধু করতে পারে
mkdir tmp/ && unzip -d tmp/ A.zip && cd tmp/ && zip -r -9 ../B.zip *; rm -rf tmp/ A.zip
যে [অস্থায়ীভাবে] একটি বিশাল পরিমাণ তথ্য তৈরি করবে (দী unzipped ফাইল এবং B.zip
আগে অস্তিত্ব মধ্যে আসা A.zip
মুছে ফেলা).
আমি সত্যিই লাইন বরাবর কিছু চাই:
rezip -9 A.zip
অথবা, একটি জন্য নিষ্পত্তি B.zip
:
unzip -<output to stdout> A.zip | zip -9 B.zip && rm -f A.zip
কিন্তু আমি বুঝতে পারছি যে এটি সম্ভবত সম্ভব নয় কারণ পাইপগুলি একাধিক ফাইলের জন্য ব্যবহার করা হবে এবং ফাইল নামগুলি যেমন হারিয়ে যাবে।
সুতরাং, আমি ভাবছি যে প্রতিটি ফাইলের মতো কিছু কোড চালানোর উপায় আছে কিনা find -exec <command>
unzip A.zip -exec zip -r B.zip && rm -f A.zip
কিন্তু আবার, এই কিভাবে কাজ করবে বা অনিশ্চিত, যদি এই দ্বারা সহজ না হয় unzip
/ zip
, একটি কমান্ড বিদ্যমান আছে কিনা।
আমি আমার বর্তমান, এখনও ব্যবহারযোগ্য টেম্পস ব্যক্তিগত ফাইলগুলির সমাধান হিসাবে একটি উত্তর হিসাবে কাজ করে যেহেতু এটি কেউকে সাহায্য করতে পারে, যদিও এটি কোনও প্রশ্নের উত্তর দেয় না কোন temporaries অনুমতি