কীভাবে Gnu- স্ক্রিনে ট্যাবগুলি উইন্ডো খুলবেন এবং প্রত্যেকের মধ্যেই আদেশগুলি কার্যকর করা যায়


30

যখন সেশন শুরু হয় এর মতো কোনও নাম দেওয়া হয়েছে screen -S name1

আমি এই স্ক্রিন সেশনে ট্যাব উইন্ডোগুলি খুলতে চাই যেমন ননো-টার্মিনালে যখন ট্যাবগুলি খোলা থাকে

gnome-terminal --tab -e "some commands"

তাহলে এটি কিভাবে?


দু'জন কীভাবে জিনোম টার্মিনাল-এর জন্য স্যামিলার ট্যাবগুলি খুলতে এবং জানতে চান যে "চালানোর সময় খুলুন ট্যাব চালানোর পরে কিছু কমান্ড কার্যকর করতে চান
আহমেদ

সুতরাং আমি নীচে বর্ণিত কৌশলটি আপনি যে ট্যাবগুলি সন্ধান করছেন তা প্রদর্শন করে? তাদের মধ্যে একটি কমান্ড চালানোর জন্য কেবল একটি উপায় দরকার?
slm

তবে প্রকৃতপক্ষে আমি প্রার্থী এবং আপনি ঠিক কী করতে চান তা বুঝতে পারছেন না - ভেবেছিলেন যে স্ক্রিনে ট্যাবগুলি খোলার সিনট্যাক্সটি অন্য উইন্ডোতে রয়েছে তবে মনে হয় ı কিছু ফলের সাথে কিছু লেন যুক্ত করবেন
আহমেদ

ঠিক আছে আমি পেয়েছি যে আপনি আমার বাড়িতে এই ফাইলটিতে এই এবং অতীতটি অনুলিপি করতে চান তবে আমি যা যা জিজ্ঞাসা করছি তা হ'ল স্ক্রিন-নামটি আমি যেমন জানি তেমন স্ক্রিনের একটি শিরোনাম দেয় এবং আমি এই নামক সেশনে এই ট্যাবগুলিও খুলতে চাই উদাহরণস্বরূপ screen -S name1 --tab -e "some commands"আমি আশা করি আপনি যা চাইছেন তা পেয়ে যাবেন?
আহমেদ জাইন এল ডেইন

মিমি মিমিগুলি একটি নির্দিষ্ট সংখ্যার সাথে পূর্বনির্ধারিত ট্যাবগুলি নয় যা আমি স্যারকে জিজ্ঞাসা করছি এটি নয় :) রান টাইমে আমার কয়টি ট্যাব দরকার তা জিনোম টার্মিনাল কমান্ডের অনুরূপ কিছু নয় যা এটির gnome-terminal --tab -e "commands " --tab -e " commands একটি উইন্ডো খুলবে i উদাহরণস্বরূপ দুটি ট্যাবযুক্ত টার্মিনাল মানে :) :) আপনাকে ধন্যবাদ
আহমেদ জয়ন এল দেইন

উত্তর:


73

1. স্ক্রিনে ট্যাব

আপনার .স্ক্রিনআরসি ফাইলটিতে এটি যুক্ত করার জন্য আপনি সন্ধান করছেন:

screen -t tab1
screen -t tab2

স্ট্যাটাস বার ইত্যাদি দিয়ে আপনাকে শুরু করার জন্য এখানে একটি দুর্দান্ত বেসিক .স্ক্রিনসিআরসি দ্রষ্টব্য: এটি সাধারণত আপনার হোম ডিরেক্টরিতে অবস্থিত /home/<username>/.screenrc

screen -t validate #rtorrent
screen -t compile #irssi
screen -t bash3
screen -t bash4
screen -t bash5
altscreen on
term screen-256color
bind ',' prev
bind '.' next
#
#change the hardstatus settings to give an window list at the bottom of the
#screen, with the time and date and with the current window highlighted
hardstatus alwayslastline
#hardstatus string '%{= kG}%-Lw%{= kW}%50> %n%f* %t%{= kG}%+Lw%< %{= kG}%-=%c:%s%{-}'
hardstatus string '%{= kG}[ %{G}%H %{g}][%= %{= kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B} %m-%d %{W}%c %{g}]'

স্ক্রিনশট

স্ক্রিন সেশন এর এসএস

২. স্ক্রিনে ট্যাবগুলি (কমান্ডগুলি ভিতরে চালিত রয়েছে)

.screenrcনীচের উদাহরণটি 2 টি ট্যাব তৈরি করবে এবং প্রতিটিটিতে 3 টি প্রতিধ্বনি কমান্ড চালাবে।

screen -t tab1                                                                                     
select 0                                                                                           
stuff "echo 'tab1 cmd1'; echo 'tab1 cmd2'; echo 'tab1 cmd3'^M"                                     
screen -t tab2                                                                                     
select 1                                                                                           
stuff "echo 'tab2 cmd1'; echo 'tab2 cmd2'; echo 'tab2 cmd3'^M"                                     

altscreen on                                                                                       
term screen-256color                                                                               
bind ',' prev                                                                                      
bind '.' next                                                                                      
#                                                                                                  
#change the hardstatus settings to give an window list at the bottom of the                        
#screen, with the time and date and with the current window highlighted                            
hardstatus alwayslastline                                                                          
#hardstatus string '%{= kG}%-Lw%{= kW}%50> %n%f* %t%{= kG}%+Lw%< %{= kG}%-=%c:%s%{-}'              
hardstatus string '%{= kG}[ %{G}%H %{g}][%= %{= kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B} %m-%d %{W}%c %{g}]'

এই কৌশলটি প্রাথমিকভাবে কোনও ট্যাব নির্বাচন করতে স্ক্রিন selectএবং stuffকমান্ড ব্যবহার করে এবং তারপরে একটি স্ট্রিং "স্টাফ" করে।

স্ক্রিনশট

এসএস স্ক্রীন ডাব্লু / ট্যাব এবং কমান্ড

৩. একটি .screenrcফাইল ব্যবহার না করে # 2 তৈরি করা

আপনি যদি এমন দৃশ্যের সন্ধান করতে পারেন যেখানে আপনি পারেন:

  1. একটি স্ক্রিন সেশন তৈরি করুন
  2. এটি ট্যাবগুলি দিয়ে লোড করুন
  3. প্রতিটি ট্যাব তাদের নিজস্ব কমান্ড চলমান আছে
  4. একটি .screenrcফাইল প্রয়োজন হয় না

তাহলে এই আপনার জন্য এক! প্রস্তুত থাকুন। কমান্ড লাইনের সাহায্যে এটি সামান্য কৌশল পেতে পারে।

প্রারম্ভিকদের জন্য আসুন একটি স্ক্রিন সেশন তৈরি করুন:

$ screen -AdmS myshell -t tab0 bash

সুইচগুলি -AdmSনিম্নলিখিতটি করে:

( আরও তথ্যের জন্য স্ক্রিন ম্যান পৃষ্ঠা দেখুন)

-A

    Adapt the sizes of all windows to the size of the  current terminal. 
    By default, screen tries to restore its old window sizes when
    attaching to resizable terminals

-ড-মি

    Start screen in "detached" mode. This creates a new session but
    doesn't attach to it. This is useful for system startup scripts.

-সেশনের নাম

    When creating a new session, this option can be used to specify a
    meaningful name for the session. This name identifies the session for
    "screen -list" and "screen -r" actions. It substitutes the default
    [tty.host] suffix.

এখন এটি ট্যাবগুলি + তাদের আদেশ দিয়ে লোড করা শুরু করুন:

$ screen -S myshell -X screen -t tab1 vim
$ screen -S myshell -X screen -t tab2 ping www.google.com
$ screen -S myshell -X screen -t tab3 bash

এই 3 টি কমান্ড 3 টি অতিরিক্ত ট্যাব তৈরি করবে এবং ভিএম, পিং গুগল চালাবে এবং একটি বাশ শেল চালু করবে। আমরা যদি স্ক্রিন সেশনগুলি তালিকাভুক্ত করি তবে আমরা নিম্নলিখিতটি দেখতে পাব:

$ screen -ls
There is a screen on:
        26642.myshell   (Detached)
1 Socket in /var/run/screen/S-root.

আমরা যদি স্ক্রিন সেশনে সংযোগ করি, ম্যাসেল করব এবং এতে থাকা ট্যাবগুলি তালিকাবদ্ধ করে আমরা নীচের দেখতে পাব:

$ screen -r myshell

এই কী সমন্বয়টি হিট করুন: Ctrl+ এর Aপরে Shift+ +"

Num Name                                                                   Flags

  0 tab0                                                                       $
  1 tab1                                                                       $
  2 tab2                                                                       $
  3 tab3                                                                       $

ট্যাব 2 এ স্যুইচ করা :

64 bytes from ord08s08-in-f20.1e100.net (74.125.225.116): icmp_seq=443 ttl=55 time=41.4 ms
64 bytes from ord08s08-in-f20.1e100.net (74.125.225.116): icmp_seq=444 ttl=55 time=33.0 ms
64 bytes from ord08s08-in-f20.1e100.net (74.125.225.116): icmp_seq=445 ttl=55 time=30.1 ms

স্ক্রিনশট

ক্লায়েন্ট থেকে এসএসএস পর্দা শুরু

ওপি যা খুঁজছিল তা সম্পাদনের প্রাথমিক উপায় হ'ল উপরের কমান্ডগুলি। এটি অবশ্যই বাশ এলিয়াস বা শেল স্ক্রিপ্ট ব্যবহার করে সংশ্লেষিত এবং পরিমার্জনযোগ্য হতে পারে, এটি কেবল ক্ষমতা প্রদর্শন এবং উপায় দেখানোর জন্য!

তথ্যসূত্র


2
আমি কিউ-না-পড়ি যদি সে অধিবেশন শুরুর পরে একটি কমান্ড কার্যকর করতে চায়। সাধারণতscreen "cd /foo/bar/; summon_cthulhu;" <<-- in that screen session
রুনিয়াম

আপনি কী ভাবেন তার অর্থ, ট্যাবগুলি দিয়ে একটি পর্দা খুলুন এবং এর মধ্যে একটির ভিতরে একটি কমান্ড চালাবেন?
slm

হ্যাঁ। স্টার্টআপে কিছু শেল কমান্ড সঞ্চালন করুন মধ্যে পর্দা, যখন আপনি বুট পরে লগ ইন করুন এবং পেতে সাধারণত যেমন Last login on ... Welcome to XXX, N new mails....। কমপক্ষে এটিই আমি কিউ

প্রশ্ন সম্পর্কে তার মন্তব্য পড়ুন, তিনি উভয় চান।
slm

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