জিনোম-টার্মিনালে প্রোফাইলগুলির মধ্যে স্যুইচ করার জন্য কমান্ড-লাইন


20

আমি জিনোম-টার্মিনালের জন্য একটি নতুন প্রোফাইল তৈরি করেছি এবং নীচের চিত্রটিতে আপনি যেমন দেখতে পাচ্ছেন তেমনই "ইমপ্লিপড" প্রোফাইল এবং নতুন তৈরি প্রোফাইলের মধ্যে আমি স্যুইচ করতে পারি:

জিনোম-টার্মিনালে প্রোফাইলগুলির মধ্যে স্যুইচ করুন

এখন আমি ভাবছি কীভাবে আমি একটি কমান্ড-লাইন / স্ক্রিপ্ট ব্যবহার করে বা সম্ভবত এর জন্য একটি শর্টকাট ব্যবহার করে প্রোফাইলগুলির মধ্যে স্যুইচ করতে পারি।

দ্রষ্টব্য: সমাধানগুলি এর মতো:

gnome-terminal --tab-with-profile=Implicit && exit 

বাদ দেওয়া হয়েছে কারণ আমি প্রোফাইল পরিবর্তন করার প্রক্রিয়ায় অন্য একটি টার্মিনাল বন্ধ এবং খুলতে বা অন্য টার্মিনাল উইন্ডোটি না পেতে পছন্দ করি।


1
Gconftool-2 এর মাধ্যমে আপনি এমন প্রোফাইল সেট করতে পারেন যার পরিবর্তনগুলি তাত্ক্ষণিক। আপনি এই চেক আউট আছে -> stackoverflow.com/questions/660442/...
Stormvirux

@ স্টোরমভিরাক্স ন ... সুতরাং আপনি কীভাবে প্রোফাইল স্যুইচ করতে gconftool বা gconftool-2 ব্যবহার করবেন তা ব্যাখ্যা করতে পারেন? আমি সেখানে ভাল উত্তর / ব্যাখ্যা দেখতে পাচ্ছি না।
রাদু রেডানু

সদৃশ প্রশ্ন: জিজ্ঞাসাবাবু
জাকব

উত্তর:


9

"অন্তর্নিহিত" প্রোফাইলটিতে স্যুইচ করতে:

xdotool key Alt+t p Return

দ্বিতীয় প্রোফাইলটিতে স্যুইচ করতে:

xdotool key Alt+t p Down Return

xdotool এক্সডটুল ইনস্টল করুন উবুন্টুতে ডিফল্টরূপে ইনস্টল করা নেই, তাই এটি প্রথমে ইনস্টল করা আবশ্যক।

অবশ্যই, এই কমান্ডগুলির জন্য কাস্টম কীবোর্ড শর্টকাট যুক্ত করা যেতে পারে ।


এটি কোনও শর্টকাট নয়। আপনি কেবল কিপ্রেসগুলি অনুকরণ করছেন, এটি কেবলমাত্র অ্যাপ্লিকেশনটির স্মৃতিবিজ্ঞান।
ব্রায়াম

1
@ ব্রাইয়াম হ্যাঁ, এটি শর্টকাট নয়, আমি দেখতে পাচ্ছি। আমি যেমন জিজ্ঞাসা করেছি এটি কমান্ড-লাইন ( man xdotoolআরও তথ্যের জন্য দেখুন), যা আমার ইচ্ছার মতো কাজ করছে এবং আরও ভাল কিছু উপস্থিত না হওয়া পর্যন্ত আমি এই উত্তর নিয়ে খুশি। ;)
রাদু রাদিয়ানু

আপনার বাগ্র্যাকারে পরামর্শ দেওয়ার জন্য গুরুত্ব সহকারে বিবেচনা করা উচিত ...
ব্রায়াম

@ ব্রাইয়াম যেমনটি আমি আপনাকে বলেছিলাম, আমি এই সমাধানটি ঠিক করছি, এটি একটি কবজির মতো কাজ করছে। আপনার পরামর্শের সম্বন্ধে নেই এক 2002 থেকে এই অর্থে (2010 পরিবর্তন: " এটি অতিরিক্ত চমৎকার হবে যদি আমি আমার পছন্দের প্রোফাইল খুলতে ঠিক দুই কীস্ট্রোকগুলি ব্যবহার করতে পারেন। " - দেখুন এই মন্তব্যটি )। সুতরাং, আপনি কেন মনে করেন যে আমার একটি নতুন যুক্ত করা উচিত? আপনি নকল পছন্দ করেন?
রাদু রেডানু

এটি আর দুর্ভাগ্যজনকভাবে আর কাজ করে না
রবআউ

5

ইতিমধ্যে অনেক দুর্দান্ত উত্তর কিন্তু আমি xdotool ব্যবহার করে আরও একটি প্রকরণ যোগ করতে চেয়েছিলাম যা মেনু বারটি দৃশ্যমান হওয়ার প্রয়োজন হয় না ...

কী কম্বো শিফট + এফ 10 একটি পপ-আপ মেনু খুলবে (টার্মিনালে ডান-ক্লিকের সমতুল্য) এবং সেখান থেকে প্রোফাইল পরিবর্তন করা যাবে।

যেমন xdotool key shift+F10 r 3তৃতীয় প্রোফাইল পেতে

আমি আরও জানতে পেরেছি যে এই পদ্ধতিতে এক্সডটুলের জন্য বিলম্ব নির্ধারণের প্রয়োজন নেই (যা আমি মেনু বার পদ্ধতির জন্য প্রয়োজনীয় বলে মনে করি) সুতরাং এটি সামান্য দ্রুত।

আমি প্রোফাইলগুলি অনেকগুলি পরিবর্তন করার প্রবণতা রাখি তাই আমি এটিকে কোনও ফাংশনে আবদ্ধ করি:

function chp(){
      xdotool --clearmodifiers key Shift+F10 r $1
}

সুতরাং আমি কেবলমাত্র chp Nনবম প্রোফাইলটিতে স্যুইচ করতে কল করতে পারি ।

আমার সেটআপের আরও কয়েকটি টিপস এবং আইডিসিএনসিরাসি:

  • chpআমার .bashrc এ একটি কমান্ড যুক্ত করে আমি নতুন ট্যাবগুলিকে সর্বদা ডিফল্ট প্রোফাইলে স্যুইচ করতে বাধ্য করতে পারি

  • আমি হোস্টের উপর ভিত্তি করে আমার এসএস সেশনের কোডটি রঙ করি তবে আমি আমার এসএসএফ ওরফে নতুন ট্যাব বা উইন্ডো খুলতে পছন্দ করি না এবং আমি এসএসএস থেকে প্রস্থান করার সময় প্রোফাইলটি ডিফল্টে ফিরে যেতে চাই। আমার সমাধান: alias somehost="chp 2; ssh user@somehost; chp 1"

  • আমি এক্সডটুলটিকে পতাকাটি --clearmodifiersদিয়েছি যাতে যদি আমি কোনও সংশোধক কী ধরে থাকি (কোনও ট্যাব / উইন্ডো খোলার সময়, এসএসএস প্রস্থান করা ইত্যাদি), এটি এক্সডটুলের সাথে হস্তক্ষেপ করবে না।

  • আমি সংখ্যার সাথে আমার প্রোফাইলের নামগুলি প্রিপেন্ড করি যাতে আমি যদি একটি নতুন যুক্ত করি তবে এটি প্রোফাইল মেনুতে বর্ণমালা করার কারণে এটি অন্য সকলকে স্থানান্তরিত করে না


... কেবলমাত্র একটি দ্রষ্টব্য যে এই পদ্ধতির জন্য মেনু এক্সিলিটরের কীটি টার্মিনাল সেটিংসে সক্ষম করা প্রয়োজন> সাধারণ
ভাইজ

আমার এক্সডটুলের জন্য এফওয়াইআই --clearmodifiersপরে আসতে হবে key
লিলিডজওয়গ

4

জিইআইআই ব্যবহার না করে কোনও শর্টকাট নেই যা আপনাকে টার্মিনালের মধ্যে প্রোফাইল পরিবর্তন করতে দেয় (মেনুগুলিতে নেভিগেট না করে যেমন মন্তব্য করেছিলেন), জিইআইআই ব্যবহার না করে। ম্যানুয়ালটি উদ্ধৃত করা হচ্ছে ( স্থিতিশীল , উন্নয়ন 3.9 ):

টার্মিনাল ▸ প্রোফাইল পরিবর্তন থেকে কোনও প্রোফাইল নির্বাচন করে আপনি আপনার বর্তমান টার্মিনাল ট্যাব বা উইন্ডোতে প্রোফাইল পরিবর্তন করতে পারেন।

(আপনি এটি বাগ ট্র্যাকারের পরামর্শ হিসাবে প্রস্তাব করতে পারেন )


আসলে, একটি শর্টকাট রয়েছে: Alt + T এর পরে পি , আপ তীর বা ডাউন তীর এবং প্রবেশ করুন । তবে এটি কিছুটা দীর্ঘ ...
রাদু রেদেনু

@ রাদুরাদেনু আল্ট + টি আমার টার্মিনালটিতে কাজ করে না 3.8.3: /
ব্রায়াম

1
@ RaduRădeanu আমি অনুমান Alt + T হয় গুই ব্যবহার আসলে, এটা ঠিক মাউস ব্যবহার করে না।
মুন.মুসিক

@ ব্রাইয়াম আপনি যদি ইংরেজির অ-ইংরেজী সংস্করণ ব্যবহার করে থাকেন gnome-terminal, টিপুন altএবং দেখুন যে 'টার্মিনাল' এর আপনার ভাষা সংস্করণের জন্য কোন বর্ণটি হাইলাইট করা হচ্ছে (এটি 'সহায়তা' এর ঠিক বামে, এটি আমার পোলিশ সংস্করণে 5 ম আইটেম), তবে সেই চিঠিটি ব্যবহার করুন সঙ্গে alt
মুন.মুসিক

@ মুন.মুসিক আমি জিনোম-টার্মিনাল ৩.৮.৩ এর ডেবিয়ান সংস্করণ ব্যবহার করছি এবং মনে হচ্ছে মেনুগুলি অ্যাক্সেস করার জন্য এটিতে আল্ট মডিফায়ার নেই।
ব্রায়াম

3

আমিও একই কাজ করতে চেয়েছিলাম এবং অবশেষে একটি স্ক্রিপ্ট কাজ করছে, আমি এটি আমার গিটহাবের উপরে রেখেছি ।

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


2

আপনার উদ্দেশ্য অনুসারে, আপনি এই স্ক্রিপ্টটি দরকারী হিসাবে পেতে পারেন: https://github.com/xyrix/gnome-terminal-profile-switcher

এটি এক প্রকার বানর প্যাচ করে এবং প্রতিটি টার্মিনালের জন্য একটি নতুন প্রোফাইল তৈরি করে, তারপরে আপনার বর্তমান টার্মিনালের জন্য প্রোফাইলের থিমটি স্যুইচ করার জন্য একটি প্রোগ্রাম উন্মোচনের জন্য কিছু পরিবেশের ভেরিয়েবল সেট করে।

আশা করি নিরাপদ_এসএস স্ক্রিপ্ট উদাহরণটি পরিষ্কার করে দেবে :-)। আমি এটি এখন এক বছর ধরে ব্যবহার করছি এবং এটি আমাকে কোম্পানির লাইভ ডাটাবেস destroy _ ^ না ধ্বংস করতে সহায়তা করেছে helped


2

আপনার প্রায়শ অ্যাক্সেস করা সার্ভারের একটি তালিকা যদি থাকে তবে আমি বিশ্বাস করি যে সহজ সমাধানটি হ'ল কেবলমাত্র বাক্সটির সেশনের জন্য কেবলমাত্র দ্বিতীয় উইন্ডোটি আহ্বান করা।

প্রথমে, আপনি প্রায়শই ব্যবহার করেন এমন প্রতিটি প্রত্যন্ত অবস্থানের জন্য পৃথক জিনোম-টার্মিনাল প্রোফাইল তৈরি করুন। তারপরে, প্রতিটি প্রোফাইলে, নির্দিষ্ট করে নিন যে টার্মিনালটি সেই বাক্সের জন্য একটি সরল শেলের পরিবর্তে এসএসএইচ লগইন কমান্ড কার্যকর করবে।

ssh alice@athena

পরিশেষে, একটি প্রোফাইল আইডি দেওয়া একটি নতুন দূরবর্তী উইন্ডো থেকে কিক করতে একটি শর্ট স্ক্রিপ্ট লিখুন।

#!/bin/bash
if [[ $# -ne 1 ]] ; then
  echo "Give me a server/profile name!"
  exit 1
fi
gnome-terminal --window-with-profile=$1
exit 0

এই কৌশলটি ব্যবহার করে আপনি প্রতিটি বাক্সের টার্মিনাল উইন্ডোটির চেহারা "অসীমভাবে" পরিবর্তন করতে পারেন এবং একটি একক "নিয়ন্ত্রণ" টার্মিনাল থেকে এগুলি সরিয়ে ফেলতে পারেন। উদাহরণস্বরূপ, আমরা যদি এই স্ক্রিপ্টটিকে "rlv" বলি, তবে আমরা কেবল প্রোফাইল নামের সাথে স্ক্রিপ্টটি চাওয়ার মাধ্যমে একটি দূরবর্তী উইন্ডোটিকে স্প্যান করতে পারি।

>> rlv athena

আপনি যদি কখনও হোস্টের নাম ফ্যাট-আঙুল করে থাকেন বা সেই হোস্টের জন্য কোনও প্রোফাইল সেট আপ করতে অবহেলা করেন তবে আপনি কেবল স্থানীয় বাক্সে অন্য একটি ডিফল্ট-প্রোফাইল উইন্ডো পাবেন get এটি এড়ানোর জন্য স্ক্রিপ্টের কোড দেওয়ার একটি উপায় রয়েছে, জিনোম-টার্মিনালের পরিবর্তে স্ক্রিপ্টটিতে লগইন করে putting

#!/bin/bash
if [[ $# -ne 1 ]] ; then
  echo "Give me a server/profile name!"
  exit 1
fi
gnome-terminal --window-with-profile=$1 -e "ssh $1"
exit 0

... তবে তারপরে আপনি সেই বাক্সটির জন্য আপনার লগইন ব্যবহারকারীর নাম নির্ধারণের নমনীয়তা হারাবেন। স্ক্রিপ্টের সেই অতিরিক্ত বৈশিষ্ট্যটি আমি পাঠকের কাছে অনুশীলন হিসাবে রেখেছি।


আমাকে এই ধারণাটি সরবরাহ করার জন্য ধন্যবাদ। :-) আমি যুক্ত করতে চাই যে আপনি সহজেই একটি .ডেস্কটপ ফাইল লিখতে পারেন যা আপনার প্রিয় অবস্থানগুলিকে একটি (ডাবল) ক্লিক করে খুলবে - সেভাবে ক্লিক করুন।
হিন্জ

1

আমি সবেমাত্র লক্ষ্য করেছি যে আমার মূল সমাধানটি ইতিমধ্যে প্রশ্নটিতে প্রত্যাখ্যাত হয়েছে। প্রোফাইল পরিবর্তন করার কোনও সহজ উপায় মনে না হলেও আপনি settermকমান্ড ব্যবহার করে পটভূমি / অগ্রভূমি রঙ পরিবর্তন করতে পারেন ।

তাই এটা setterm -term linux -background black -foreground green আপনাকে সবুজ পাঠ্যের সাথে কালো পটভূমি দেবে। কেবলমাত্র সমস্যাটি হ'ল এলএসের রঙিন আউটপুট রয়েছে, তাই আপনি রঙিন রঙ বন্ধ করতে চান। অন্যথায় এটি পূর্ববর্তী রঙের স্কিমে পুনরায় সেট হয়

আসল পোস্ট : চারপাশে একটি সাজানোর উপায় আছে। ম্যান জিনোম-টার্মিনাল থেকে:

--window-সঙ্গে-প্রোফাইল = PROFILENAME

             Open a new window containing a  tab  with  the
             given profile.  More than one of these options
             can be provided.

এখানে আমার মেশিন থেকে উদাহরণ। আমার তিনটি প্রোফাইল রয়েছে: বি অ্যান্ডজি (সবুজ রঙের কালো), ফর্মপ্রিন্টিং (কালো ফন্ট, সাদা পটভূমি) এবং ডিফল্ট। তাই আমি যা করি তা বর্তমান উইন্ডো প্রকারেরgnome-terminal --window-with-profile=ForPrinting । তারপরে আমি কমান্ড লাইন থেকে পুরানো উইন্ডোটি মেরে ফেলতে পারি বা এটি গ্রাফিকভাবে বন্ধ করতে পারি।

বি অ্যান্ডজি প্রোফাইল কাজ করে না। সম্ভবত কারণ & একটি বৈধ চরিত্র নয়, তাই প্রোফাইলের নামকরণ করার সময় এটি মনে রাখবেন।


0

খুব কুৎসিত সমাধানটি আমি ব্যবহার করে শেষ করেছি

unset x y
eval $(xwininfo -id $(xdotool getactivewindow) |
       sed -n -e 's/^ \+Absolute upper-left X: \+\([0-9]\+\).*/x=\1/p' \
              -e 's/^ \+Absolute upper-left Y: \+\([0-9]\+\).*/y=\1/p')
xdotool mousemove $(($x + 50)) $(($y + 50))
xdotool click 3; xdotool key --repeat 3 Up; xdotool key Right; xdotool key --delay 50 Down; xdotool key --delay 50 Return

(এটি দ্বিতীয় প্রোফাইল নির্বাচন করে, তবে আপনি দ্বিতীয় "কী ডাউন" কমান্ডটি পরিবর্তন করে এইচটিআইআর প্রোফাইল বলতে এটি পরিবর্তন করতে পারেন xdotool key --delay 50 --repeat 2 Down

এটি কি করছে:

  1. বর্তমান উইন্ডোর উপরের বাম স্থানাঙ্কগুলি সন্ধান করুন (যেমন, জিনোম টার্মিনাল ব্যবহৃত হচ্ছে)।
  2. মাউসটিকে সেই টার্মিনালের উপর দিয়ে যান
  3. দ্বিতীয় প্রোফাইলটি নির্বাচন করতে ডান ক্লিক করুন এবং প্রসঙ্গ মেনু নেভিগেট করুন।

আপনার এক্সডটুল ইনস্টল করা দরকার sudo apt install xdotool

অসাধারণ রকমের যে টার্মিনালটি নিজেই টার্মিনালের মাধ্যমে কনফিগারেশনের অনুমতি দেয় না!


0

এটি জিনোম-টার্মিনালটিতে দুর্দান্ত একটি "পরবর্তী প্রোফাইল" কমান্ড এবং শর্টকাট সরবরাহ করবে; দুর্ভাগ্যক্রমে, এটি না।

যাদের জন্য একটি কার্যসংক্রান্ত Alt+Tঅক্ষম (সম্পাদনা> পছন্দ> সক্ষম করুন স্মৃতিবর্ধনবিদ্যা - অবারিত) হল: F10 left left down rightএবং প্রোফাইল নির্বাচন করুন। সেকি।


এটির জন্য মেনু বারটি দৃশ্যমান হওয়া দরকার ing
গৌথির

0

এটি একটি পুরানো পোস্ট, তবে যখন আমি এই একই সমস্যাটি সমাধান করার জন্য অনুসন্ধান করতে থাকি তখন এটি সামনে আসতে থাকে, তাই আমি ভেবেছিলাম যে আমি আমার সমাধান পোস্ট করব।

এটিতে একটি ছোট অজগর স্ক্রিপ্ট জড়িত রয়েছে এবং টার্মিনালটি কেবল চালু করার পরিবর্তে স্ক্রিপ্টটি চালানোর জন্য CTRL + ALT + T বোতামটি পুনরায় তৈরি করা যায়।

একটি টেক্সট ফাইল তৈরি করুন, আমি আমার টার্মিনাল.পি নামকরণ করেছি এবং এটি নির্বাহযোগ্য কিনা তা নিশ্চিত করে। এটিতে নিম্নলিখিত কোডটি রাখুন। এটি তালিকায় প্রথম "ডিফল্ট" চিহ্নিত চিহ্নিত হয়েছে কিনা তা নিশ্চিত করে ক্রমানুসারে সমস্ত উপলব্ধ প্রোফাইল ব্যবহার করে টার্মিনাল উইন্ডোগুলি খুলবে।

#!/usr/bin/python
#
# Launch a gnome-terminal window trying to assign each new window 
# to a different profile.
# 
import json
import os
import commands

profiles=[]

try:
    profileList = commands.getoutput("gsettings get org.gnome.Terminal.ProfilesList list").replace("'",'"')
    profileDefault = commands.getoutput("gsettings get org.gnome.Terminal.ProfilesList default").replace("'",'"')

    profiles.append(json.loads(profileDefault))
    ls = json.loads(profileList)
    ls.remove(profiles[0])
    profiles+=ls

    # find the next available terminal number
    # when terminals are closed, gaps in the numbers can happen
    # terminals are numeric and the lowest slot is filled first
    terminals = commands.getoutput("ls /dev/pts/  | grep -E '^[0-9]+$'").split("\n")
    next = 0
    try:
        while terminals.index(str(next))>=0:
            next += 1
    except:
        pass

    # determine the profile to use
    prof = next % len(profiles)

    # launch the terminal with the specific profile
    cmd="gnome-terminal --window-with-profile='%s'" % (profiles[prof])
    os.system(cmd)
except:
    # if anything fails, launch a default terminal
    print("error")
    os.system("gnome-terminal")

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

আপনার টার্মিনালে বেশ কয়েকটি প্রোফাইল তৈরি করতে ভুলবেন না। এই স্ক্রিপ্টটি আপনার সমস্ত প্রোফাইল ব্যবহার করবে। সুতরাং আপনি যত বেশি তৈরি করবেন, উইন্ডোতে তত বেশি বৈচিত্র আপনি অ্যাক্সেসও পেতে পারেন। আমার বেশ কয়েকটি রয়েছে যা ব্যাকগ্রাউন্ডের রঙ বাদে সবগুলি অভিন্ন। এটি আমাকে তাদের মধ্য দিয়ে আল-ট্যাব হিসাবে সনাক্ত করতে সহায়তা করে।

টার্মিনাল উইন্ডো উদাহরণ

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