পটভূমিতে কমান্ড কীভাবে সেট করুন, টার্মিনালটি বন্ধ করে এফগিতে ফিরে পাবেন?


10

আমি ব্যাকগ্রাউন্ডে কীভাবে একটি কমান্ড চালাতে হবে তা চেষ্টা করার চেষ্টা করছি এবং তারপরে এটিকে সামনের দিকে নিয়ে আসছি। আমি টিউটোরিয়াল এবং উত্তরগুলি থেকে বিরক্ত হয়েছি যেখানে লোকেরা জানায় যে এটি সহজ, এটি &ব্যাকগ্রাউন্ডে চালিত করার জন্য কমান্ডের শেষে যুক্ত করুন । এটি কেবলমাত্র একটি একক টার্মিনাল উইন্ডোর মধ্যে কাজ করছে। আমি কমান্ডটি একটি টার্মিনালে ব্যাকগ্রাউন্ডে রাখতে এবং টার্মিনালটি পুনরায় খোলার পরে এটি অগ্রভাগে ফিরে পেতে চাই

উদাহরণ:

$ grunt &
$ jobs
$ [1]+  Running  grunt &

অবশ্যই টার্মিনাল বন্ধ করার পরে আর কোনও কাজ পাওয়া যায় না।

পরবর্তী উদাহরণ:

$ grunt & disown #the same behavior has: $ setsid grunt &
$ jobs
$ [nothing] #but ps shows that grunt is working

after close terminal, grunt doesn't work

আমি কি ভুল করছি? কেউ আমাকে কীভাবে পটভূমিতে কমান্ডটি চালাবেন এবং অগ্রভাগে ফিরে পাবেন তা আমাকে ব্যাখ্যা করতে পারে।

উত্তর:


11

আপনি যেভাবে চান এটি অসম্ভব।

আসুন কয়েকটি প্রাথমিক ধারণাটি পর্যালোচনা করি:

  • একটি প্রক্রিয়া গ্রুপ সম্পর্কিত প্রক্রিয়াগুলির একটি সংগ্রহ যা সমস্ত একবারে সংকেত দেওয়া যেতে পারে।
  • একটি অধিবেশন প্রক্রিয়া গ্রুপগুলির একটি সংগ্রহ যা একটি একক টার্মিনাল ডিভাইসের সাথে সংযুক্ত থাকে (যা নিয়ন্ত্রণকারী টার্মিনাল হিসাবে পরিচিত) বা কোনও টার্মিনালের সাথে সংযুক্ত নয়।

আপনি যদি টার্মিনালটি বন্ধ করে দেন, সেশনটির সমস্ত প্রক্রিয়া আর ডি প্রসেসে পুনরায় প্রেরণ করা (ডিমন) ব্যতীত সমস্ত প্রক্রিয়া শেষ হয়ে যায়। তাদের আবার একটি নিয়ন্ত্রণকারী টার্মিনাল দেওয়ার কোনও উপায় নেই way

এক কথায়, পসিক্স সিস্টেমগুলিতে প্রক্রিয়া পুনরুদ্ধার অত্যন্ত সীমাবদ্ধ (ডেমোনাইজিং একটি ব্যতিক্রম) এবং আপনার প্রয়োজনীয়তা সন্তুষ্ট হতে পারে না।


6
প্রযুক্তিগতভাবে এটি সঠিক উত্তর, তবে আমি বিশ্বাস করি যে দর্শনার্থীদের মধ্যে এই সমস্যা রয়েছে তারা স্ক্রিন / বাইবু / টিএমাক্সের উল্লিখিত অন্যান্য উত্তরে "তাদের সমাধান" পাবে।
প্রোগ্রামার

আপনি ঠিক বলেছেন .. তবে আমার দৃষ্টিকোণ থেকে, সিস্টেমটি আরও ভালভাবে কাজ করা এবং আপনি কী চান এবং কী ভুল করছেন তা বোঝার জন্য প্রাথমিক ধারণাগুলি আরও গুরুত্বপূর্ণ। দুজন কেই ধন্যবাদ!
তৈমুর ফয়েজরখমানভ

16
  1. ইনস্টল করুন screen:

    sudo apt-get install screen
  2. শুরু screen:

    screen -S session_name
  3. আপনার কমান্ডগুলি যা প্রয়োজন তা কার্যকর করুন।

  4. screenটার্মিনাল থেকে বিচ্ছিন্ন করুন (আপনার আদেশগুলি এখনও চলমান থাকবে):

    CTRL+ a+ টিপুনd

  5. টার্মিনালটি বন্ধ করুন

  6. অন্য টার্মিনালটি খুলুন এবং শেষ screenসেশনে পুনরায় সংযুক্ত করুন :

    screen -r

আরো তথ্য এবং জন্য অতিরিক্ত বিকল্পের জন্য screenবর্ণন man screen


2
স্ক্রিন বা বাইবু (বিশেষত আপনি যদি উবুন্টু চালাচ্ছেন)। ব্যোবু আমি স্ক্রিনের উপর ভিত্তি করে তৈরি করছি যদি আমি সঠিক, তবে আমি দেখতে পেয়েছি এটির অতিরিক্ত কার্যকারিতা রয়েছে যা আমি দরকারী এবং সহজেই ব্যবহার করতে সহজ মনে করি, তবে এটি মতামতের বিষয়।
প্রোগ্রামার

আপনাকে ধন্যবাদ ভাল পরামর্শ! সম্ভবত বৈশিষ্ট্যে এটির প্রয়োজন হবে!) রাশিয়া থেকে প্রেমের সাথে <3
তৈমুর ফয়েজরাখমানভ

@ প্রোগ্রামার, হ্যাঁ, ব্যোবু প্রাক্তন পর্দা। এটিতে বাইবু-স্ক্রিন এবং বাইবো-টিএমাক্স উভয়ই রয়েছে।
user.dz

1
আমি tmuxবিকল্প হিসাবে সুপারিশ screen
জারেট

5

আপনি চেষ্টা করেছেন: byobuবা tmuxযা টার্মিনাল মাল্টিপ্লেক্সার। আপনি যা খুঁজছেন ঠিক তা নয়, তবে এর একই রকম আচরণ রয়েছে।

byobu-screen

তারপরে আপনার আদেশটি চালাও, আলাদা করতে:

byobu-screen -d

পুনরায় চালু করতে:

byobu-screen -r

Https://help.ubuntu.com/commune/Screen দেখুন


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