"সাসপেন্ড" কমান্ড দেওয়ার পরে টার্মিনাল কার্যকারিতা পুনরায় চালু করবেন কীভাবে?


8

আমি suspendআমার টার্মিনালটিতে টাইপ করেছি এবং এটি কার্যকর করে স্থগিত করেছে।

আমি কীভাবে স্বাভাবিক টার্মিনাল কার্যক্রমে ফিরে যেতে পারি? আমি Ctrl+ C, Ctrl+ D, Ctrl+ Q( এখানে প্রস্তাবিত হিসাবে ) এবং Ctrl+ চেষ্টা করেছি Z, কিন্তু এর কোনওটিই কাজ করে না। অবশ্যই আমি টার্মিনালটি বন্ধ করতে এবং একটি নতুন খুলতে পারি, তবে টার্মিনালের কার্যকারিতা "পুনরায় চালু" করার কোনও উপায় নেই?

আমি ডিফল্ট (বাশ) শেল সহ উবুন্টু জিনোম 16.04 চালাচ্ছি।


এর জন্য দুঃখিত আমি এখানে জিজ্ঞাসা করছি, তবে এই আদেশের উদ্দেশ্য কী?
pa4080

1
কোনও স্ক্রিপ্ট কার্যকর করা বন্ধ করতে এবং এটি পরে চালিয়ে যেতে;)
রিনজউইন্ড

উত্তর:


10

আপনার লিঙ্ক থেকে:

যতক্ষণ না এটি SIGCONT সিগন্যাল পায়।

সুতরাং যে হবে kill -SIGCONT {pid}

  • killall -CONT bash সব আবার শুরু হবে।
  • kill -18 {pid} একই হবে।
  • এবং তাই হয় kill -s CONT {pid}

এই তালিকা অনুসারে এটি নিয়ন্ত্রণ-z হওয়া উচিত তবে প্রক্রিয়া বন্ধ করতে আপনার নিয়ন্ত্রণ-z ব্যবহার করতে হবে:

18 - SIGCONT - Resume process, ctrl-Z (2nd)
19 - SIGSTOP - Pause the process / free command line, ctrl-Z (1st)

আপনার টার্মিনালে চলমান শেল সেশনটির {পিড need প্রয়োজন


এবং এখানে চাকরি নিয়ন্ত্রণের আদেশও রয়েছে :

fg, bg

The fg command switches a job running in the background into the foreground. 
The bg command restarts a suspended job, and runs it in the background. 
If no job number is specified, then the fg or bg command acts 
upon the currently running job.

এটিও Ctrl + Q হওয়া উচিত তবে এটি কোনও কারণে কাজ করছে না। আমি ধরে নিই যেহেতু শেলটি সাসপেন্ড করা হয়েছে তাই এটি স্থগিত অধিবেশন থেকে Ctrl + Q (SIGCONT) গ্রহণ করতে পারে না। এটি কাজ করে যদি আপনি বলে থাকেন যে আপনি ব্যবহার করেন kill -SIGCONT PIDতবে যখন আমার অনেক টার্মিনাল খোলা থাকে তখন আমি স্থগিত সেশনের পিআইডি পাওয়ার কোনও সহজ উপায় খুঁজে পাই না।
টেরডন

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

@ চের্বেরাস আপনি শেল সেশনটির পিআইডি চান টার্মিনালটিতে, টার্মিনালটিতে নয়। আপনার যদি কেবল একটি ওপেন টার্মিনাল থাকে তবে এটি খুঁজে পাওয়া সহজ pgrep bash। যদি তা না হয় তবে ব্যবহার করুন pstree -p, টার্মিনালের পিআইডি সন্ধান করুন এবং এর শিশুদের পিআইডি দেখুন, যার মধ্যে একটি আপনার বাশ সেশন হওয়া উচিত।
টেরডন

কমপক্ষে দৃশ্যে আমার দু'টি টার্মিনাল সেশন করা দরকার, একটি যা স্থগিত এবং অন্যটি যা থেকে সিগনকন্টে প্রেরণ করা হবে।
সারবেরাস

1
সাধারণত সিগকন্ট উপেক্ষা করা হয়, তবে কেন কেবল আগুন নয় killall -CONT bash? :-)
জোনাস শোফার
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.