এটি Ctrl+Zঅন্যান্য কমান্ডগুলিতে চাপ দেওয়ার সমতুল্য ।
এটি শেলটি স্থগিত করে এবং প্যারেন্ট শেলকে নিয়ন্ত্রণ দেয় বা যদি থাকে তবে প্রক্রিয়া করে।
উদাহরণ:
zsh$ bash
bash-4.4$ cd /
bash-4.4$ suspend
zsh: suspended (signal) bash
zsh$ fg
[1] + continued bash
bash-4.4$ pwd
/
বৈশিষ্ট্যটি সিএসএস থেকে আসে, বিএসডির শেল (যেখানে কাজের নিয়ন্ত্রণ আসে) 80 এর দশকের গোড়ার দিকে ।
এটিএন্ডটি-তে ksh
এটি একটি বিল্টিন ওরফে kill -s STOP $$
( হ্যাঁ, উদ্ধৃতিগুলি ছাড়াই! )
আপনার ক্ষেত্রে bash
সম্ভবত এটিই টার্মিনাল এমুলেটর দ্বারা সরাসরি শুরু হয়েছিল। এবং আপনার টার্মিনাল এমুলেটরটি প্রক্রিয়াটি স্থগিত হওয়ার আশা করেনি।
সেটাই bash
ছিল সেশন লিডার। যদি সেশন লিডার স্থগিত করা হয়, আমরা যদি পুরানো সময়ের টার্মিনালের দৃষ্টিভঙ্গি করি তবে ব্যবহারকারীর কাছে এটি পুনরায় চালু করার কোনও উপায় থাকবে না।
bash
suspend
এটি লগইন শেল কিনা তা অস্বীকার করে ঠিকানাগুলি । তবে আপনার ক্ষেত্রে, আপনার টার্মিনাল এমুলেটর সম্ভবত bash
লগইন মোডে শুরু হয় না , যাতে সেফগার্ডটি ঠিক না থাকে।
zsh
এবং mksh
সমস্যা নেই কারণ তারা সিএস-এর পরিবর্তে (এবং কলারের প্রসেস গ্রুপে সিএস-এর মতো, এবং শেলের মূল প্রক্রিয়া গ্রুপকে , কেবল প্রক্রিয়া নয় ) SIGTSTP
প্রেরণ করে Ctrl+Zসিএসএসের মতো একটি (যেমন প্রেরিত একটি ) সিগন্যাল প্রেরণ করে )। এতিম প্রক্রিয়া গোষ্ঠীতে বিতরণ করার সময় এড়ানো হয় এবং নেতার দলটি যোগ্যতা অর্জন করে। ধারণাটি হ'ল SIGTSTP এর এমন কোনও কিছু স্থগিত করা উচিত যা কোনও ব্যবহারকারীর দ্বারা পুনরায় শুরুযোগ্য নয়।SIGSTOP
mksh
zsh
$$
SIGTSTP
ইন mksh
বা yash
, এক এছাড়াও ব্যবহার করতে পারেন suspend
আছে একটি নিজেই স্থগিত subshell:
$ (set -x; sleep 1; suspend; sleep 2)
+ sleep 1
+ suspend
[1] + Stopped(SIGSTOP) (set -x; sleep 1; suspend; sleep 2)
$ fg
[1] (set -x; sleep 1; suspend; sleep 2)
+ sleep 2
এটি এর সাথে কাজ করবে না zsh
যে কলারের পরিবর্তে মূল প্রক্রিয়া গোষ্ঠীতে SIGTSTP প্রেরণ করে। যে কোনও শেলটিতে kill
বিল্টিন রয়েছে, তার kill -s TSTP 0
পরিবর্তে একটি সর্বদা ব্যবহার করতে পারে ।