একই স্ক্রিন সেশনে কীভাবে দ্বিতীয় কমান্ড চালানো যায়


12

আমি স্ক্রিনে প্রথম কমান্ডটি এভাবে শুরু করছি:

screen -d -m -S testen -t lalala watch df -h

যা আমাকে পটভূমিতে চলমান একটি স্ক্রিন সেশন দেয় এবং আমি পরবর্তী সময়ে পুনরায় সংযোগ করতে পারি।

একই স্ক্রিন সেশনে নতুন উইন্ডোয় আমি কীভাবে দ্বিতীয় কমান্ড চালাতে পারি?

উত্তর:


11

-Sনামযুক্ত উইন্ডো ( -t) -Aবিচ্ছিন্ন মোডে ( -d -m) টার্মিনাল আকার ( ) এর সাথে খাপ খাইয়ে দিয়ে একটি নামযুক্ত স্ক্রিন সেশন শুরু করুন :

screen -S mySessionName -t myWinName0 -A -d -m

-tএকই স্ক্রিন সেশনে ( -S) নামের অন্য একটি উইন্ডো শুরু করুন :

screen -S mySessionName -X screen -t myWinName2

সেশনে ( ) -X stuff $'cmds'নামকরণের প্রথম উইন্ডোতে কয়েকটি কমান্ড ( ) চাপুন :-p-S

screen -S mySessionName -p myWinName0 -X stuff $'echo myWinName0\necho cmd1\necho cmd2\n'

সেশনে ( ) -X stuff $'cmds'দ্বিতীয় নামযুক্ত উইন্ডোতে কয়েকটি কমান্ড ( ) চাপুন :-p-S

screen -S mySessionName -p myWinName1 -X stuff $'echo myWinName1\necho cmd1\necho cmd2\n'

স্ক্রিন সেশনগুলি তালিকাভুক্ত করুন এবং যা ঘটেছিল তা দেখতে পুনরায় যোগাযোগ করুন:

screen -ls
screen -r mySessionName

দ্রষ্টব্য: লাইনফিড ( \n) টিপুনকে অনুকরণ করে Enter। আপনি পৃথক কমান্ডগুলি সেমিকোলন ব্যবহার করতে পারেন।


আপনাকে "স্টাফ" বিট করতে হবে না। screen -S sessionName -t windowName1 -Adm <command> && screen -S sessionName -X screen -t windowName2 -Adm <command2>
লোটাস

4

ভিতরে পর্দা:

  • Ctrl-A, cএকটি নতুন শেল উইন্ডো খুলতে
  • Ctrl-A, :screen newcmdচালাতেnewcmd

বাইরে:

screen -X testen "screen newcmd"

হাই মাধ্যাকর্ষণ , আমি এটি জানি, তবে আমি এটি একটি init স্ক্রিপ্ট থেকে করতে চাই। মূলত আমি একই স্ক্রিন সেশনে পৃথক উইন্ডোতে 2 টি কমান্ড শুরু করতে চাই। দেখা হবে

1
@ বব: এই উত্তরে # 3, "পর্দার বাইরে" উদাহরণ দেখুন।
ব্যবহারকারী1686

হাই গুরুতর screen -S testen -X 'screen echo "hi"'কাজ , কাজ করে না।

আমি -x পদ্ধতিতে কাজ করতেও পারিনি। ফিভিউ, আমার স্ক্রিন-ভি বলেছেন "স্ক্রিন সংস্করণ 4.00.03 (এফএইউ) 23-অক্টোবর -06"
লরি লেহটিনেন

4

উপরোক্ত পদ্ধতির চেষ্টা করা হয়েছে, কিন্তু দ্বিতীয় কমান্ড দ্বিতীয় উইন্ডোতে কার্যকর হয়নি। আমি উইন্ডোটির পরিবর্তে উইন্ডো নম্বরটি ব্যবহার করে উদাহরণটি সামঞ্জস্য করেছি:

  1. সেশন তৈরি করুন

    screen -S mySessionName -t 0 -A -d -m
    
  2. দ্বিতীয় উইন্ডো তৈরি করুন

    screen -S mySessionName -X screen -t 1
    
  3. প্রথম উইন্ডোতে কমান্ড প্রেরণ করুন

    screen -S mySessionName -p 0 -X stuff $'echo myWinName0\necho cmd1\necho cmd2\n'
    
  4. দ্বিতীয় উইন্ডোতে কমান্ড প্রেরণ করুন

    screen -S mySessionName -p 1 -X stuff $'echo myWinName0\necho cmd1\necho cmd2\n'
    
  5. কমান্ডটি প্রথম উইন্ডোটিতে চালানো হয়েছে কিনা তা পরীক্ষা করে দেখুন

    screen -R mySessionName -p 0
    
  6. এখন দ্বিতীয় উইন্ডোতে কমান্ডটি চালিত হয়েছে কিনা তা পরীক্ষা করে দেখুন

    screen -R mySessionName -p 1
    

স্ক্রিন 4.00.03 (সেন্টস 6.3 এক্স 64) দিয়ে পরীক্ষিত।


1

আপনি -cআর্গুমেন্টের মাধ্যমে একটি বিকল্প .স্ক্রিনআরসি সেটআপ করতে পারেন । এই নতুন স্ক্রিনসিটিতে স্ক্রিন সেশন শুরু হওয়ার সাথে সাথে আপনি একাধিক কমান্ড সেটআপ করতে পারেন।

এই বিকল্পের শেষে। স্ক্রিনসিআর্ক নিম্নলিখিত কমান্ডগুলি রাখুন:

screen 1 cmd1 args
screen 2 cmd2 args

আপনি যদি কেবল এক ধরণের স্ক্রিন সেশন চালানোর পরিকল্পনা করেন এবং ডিফল্ট কমান্ডগুলি সর্বদা ঠিক থাকে তবে আপনাকে বিকল্প কনফিগারেশন ফাইল সেটআপ করার দরকার নেই।

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