জিএনইউ স্ক্রিনটি সঠিকভাবে ব্যবহার করতে আমার কী জানতে হবে? [বন্ধ]


106

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

এটা অসাধারণ হবে.


1
এখানেও এর কয়েকটি ভাল উত্তর রয়েছে: স্ট্যাকওভারফ্লো
ক্রিস

কেউ সার্ভার ফল্ট এ এর অনুরূপ প্রশ্ন পোস্ট করেছে ।
ভ্যাগনার

যদি কেউ স্ক্রিন দিয়ে সবে শুরু করে এবং খুব কঠিন সময় কাটাচ্ছেন তবে তারা বিকল্প টিএমউक्स পরীক্ষা করে দেখতে পারেন ।
ক্রিস্টোফার বটমস

উত্তর:


93

আমি Screen10 বছরেরও বেশি সময় ধরে ব্যবহার করছি এবং সম্ভবত বৈশিষ্ট্যের অর্ধেকেরও কম ব্যবহার করছি। সুতরাং এখনই এর সমস্ত বৈশিষ্ট্যগুলি এখনই শিখার দরকার নেই (এবং আমি চেষ্টা করার পরামর্শ দেব না)। আমার প্রতিদিনের আদেশগুলি হ'ল:

^A ^W - window list, where am I
^A ^C - create new window
^A space - next window
^A p - previous window
^A ^A - switch to previous screen (toggle)
^A [0-9] - go to window [0-9]
^A esc - copy mode, which I use for scrollback

আমি মনে করি এটি। আমি মাঝে মাঝে বিভক্ত স্ক্রিন বৈশিষ্ট্যগুলি ব্যবহার করি তবে অবশ্যই প্রতিদিন নয়। অন্য টিপটি হ'ল স্ক্রীনটি লক হয়ে গেছে বলে মনে হচ্ছে কারণ আপনি দুর্ঘটনার কারণে কিছু এলোমেলো কী সংমিশ্রণটি আঘাত করেছেন, উভয়ই করুন ^Qএবং ^A ^Qএটিকে আনলক করার চেষ্টা করুন।


1
উইন্ডোটি বন্ধ করতে তালিকায় একটি কে যোগ করা উচিত।
লায়ো লিওপল্ড হার্টজ

7
আমার অভিপ্রায়ের চেয়ে দুর্ঘটনাক্রমে বেশি হত্যার সম্ভাবনার কারণে আমি ^ এ কে ব্যবহার করি না। পরিবর্তে, আমি ^ D (বা exit) ব্যবহার করে একটি উইন্ডোতে শেল থেকে বেরিয়ে এসেছি । উইন্ডোতে সর্বশেষ শেলটি বের হওয়ার পরে পর্দা উইন্ডোটি স্বয়ংক্রিয়ভাবে বন্ধ হয়ে যায়।
গ্রেগ হিউগিল

9
"Esc একটি এস্কি - কপি মোড, যা আমি স্ক্রোলব্যাকের জন্য ব্যবহার করি" স্যার আপনি পুরুষদের মধ্যে godশ্বর are
রব হাওয়ার্ড

4
^ এ [ঠিক একই কাজ করে।
atx

^ এ ^ ডি ট্রিকের জন্য ধন্যবাদ ... আমি আটকে গিয়েছিলাম এবং আমার অধিবেশনটিতে ফিরে আসতে পারিনি। যদি এই কাউকে সহায়তা করে আমি কিছুক্ষন আগে একটি নিবন্ধ লিখেছিলাম যা এখানে যেমন স্ক্রিনের মৌলিক ব্যাখ্যা করে তবে আরও কিছু কৌশল আছে geekpad.ca/blog/post/…
প্যাট্রিক ভুলে যান

36

স্ক্রিনের নীচে 'স্ট্যাটাস বার' সেট করার কোনও উপায় না পাওয়া পর্যন্ত আমি স্ক্রিনে অভ্যস্ত হতে পারিনি যা দেখায় যে 'ট্যাব' বা 'ভার্চুয়াল স্ক্রিন' আপনি কী আছেন এবং অন্য কোনটি রয়েছে shows এখানে আমার সেটআপ:

[roel@roel ~]$ cat .screenrc
# Here comes the pain...
caption always "%{=b dw}:%{-b dw}:%{=b dk}[ %{-b dw}%{-b dg}$USER%{-b dw}@%{-b dg}%H %{=b dk}] [ %= %?%{-b dg}%-Lw%?%{+b dk}(%{+b dw}%n:%t%{+b dk})%?(%u)%?%{-b dw}%?%{-b dg}%+Lw%? %{=b dk}]%{-b dw}:%{+b dw}:"

backtick 2 5 5 $HOME/scripts/meminfo
hardstatus alwayslastline "%{+b dw}:%{-b dw}:%{+b dk}[%{-b dg} %0C:%s%a %{=b dk}]-[   %{-b dw}Load%{+b dk}:%{-b dg}%l %{+b dk}] [%{-b dg}%2`%{+b dk}] %=[ %{-b dg}%1`%{=b dk} ]%{-b dw}:%{+b dw}:%<"

sorendition "-b dw"
[roel@roel ~]$ cat ~/scripts/meminfo
#!/bin/sh
RAM=`cat /proc/meminfo | grep "MemFree" | awk -F" " '{print $2}'`
SWAP=`cat /proc/meminfo | grep "SwapFree" | awk -F" " '{print $2}'`
echo -n "${RAM}kb/ram ${SWAP}kb/swap"
[roel@roel ~]$

3
বাইওবু (স্ক্রিন-প্রোফাইলগুলি) দেখুনও: লঞ্চপ্যাড.এন.টি.বায়ুবু
ড্রিউ স্টিফেন্স

এটি আশ্চর্যজনক, আপনাকে ধন্যবাদ। আমি যখন আমার টার্মিনালটি বিভক্ত করার চেষ্টা করছিলাম তখন প্রকৃতপক্ষে কী ঘটেছিল তা জানার জন্য আমি লড়াই করে যাচ্ছিলাম। আমি বুঝতে পারি না যে এই কমান্ডগুলির কোনওরকম কাজ করার জন্য প্রথমে আমার পর্দা চালানো দরকার, আমি জানি।
ওগাদে

30

Ctrl+ A? - সাহায্য পর্দা দেখান!


আমি এটার সাথে সম্পূর্ণ একমত। এটি অন্যান্য উত্তরের চেয়ে অনেক বেশি কার্যকর, যেহেতু আপনি এটি দ্বারা অন্যান্য আদেশগুলি কেটে নিতে পারেন তবে আপনি এটি বিপরীতে করতে পারবেন না। এছাড়াও জিনিসটি মনে রাখা অনেক সহজ।
লিও লোপল্ড হার্টজ 준영

26

আপনার বন্ধু ^Aযদি বাশের লাইনের শুরুতে আসতে চাপ দেওয়ার অভ্যাসে থাকে তবে সে কিছুটা অবাক করে দেয়, যেহেতু ^Aস্ক্রিন কমান্ড কী বাধ্যতামূলক। সাধারণত আমি হিমশীতল স্ক্রিনটি দিয়ে শেষ করি, সম্ভবত কয়েকটি র্যান্ডম কী কারণে আমি চাপলাম ^A:-)

এই ক্ষেত্রে আমি চেষ্টা করি

^A sএবং ^A qটার্মিনাল স্ক্রোলিং অবরোধ / অবরোধ মুক্ত করুন

এটা ঠিক করতে। পর্দার অভ্যন্তরে একটি লাইনের শুরুতে যেতে, কী সিকোয়েন্সটি ^A a


1
Escape এ থেকে পালানোর চরিত্রটি অন্য কোনও কিছুর কাছে পরিবর্তন করা সহজ। আমি আমার উত্তরে বিশদ রেখেছি।
অ্যান্ড্রু জনসন

3
+ 1 + 1 + 1 ^ এ s ... আপনাকে ধন্যবাদ ... লক স্ক্রিন :)
ইউজি 'টোমিটা' টোমিটা

1
জন্য আপনার জন্য @agnul +1 টি ^ A একটি আমি একটি স্বাভাবিক ব্যাশ সেশনে ^ একটি একজন ব্যবহারকারী এবং আমি এটি একটি পর্দা অধিবেশন ভিতরে ব্যবহার করতে পারবেন না। দুর্দান্ত টিপ জন্য ধন্যবাদ! :)
ইকাসিম্পান

স্ক্রিনের অভ্যন্তরে কীভাবে সিটিআরএল এ কাজ করতে হবে তা বলার জন্য আপনাকে 100 বার ধন্যবাদ জানাই। সারা জীবন এই খুঁজছিলাম।
ব্যবহারকারী 674669

এখানে 'এ' এবং 'এ' কেস সংবেদনশীল?
আদিত্য এমপি

12

তোমার থেকে পালানোর কী remap করতে Ctrl+ + Aআপনার ~ / আপনার পছন্দের অন্য কী হতে, তাই আপনি যদি অন্য কিছু, যেমন ব্যাশ লাইন শুরুতে যেতে জন্য এটি ব্যবহার করেন, তখন আপনাকে শুধু একটি লাইন যোগ করতে হবে। স্ক্রিনসিআর ফাইল। এটি ^ বি বা ^ বি তৈরি করতে, ব্যবহার করুন:

escape ^bB

কমান্ড লাইন থেকে একাধিক সেশন নিয়ন্ত্রণে রাখতে নাম সেশন ব্যবহার করুন। আমি প্রতি কার্যে একটি সেশন ব্যবহার করি, প্রতিটি একাধিক ট্যাব সহ:

  স্ক্রিন-এলএস # আপনার বর্তমান স্ক্রিন সেশনগুলি তালিকাবদ্ধ করে
  স্ক্রিন-এস <নাম> # নাম নামে একটি নতুন স্ক্রিন সেশন তৈরি করে
  স্ক্রীন-আর <নাম> # নামযুক্ত স্ক্রিন সেশনে সংযুক্ত

স্ক্রিন ব্যবহার করার সময় আপনার কেবল কয়েকটি কমান্ডের প্রয়োজন:

  C একটি সি একটি নতুন শেল তৈরি করুন
  ^ এ [0-9] শেল স্যুইচ করুন
  K একটি কে বর্তমান শেলটিকে হত্যা করে
  ^ একটি ডি পর্দা থেকে সংযোগ বিচ্ছিন্ন
  ^ এ? সাহায্য প্রদর্শন করুন

একটি দুর্দান্ত দ্রুত রেফারেন্স এখানে পাওয়া যাবে । এটি বুকমার্কিং মূল্য।


আমি নেস্টেড স্ক্রিন সেশন ব্যবহার করি। আমি বাইরেরটি শুরু করি screen -e^ooযাতে এটির জন্য আমি Ctrl + O ব্যবহার করতে পারি এবং তারপরে অভ্যন্তরীণগুলি শুরু করতে screen -mযাতে তারা নতুন সেশন শুরু করে।
স্ট্যাটিকসান

1
আপনি ফ্লাইতে পালানোর কীটি পরিবর্তন করতে পারেন। একটি চলমান পর্দা অধিবেশন, লিখুন ^A :দ্বারা অনুসরণ \Bb^ বি পালাবার কী সেট করতে লিখুন করে। সাধারণভাবে, ^A :আপনার .screenrcবোঝার জন্য আদেশটি মূল্যায়ন করতে দেয় ।
মালানা

8

স্ক্রিনের সাথে পরিচিত এই ধরণের বাছাই করার জন্য কিছু টিপস, তবে ম্যান পৃষ্ঠাতে তারা যে জিনিসগুলি পড়েছেন তা মনে রাখার ঝোঁক নেই:

  • স্ক্রিন উইন্ডোর নাম পরিবর্তন করা খুব সহজ: ctrl+ A shift+ A
  • আপনি কি স্ক্রিন থেকে শেষ বার্তাটি মিস করেছেন? ctrl+ + a ctrl+ + mআপনার জন্য এটি আবার দেখাবে।
  • আপনি যদি কোনও কিছু চালাতে চান (যেমন কোনও ফাইল টেলিং) এবং স্ক্রিনটি আপনাকে যখন পরিবর্তন হয় তখন আপনাকে বলতে হয়, লক্ষ্য উইন্ডোতে ctrl+ A shift+ ব্যবহার mকরুন। সতর্কতা: কিছু পরিবর্তন হলে এটি আপনাকে জানাতে দেবে ।
  • উইন্ডো 15 সরাসরি নির্বাচন করতে চান? আপনার .screenrcফাইলে এগুলি ব্যবহার করে দেখুন :
bind  ! select 11
bind  @ select 12
bind \# select 13
bind  $ select 14
bind  % select 15
bind \^ select 16
bind  & select 17
bind  * select 18
bind  ( select 19
bind  ) select 10

যা উইন্ডোজ 10 থেকে 19 এর জন্য ctrl+ a shift+ বরাদ্দ করে 0 through 9


7

Ctrl+ Aবেস কমান্ড

Ctrl+ A N= *** এন *** এক্সট্রা স্ক্রিনে যান

Ctrl+ A P= *** পি *** রিভেরেস স্ক্রিনে যান

Ctrl+ A C= *** সি *** নতুন স্ক্রিনটি রিট করুন

Ctrl+ A D= *** ডি *** আপনার স্ক্রিনটি সংযুক্ত করুন


6

http://www.debian-administration.org/articles/34

আমি লিখেছিলাম যে কয়েক বছর আগে, তবে এটি এখনও একটি ভাল ভূমিকা যা প্রচুর ইতিবাচক প্রতিক্রিয়া পায়।


লিঙ্কটি (কার্যকরভাবে) ভেঙে গেছে:$VAR1 = \'Can\'t connect to local MySQL server through socket \'/var/run/mysqld/mysqld.sock\' (111 "Connection refused") at ../lib/Singleton/DBI.pm line 95. ';
পিটার মর্টেনসেন

6

আমি এটি "যুক্ত" করব: যুক্ত করুন

bind s

আপনার কাছে .screenrc, যদি আপনি - আমার মতো - বিভক্ত উইন্ডোগুলি ব্যবহার করতেন, যেমন C-a Sআসল উইন্ডোটি বিভক্ত হয় তবে C-a sএটিকে হিমশীতল করে দেয়। সুতরাং আমি কেবল হিমশীতল শর্টকাট অক্ষম করেছি।


2
^-Qআপনি যদি আঘাত করেন তবে নিথর হয়ে যায়^-S
প্লেটো

আপনি ঠিক @ প্লাটো তবুও আমি ব্যবহারকারীদের সাথে পরিবেশে কাজ করছি, যারা প্রায় কোনও শর্টকাট মুখস্ত করে না ... আমার এটি অক্ষম করা দরকার।
জসোল্ট বটিকাই

এনপি আমি এই থ্রেডটি প্রথম খুঁজে পেয়েছি এবং 'ফ্রিজ' অনুসন্ধান করেছি এবং আমি যা খুঁজছিলাম তা খুঁজে পেল না
প্লেটো

6

Ctrl+ aএকটি বিশেষ কী।

Ctrl+ a d- [ডি] এটাচ, পটভূমিতে প্রোগ্রামগুলি (ইরশী?) রেখে দিন, ঘরে যান।

Ctrl+ a c[সি] একটি নতুন উইন্ডো পুনরায় Ctrl+ + a 0-9সংখ্যা অনুসারে উইন্ডোর মধ্যে স্যুইচ করুন

স্ক্রিন -আর - বিচ্ছিন্ন সেশনে ফিরে যান

এটি ব্যবহারের 90% ক্ষেত্রে আচ্ছাদিত। একক সময়ে সমস্ত কার্যকারিতা দেখানোর চেষ্টা করবেন না।


যদিও, আমি যখন প্রথম জানতে screenপেরেছিলাম তখন একটি স্ক্রীনকে আলাদা করা এবং পুনরায় সংযুক্ত করার অর্থ আসলে কী তা নিয়ে আমি বিভ্রান্ত হয়ে পড়েছিলাম । উদ্ধৃতি : "... আপনি প্রদত্ত মেশিনে পৃথক কনসোলগুলিতে (যেমন রিমোট মেশিনে এসএসএস, আইআরসি সেশনস,…) তে দীর্ঘকালীন চলমান কাজগুলি থাকতে পারেন, সেশন থেকে বিচ্ছিন্ন হয়ে, একটি শারীরিক অবস্থান থেকে অন্য স্থানে যেতে, সংযোগ স্থাপন করতে মেশিনটি ssh এর মাধ্যমে এবং কাজ চালিয়ে যেতে স্ক্রিন সেশনে পুনরায় সংযুক্ত করুন। "
জেডাব্লু

4

কেবলমাত্র পর্দার সাথে সম্পর্কিত নয়, তবে আমার টার্মিনালে 256 টি রঙ সক্ষম করে জিনু স্ক্রিন এবং ভিম আমার স্ক্রিনের অভিজ্ঞতার বড় সময়কে উন্নত করেছে (বিশেষত যেহেতু আমি ভিমে দিনে প্রায় 8 ঘন্টা কোড করি - কিছু দারুণ চক্ষু-বান্ধব বর্ণমালা রয়েছে)।


ধন্যবাদ! এটা আমাকে কিছুক্ষণ বিরক্ত করছে।
ড্যান গোল্ডস্টেইন

3

আমি। স্ক্রীনআরসি-তে প্রথম পরিবর্তনটি করে যাচ্ছি পলায়ন কমান্ড পরিবর্তন করা। আপনার অনেকের বিপরীতে নয়, প্রায় প্রতিটি প্রসঙ্গে সেই মৌলিক কার্যকারিতাটির সাথে হস্তক্ষেপের কারণে আমি ডিফল্ট Ctrl-A ক্রম পছন্দ করি না। আমার .স্ক্রিনআরসি ফাইলটিতে আমি যুক্ত করেছি:

পলায়ন `ই

এটা ব্যাকটিক-ই।

এটি আমাকে এস্কেপ কী হিসাবে ব্যাকটিকটি ব্যবহার করতে সক্ষম করে (যেমন একটি নতুন স্ক্রিন তৈরি করতে, আমি ব্যাকটিক-সি টিপছি, বিচ্ছিন্নতা ব্যাকটিক-ডি, ব্যাকটিক-? সহায়তা, ব্যাকটিক-ব্যাকটিকটি পূর্ববর্তী স্ক্রিন ইত্যাদি)। এটির হস্তক্ষেপের একমাত্র উপায় (এবং আমাকে নিজের অভ্যাসটি ভেঙে দিতে হয়েছিল) এক্সিকিউশন আউটপুট ক্যাপচার করার জন্য কমান্ড লাইনে ব্যাকটিক ব্যবহার করছে বা ব্যাকটিক রয়েছে এমন কোনও কিছু আটকানো হচ্ছে। পূর্বেরদের জন্য, আমি বেস command (কমান্ড) কনভেনশনটি ব্যবহার করে আমার অভ্যাসটি সংশোধন করেছি। পরবর্তীগুলির জন্য, আমি সাধারণত পপ করি অন্য একটি এক্সটার্ম খুলুন বা পর্দা থেকে বিচ্ছিন্ন করে তারপরে ব্যাকটিকযুক্ত সামগ্রীটি পেস্ট করুন। অবশেষে, আমি যদি একটি আক্ষরিক ব্যাকটিক sertোকাতে চাই তবে আমি কেবল ব্যাকটিক-ই টিপুন।


উজ্জ্বল। আমি সর্বদা ব্যাকটিক ব্যবহার করি, যদিও আমি জানি আমার $ (...) ব্যবহার করা উচিত, তাই এখন আমার ধারণা আমার উপায়গুলি পরিবর্তন করতে হতে পারে। ব্যাকটিকটি কিছুটা দূরে, তবে মোডিফায়ার প্রয়োজন ছাড়াই একটি একক কী থাকা ভাল। তবে কেন "ই", এবং কীভাবে আপনি এটি মনে রাখবেন?
আইকনোক্লাস্ট

আমি কেবল 'পলায়ন ``' পরীক্ষা করেছি এবং এটি দুর্দান্তভাবে কাজ করে এবং মনে রাখা সহজ মনে হয়। আপনি যদি ব্যাকটিক চাপান এবং আপনি যা প্রত্যাশা করছেন তা না পেলে কেবল আবার আঘাত করুন।
আইকনোক্লাস্ট

আমি এটি করে ফেলেছি, তবে স্ক্রিনে থাকাকালীন আসলে কি কোনও উপায় আছে? কখনও কখনও, এটি করা প্রয়োজন, এবং এটি করার জন্য আমি আলাদা হওয়াও ঘৃণা করি ...
গিলোকন

@ গুইলচোন: পূর্ববর্তী মন্তব্যটি ঠিক সেটাই ব্যাখ্যা করে।
ট্রিপলি

3

উবুন্টু সার্ভারের পরবর্তী সংস্করণে ডিফল্টরূপে একটি ভাল জিএনইউ স্ক্রিন সেটআপ পাওয়ার জন্য কিছু আকর্ষণীয় কাজ চলছে যার মধ্যে সমস্ত উইন্ডো প্রদর্শন করার জন্য পর্দার নীচে ব্যবহার করার পাশাপাশি অন্যান্য দরকারী মেশিনের বিশদ (যেমন আপডেটের সংখ্যা রয়েছে) অন্তর্ভুক্ত রয়েছে উপলব্ধ এবং মেশিনটির পুনরায় বুট লাগবে কিনা)। আপনি সম্ভবত এগুলি গ্রহণ করতে পারেন .screenrcএবং এটি আপনার প্রয়োজন অনুসারে কাস্টমাইজ করতে পারেন।

আমার মধ্যে সবচেয়ে দরকারী কমান্ডগুলি .screenrcনিম্নলিখিত:

shelltitle "$ |bash" # Make screen assign window titles automatically
hardstatus alwayslastline "%w" # Show all window titles at bottom line of term

এই উপায়টি আমি সর্বদা জানি যে কী উইন্ডো খোলা আছে এবং এই মুহুর্তে তাদের মধ্যে কী চলছে।


3

আমি নিম্নলিখিতগুলির জন্য ব্যবহার করি ssh:

#!/bin/sh
# scr - Runs a command in a fresh screen
#
# Get the current directory and the name of command

wd=`pwd`
cmd=$1
shift

# We can tell if we are running inside screen by looking
# for the STY environment variable.  If it is not set we
# only need to run the command, but if it is set then
# we need to use screen.

if [ -z "$STY" ]; then
        $cmd $*
else
        # Screen needs to change directory so that
        # relative file names are resolved correctly.
        screen -X chdir $wd

        # Ask screen to run the command
        if [ $cmd == "ssh" ]; then
                screen -X screen -t ""${1##*@}"" $cmd $*
        else
                screen -X screen -t "$cmd $*" $cmd $*
        fi
fi

তারপরে আমি নীচের ব্যাশ উপাধি সেট করেছি:

vim() {
        scr vim $*
}

man() {
        scr man $*
}

info() {
        scr info $*
}

watch() {
        scr watch $*
}

ssh() {
        scr ssh $*
}

উপরের এলিয়াসগুলির জন্য এটি একটি নতুন স্ক্রিন খোলে এবং যদি ssh ব্যবহার করে এটি স্ক্রিনের শিরোনামটির নামকরণ করে ssh হোস্টনেম রাখে।


2

আমি উইন্ডোগুলির জন্য বর্ণনামূলক নামের সাথে একটি স্ক্রিন সেশন সেট আপ করতে চাই। A একটি এ আপনাকে বর্তমান উইন্ডোতে একটি নাম দেবে এবং ^ এ "আপনাকে আপনার উইন্ডোগুলির একটি তালিকা দেবে done সম্পন্ন হলে, ^ বিজ্ঞাপন দিয়ে পর্দাটি বিচ্ছিন্ন করুন এবং স্ক্রিন-আর এর সাথে পুনরায় সংযুক্ত করুন will


1

আমি screen -d -RRএকটি প্রদত্ত স্ক্রিনে স্বয়ংক্রিয়ভাবে তৈরি / সংযুক্ত করতে ব্যবহার করতে চাই । আমি এটিকে সহজ করার জন্য ব্যাশ ফাংশন তৈরি করেছি ...

function mkscreen
{
    local add=n

    if [ "$1" == '-a' ]; then
        add=y
        shift;
    fi

    local name=$1;
    shift;
    local command="$*";

    if [ -z "$name" -o -z "$command" ]; then
        echo 'Usage: mkscreen [ -a ] name command

    -a          Add to .bashrc.' 1>&2;
        return 1;
    fi

    if [ $add == y ]; then
        echo "mkscreen $name $command" >> $HOME/.bashrc;
    fi

    alias $name="/usr/bin/screen -d -RR -S $name $command";

    return 0;
}

function rmscreen
{
    local delete=n

    if [ "$1" == '-d' ]; then
        delete=y
        shift;
    fi

    local name=$1;

    if [ -z "$name" ]; then
        echo 'Usage: rmscreen [ -d ] name

    -d          Delete from .bashrc.' 1>&2;
        return 1;
    fi

    if [ $delete == y ]; then
        sed -i -r "/^mkscreen $name .*/d" $HOME/.bashrc;
    fi

    unalias $name;

    return 0;
}

তারা একটি উপন্যাস তৈরি /usr/bin/screen -d -RR -S $name $command। উদাহরণস্বরূপ, আমি স্ক্রিন সেশনে ইরসি ব্যবহার করতে চাই, সুতরাং আমার .bashrc (এই ফাংশনগুলির নীচে), আমার কাছে রয়েছে:

mkscreen irc /usr/bin/irssi

তারপরে আমি ircইরশিতে নামার জন্য একটি টার্মিনাল টাইপ করতে পারি। যদি স্ক্রিন 'রিক' এখনও বিদ্যমান না থাকে তবে এটি তৈরি করা হয় এবং এটি থেকে / ইউএসআর / বিন / ইরসি চালিত হয় (যা স্বয়ংক্রিয়ভাবে সংযুক্ত হয়, অবশ্যই)। যদি এটি ইতিমধ্যে চলমান থাকে তবে আমি কেবল এটির সাথে পুনরায় সংযুক্ত হই, জোর করে এর সাথে ইতিমধ্যে সংযুক্ত অন্য কোনও উদাহরণকে আলাদা করে রাখছি। এটা বেশ সুন্দর।

আর একটি উদাহরণ পার্লডোকসের জন্য অস্থায়ী স্ক্রিন উপকরণ তৈরি করা হচ্ছে যখন আমি সেগুলি দেখতে পেলাম:

mkscreen perlipc perldoc perlipc
perlipc # Start reading the perldoc, ^A d to detach.
...
# Later, when I'm done reading it, or at least finished
# with the alias, I remove it.
rmscreen perlipc 

-A বিকল্প (অবশ্যই প্রথম যুক্তি হতে হবে) স্ক্রিন ওরফে .bashrc- এ সংযুক্ত করে (যাতে এটি অবিচল থাকে) এবং -d এটিকে সরিয়ে দেয় (এগুলি সম্ভাব্য ধ্বংসাত্মক হতে পারে, তাই নিজের ঝুঁকিতে ব্যবহার করুন)। xD

সংযুক্ত করুন:

স্ক্রিনের সাথে অনেক বেশি কাজ করার সময় আমি সুবিধাজনক বলে মনে করি এমন আরেকটি বাশ-ইসম:

alias sls='/usr/bin/screen -ls'

এইভাবে আপনি আপনার স্ক্রিনকে অনেক কম কীস্ট্রোক দিয়ে তালিকাবদ্ধ করতে পারেন। আমি জানি না যে slsকোনও বিদ্যমান ইউটিলিটিগুলির সাথে সংঘর্ষ হয় কিনা , তবে এটি আমার সিস্টেমে ছিল না তাই আমি এটির জন্য গিয়েছিলাম।



0

Ctrl+ + Aইউনিক্স মানুষের জন্য একটি দুর্দান্ত বিশেষ অক্ষর, কিন্তু তোমার সাথে কথা বলতে পর্দা ব্যবহার করছেন OpenVMS , তারপর না সক্ষম হচ্ছে ^ একটি আপনি অকালে পালকহীন করতে যাচ্ছে।

ইন VMS , আপনি একটি সম্পাদনা করছেন যদি DCL ইতিহাস বাফার থেকে মৃত্যুদন্ড থেকে কমান্ড পূর্বে, সন্নিবেশ মোড বন্ধ করা আছে (এটা কিছু কিছু কারণ আমি এখানে মধ্যে পাবেন না জন্য হতে হয়েছে) ... তাই আপনি ডন তে এটি চালু করতে আপনার কমান্ডটি স্থানের জিনিসগুলির চেয়ে বেশি টাইপ করবেন না, আপনাকে hit ^ এ চাপতে হবে।


আমি screen -e ^Llএকই কারণে ব্যবহার করি ; Emacs এ লাইনের শুরুতে যেতে আমি কেবল ctrl-A টাইপ করতে শিখতে পারি না। ভাগ্যক্রমে, সিটিআরএল-এল একটি কাস্ট্রোক যা আমার খুব কমই প্রয়োজন, এবং এটি আইএমএইচওও তার সাধারণ অর্থের সাথে পুনরায় সংযুক্ত করে (পুনরায় চিত্র / স্পষ্ট স্ক্রিন)।
ট্রিপলি

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