অস্থায়ী ফাইলগুলি হ্যান্ডেল করার জন্য আরও কিছু পোর্টেবল উপায়টি হ'ল mktemp
। এটি অস্থায়ী ফাইল তৈরি করবে এবং আপনার জন্য তাদের পথ ফিরিয়ে দেবে। এই ক্ষেত্রে:
$ mktemp
/tmp/tmp.zVNygt4o7P
$ ls /tmp/tmp.zVNygt4o7P
/tmp/tmp.zVNygt4o7P
আপনি এটি সহজেই কোনও স্ক্রিপ্টে ব্যবহার করতে পারেন:
tmpfile=$(mktemp)
echo "Some temp. data..." > $tmpfile
rm $tmpfile
ম্যান পৃষ্ঠাটি পড়া, আপনার প্রয়োজন অনুসারে বিকল্প সেট করতে সক্ষম হওয়া উচিত। এই ক্ষেত্রে:
-d
একটি ফাইলের পরিবর্তে একটি ডিরেক্টরি তৈরি করে।
-u
একটি নাম জেনারেট করে, তবে কিছুই তৈরি করে না।
-u
আপনি ব্যবহার করে অস্থায়ী ডিরেক্টরিটি সহজেই পুনরুদ্ধার করতে পারেন ...
$ tmpdir=$(dirname $(mktemp -u))
আরও তথ্য mktemp
এখানে পাওয়া যায় ।
ম্যাক ওএস এক্স সম্পর্কিত সম্পাদনা করুন: আমি কখনই ম্যাক ওএসএক্স সিস্টেম ব্যবহার করি নি, তবে নীচে টাইলোর একটি মন্তব্য অনুসারে মনে হচ্ছে ম্যাকmktemp
ওএসএক্সের জন্য আপনাকে একটি টেমপ্লেট সরবরাহ করতে হবে (এটি লিনাক্সের উপর একটি optionচ্ছিক যুক্তি)। বরাত দিয়ে:
উদাহরণস্বরূপ, টেমপ্লেটটি কয়েকটি সংখ্যক "এক্স" যুক্ত যুক্ত ফাইলের নাম হতে পারে /tmp/temp.XXXX
। চলমান "Xs" বর্তমান প্রক্রিয়া নম্বর এবং / অথবা একটি অনন্য বর্ণের সংমিশ্রণ দ্বারা প্রতিস্থাপিত হয়। এমকেটেম্প ফিরিয়ে আনতে পারে এমন অনন্য ফাইলের নাম সরবরাহ করা "এক্স" এর সংখ্যার উপর নির্ভর করে; ছয় "এক্সস" এর ফলে এমকেটেম্প 56800235584 (62 ** 6) সম্ভাব্য ফাইলের নাম নির্বাচন করবে।
ম্যান পৃষ্ঠাটি আরও বলেছে যে এই প্রয়োগটি ওপেনবিএসডি ম্যান পৃষ্ঠাটির জন্য অনুপ্রাণিত mktemp
। অনুরূপ একটি বিকিরণ অতএব পাশাপাশি OpenBSD ও FreeBSD ব্যবহারকারীদের দ্বারা পালিত হতে পারে (দেখুন ইতিহাস অধ্যায়)।
এখন, আপনি সম্ভবত লক্ষ্য করেছেন, এর জন্য আপনাকে আপনার প্রশ্নের মধ্যে যে অস্থায়ী ডিরেক্টরিটি সন্ধান করছেন সেগুলি সহ একটি সম্পূর্ণ ফাইলের পথ নির্দিষ্ট করতে হবে। এই সামান্য সমস্যাটি -t
স্যুইচ ব্যবহার করে পরিচালনা করা যায় । এই বিকল্পটির জন্য একটি আর্গুমেন্ট ( prefix
) লাগবে বলে মনে হচ্ছে , এটি উপস্থিত হবে যখন প্রয়োজনের mktemp
উপর নির্ভর করে $TMPDIR
।
সব মিলিয়ে, আপনি ব্যবহার করে উপরের মত একই ফলাফল পেতে সক্ষম হওয়া উচিত ...
$ tmpdir=$(dirname $(mktemp tmp.XXXXXXXXXX -ut))
ম্যাক ওএস এক্স ব্যবহারকারীদের যে কোনও প্রতিক্রিয়া প্রশংসিত হবে, কারণ আমি নিজেই এই সমাধানটি পরীক্ষা করতে অক্ষম।
${TMPDIR-/tmp}
ইউনিক্স-পছন্দগুলিতে ব্যবহার করুন। অস্থায়ী ফাইলগুলির জন্যTMPDIR
কখন ব্যবহার/tmp
করবেন না সে সম্পর্কে আপনাকে বলতে (সিস্টেম বা প্রশাসক বা ব্যবহারকারীর দ্বারা) আছেন ।