অস্থায়ী ব্যবহারের জন্য কীভাবে আমি একটি পরিষ্কার শেল পরিবেশ তৈরি করতে পারি?


15

আমি ইউনিক্স-কেন্দ্রীভূত জনপ্রিয় প্রশ্নোত্তর সাইটের একটি ঘন ঘন উত্তরদাতা এবং আমার অনেক উত্তরে আমি bashশেলটি ব্যবহার করে উদাহরণ সরবরাহ করি । যাইহোক, প্রতিবার আমি যখন এটি করি তখন প্রতিটি পদক্ষেপের জন্য অ্যাকাউন্টিং এবং ডকুমেন্টেড রয়েছে কিনা তা নিশ্চিত করার জন্য আমাকে একটি পরিষ্কার পরিবেশ তৈরি করার প্রক্রিয়াটি ম্যানুয়ালি করতে হবে। আমি কীভাবে এই প্রক্রিয়াটিকে আরও সোজা করে তুলব? আমি আদর্শভাবে একটি একক কমান্ড টাইপ করতে এবং একটি পরিষ্কার পরিবেশ পেতে চাইছি এবং আমি সম্পন্ন হওয়ার পরে সেই অস্থায়ী পরিবেশের সমস্ত চিহ্ন সরিয়ে নিয়েছি।


উত্তর:


10

আমি ব্যক্তিগতভাবে এটি করতে নিম্নলিখিত bashফাংশনটি ব্যবহার করি:

so() {
    local tmpdir="$(mktemp -d)"
    local tmprc="$(mktemp)"
    cat > "$tmprc" << EOF
PS1='\\$ '
cd "$tmpdir"
EOF
    env - HOME="$HOME" TERM="$TERM" bash --rcfile "$tmprc"
    rm -rf "$tmpdir" "$tmprc"
}

এটি যা করে তা এখানে রয়েছে:

  • একটি অস্থায়ী ডিরেক্টরি তৈরি করুন (পরিষ্কার পরিবেশে আমাদের ওয়ার্কিং ডিরেক্টরি হিসাবে ব্যবহার করতে);
  • একটি অস্থায়ী ফাইল তৈরি করুন (আমাদের bashআরসি ফাইল হিসাবে ব্যবহার করতে );
  • আরসি ফাইলে লাইন যুক্ত করুন যা:
    • PS1প্রম্পটটি টার্মিনেটরে প্রম্পট সেট করুন এর পরে কোনও স্থান নির্ধারণ করুন, যা আমাদের প্রশ্ন ও উত্তর সাইটে আমাদের আউটপুটটির একটি অনুলিপি রাখতে চাইলে এটি প্রাসঙ্গিক রাখে;
    • আমরা তৈরি অস্থায়ী ডিরেক্টরিতে পরিবর্তন করুন।
  • একটি নতুন উদাহরণ জিজ্ঞাসা করুন bash, যা:
    • প্রাথমিকভাবে $HOMEএবং $TERM( env - ...) ব্যতীত খালি পরিবেশ রয়েছে ;
    • আমরা এর আগে তৈরি হওয়া অস্থায়ী ফাইল থেকে এর আরসি ফাইলটি পড়ে --rcfile
  • একবার বাশ বের হয়ে গেলে, আমরা তৈরি অস্থায়ী ফাইলগুলি সরিয়ে ফেলুন।

স্পষ্টতই এটি সম্পূর্ণ নির্বোধ নয়, আপনি এখনও আপনার সিস্টেমের অন্যান্য অংশগুলিতে অ্যাক্সেস করতে পারেন। এটি যাইহোক, একটি পরিষ্কার অস্থায়ী পরিবেশ সরবরাহ করে যা আপনি পরীক্ষার জন্য ব্যবহার করতে পারেন।


আপনি ব্যবহার চেষ্টা করেছেন script?
h3rrmiller

@ h3rrmiller - হ্যাঁ, যদিও আমি এটিকে পছন্দ হিসাবে ব্যবহার করতে চাই না tend
ক্রিস ডাউন

2

chrootএকটি উপায়, একটি ভিএম ব্যবহার করা অন্যরকম। আপনি একটি এলভিতে ক্রুট-পরিবেশ তৈরি করতে পারেন, এটি স্ন্যাপশট করতে পারেন, আপনার যা কিছু করুন এবং তারপরে স্ন্যাপশ্যাটেড অবস্থায় ফিরে যেতে পারেন।

অথবা - ভিএম (ডিস্ক-স্ন্যাপশট) দিয়ে একই কাজ করুন এবং তারপরে সমস্ত পরিবর্তনগুলি উল্টে দিন।

আমি সাধারণত এটি নতুনভাবে ইনস্টল করা ভিএম (ভার্চুয়ালবক্স এবং কিকস্টার্ট বা পিএক্সই-বুট সহ অটোয়াস্ট ব্যবহার করে) দিয়ে করি।

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