কমান্ড লাইন থেকে সরাসরি একাধিক বিভাজন দিয়ে আমি কীভাবে পর্দা শুরু করব?


13

আমি আমার সার্ভারে screenলগ ইন করার পরে ব্যবহার করছি ssh। এখন পর্যন্ত আমি আমার স্ক্রিন উইন্ডোতে হাত দিয়ে বিভাজনগুলি সেট আপ করেছি এবং নিম্নলিখিত স্ক্রিন শটটিতে প্রদর্শিত কমান্ডগুলি হাতে চালনা করব:

এখানে চিত্র বর্ণনা লিখুন

  • উপরের অংশটি চালানো উচিত tail -n 1 -f /home/server/log/access.log
  • নীচের ডান অংশ চালানো উচিত htop
  • নীচের বামদিকে একটি কমান্ড প্রম্পট হওয়া উচিত

কমান্ডগুলি / স্ক্রিপ্টের মাধ্যমে এটি করার কোনও উপায় আছে, তাই আমাকে হাতছাড়া করে প্রতিবার এটি পুনরায় করতে হবে না?



@ মুরু এটি পৃথক স্ক্রিনগুলি কীভাবে শুরু করবেন তার অংশটির পক্ষে এটির পুরোপুরি উত্তর দেয়, কেবলমাত্র উপরের মতো দেখানোর মতো সরাসরি আদেশ করার অংশটি নয়।
ভিডিওনাথ

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

উত্তর:


16

উইন্ডো ব্যবস্থা নির্দিষ্ট ঘটনাতে, সেখানে তাদের একটি ফাইলে সংরক্ষণ করার জন্য একটি পর্দা কমান্ড দেওয়া হল: layout dump। থেকে man screen:

layout dump [filename]

Write to a file the order of splits made in the current layout. This is
useful to recreate the order of  your  regions  used  in  your  current
layout.  Only  the  current  layout is recorded. While the order of the
regions are recorded, the sizes of  those  regions  and  which  windows
correspond  to  which regions are not. If no filename is specified, the
default is layout-dump, saved in the directory that the screen  process
was  started in. If the file already exists, layout dump will append to
that file. As an example:

           C-a : layout dump /home/user/.screenrc

will save or append the layout to the user's .screenrc file.

সুতরাং, একবার আপনি নিজেই ব্যবস্থাটি তৈরি করুন, চাপুন Ctrla:, তারপরে টাইপ করুন layout dump /path/to/some/file। বিন্যাসটি এতে সংরক্ষণ করা হবে /path/to/some/fileএবং আপনি এটির সাথে একটি নতুন সেশনে এটি পুনরুদ্ধার করতে পারেন:

screen -c /path/to/some/file

+1 সুন্দর; split -vঅনথিভুক্ত বলে মনে হয় :) এই জন্যই আমি সংগ্রাম ছিল।
ভিডিওনাথ

@ ভিডিওউনথ এটি ডিফল্ট কী-বাইন্ডিং বিভাগের অধীনে নথিভুক্ত is C-a | (split -v) Split the current region vertically into two new ones.
সের্গেই কোলোডিয়াজনি

হ্যাঁ, দেখে মনে হচ্ছে এটি কেবল ম্যানপেজেই উল্লেখ করা হয়েছে, তারপরে, C-a |তবে জিএনইউ
ডক্সে নেই

আপনি উল্লেখ করতে পারেন এমন একটি অদ্ভুত আচরণের সন্ধান পেয়েছেন: আপনি উদাহরণটি layout dump ~/layout/home/$USER/layout
লিখলে

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

10

আমি আমার প্রশ্নে প্রদর্শিত আউটপুট তৈরি করতে এবং @ মুড়ুর দুর্দান্ত উত্তর অনুসরণ করে নিম্নলিখিতটি নিয়ে এসেছি । ব্যবহার করে layout dumpআমাকে নিম্নলিখিত দেওয়া হয়েছে:

split
focus
split -v
focus

নোট: টিল্ড ( ~) সম্প্রসারণ সাথে কাজ করে না layout dumpতাই পরিবর্তে ~/layout.dmpউদাহরণ আপনি ব্যবহার করতে হবে জন্য /home/<username>/layout.dmp

যা থেকে আমি নিম্নলিখিতটি তৈরি করেছি .screenrc

# create the top screen
chdir /home/server/log
screen -t "Apache Log" tail -n 1 -f access.log
# split the screen and focus onto the new created space
split
focus
#create the bash
chdir /home/server/log
screen
# split vertically and focus onto the new area
split -v
focus
# create the htop screen
screen -t "Htop" htop
# focus twice to end up with the bash area active
focus
focus

এখন আমাকে কেবল টাইপ করতে হবে screenএবং আমার পছন্দসই লেআউটটি শুরু করতে হবে। আমি যারা এখানে ভাবছি তাদের উদাহরণ হিসাবে এটি রেখে গেছি, তবে @ মুড়ুর উত্তরটি আপ-ভোজন করতে ভুলবেন না, যেহেতু তিনিই আমাকে এটিকে সমাধান করতে সক্ষম করেছেন।

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