জিনোম-টার্মিনাল সহ একাধিক ট্যাব খোলা হচ্ছে


16

আমি একটি কমান্ড তৈরি করার চেষ্টা করছি যা রেল স্ট্যাক, রেলস, স্পার্ক এবং অটোস্টেস্ট থেকে 3 টি পরিষেবা খুলবে। 3 টি টার্মিনাল খোলার মাধ্যমে, অ্যাপ ফোল্ডারে গিয়ে এবং এগুলি চালিয়ে আমি স্বতন্ত্রভাবে এই কমান্ডগুলি চালাতে পারি। আমি এমনকি 3 টি নতুন ট্যাব খুলতে এবং প্রতিটিতে কমান্ড চালাতে পারি।

সমস্যাটি হ'ল যখন আমি জিনোম-টার্মিনালের মাধ্যমে ট্যাবগুলি খোলার চেষ্টা করি তখন তারা ব্যর্থ হয়:

gnome-terminal --tab --title="rails s" -e "rails s" --tab --title="spork" -e "spork" --tab --title="autotest" -e "autotest"

ত্রুটি (স্পার্ক এবং অটোস্টেটের জন্য):

There was an error creating the child process for this terminal
Failed to execute child process "spork" (No such file or directory)

আশ্চর্যজনকভাবে এটি 'রেল গুলি' এর জন্য কাজ করে (ট্যাবটি সার্ভারটি চলমান দেখায়)।

কোন ধারনা?

উত্তর:


9

নীচে stackoverflow.com থেকে একটি উত্তর দেওয়া হয়েছে

  1. eval "$BASH_POST_RC"আপনার .bashrc এর শেষে একটি যুক্ত করুন

  2. BASH_POST_RCআপনি যে কমান্ডটি চালাতে চান তার প্রতিটি ট্যাবটির জন্য পরিবেশ পরিবর্তনশীল সেট করুন , যেমন: gnome-terminal --working-directory="/home/zardoz/projects/my_rails_app" --tab -e 'bash -c "export BASH_POST_RC=\"rails server\"; exec bash"' --tab -e 'bash -c "export BASH_POST_RC=\"autotest\"; exec bash"'


15

gnome-terminalতিনবার আহ্বান করা এবং কমান্ডগুলি একসাথে স্ট্রিংয়ের সাথে কাজ && করবে না এবং ট্যাবগুলি একই টার্মিনালে উপস্থিত হবে না এবং পরবর্তী উপস্থিতির জন্য আপনাকে প্রথম টার্মিনালটি প্রস্থান করতে হবে quit

একই সাথে আপনার সমস্ত ট্যাব সকলের এক gnome-terminalমুহুর্তে খোলা আছে তা নিশ্চিত করার উপায়টি হল --tab-with-profile=PROFILENAMEস্যুইচটি ব্যবহার করা । নীচের কমান্ডটিতে আপনি প্রথম কমান্ডটি gnome-terminal --tabএমনভাবে ছেড়ে যেতে পারেন যেমন এটি তৈরি করা প্রথম উইন্ডো; এখন আপনাকে যা জানা দরকার তা হল আপনি কোন প্রোফাইলটি ব্যবহার করছেন এবং আপনি --tab-with-profile=YourProfileঅন্যান্য কমান্ডগুলি আহ্বান করতে ব্যবহার করতে পারেন এবং সেগুলি একবারে মূল টার্মিনালটি খোলায় উপস্থিত হবে।

আপনার আদেশটি এখানে পরিবর্তন করা হয়েছে:

gnome-terminal --tab --title="rails s" -e "rails s" --tab-with-profile=Default --title="spork" -e "spork" --tab-with-profile=Default --title="autotest" -e "autotest"

(ভবিষ্যতের পাঠকদের জন্য: -eএখানে প্রদত্ত কমান্ড লাইনটি পরীক্ষা করার পরে প্রদত্ত প্রোগ্রামের নামগুলি প্রতিস্থাপন করুন; আপনার টার্গেটগুলি -eঅবশ্যই ইনস্টলড এবং ইন থাকা উচিত মনে রাখবেন $PATH; জিনিসগুলির $PATHজন্য যেমন নিরঙ্কুশ পথ ব্যবহার করা হয় না যেমন, উদাহরণস্বরূপ /opt/mike/program)

আপনি --tab-with-profileস্যুইচগুলির জন্য যে প্রকৃত প্রোফাইলটি ব্যবহার করছেন তা নির্দিষ্ট করে দিতে ভুলবেন না । প্রথম অনুরোধটি gnome-terminalঅবশ্যই ব্যবহার করা উচিত --tabএবং বাকি সমস্ত --tab-with-profile। এই পদ্ধতির সাহায্যে সমস্ত ক্ষেত্রে একই সংখ্যায় বৃহত সংখ্যক ট্যাব খোলা সম্ভব উচিত gnome-terminal

ডান ক্লিক করে আপনি বর্তমানে যে প্রোফাইলটি ব্যবহার করছেন সেটি gnome-terminalসন্ধান করুন এবং প্রোফাইলগুলি দেখুন এবং আপনি বর্তমানে যেটি ব্যবহার করছেন তার একটি চিহ্নিতকারী উপস্থিত থাকবে:

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

আরও তথ্যের জন্য এবং প্রোফাইলটির নাম চেক করতে প্রোফাইল পছন্দগুলিতে যান।

আরও তথ্যের জন্য, দেখুন man gnome-terminalএবং উবুন্টু অনলাইনে ম্যানেজ করুন


দ্রষ্টব্য :

আপনার প্রোগ্রামগুলি চালু করতে যদি সমস্যা gnome-terminalহয়, হয় হয় অবস্থানটি যুক্ত করুন $PATH, বা একটি সিমিলিংক তৈরি করুন এবং এটি একটি $PATHঅবস্থানে স্থাপন করুন, বা (যা এখানে খুব দরকারী ছিল): একটি সরল বাশ মোড়ক স্ক্রিপ্ট তৈরি করুন এবং gnome-terminalউপরের কমান্ড লাইনে কল করুন । (আপনাকে অবশ্যই এটি একটি পরম পথ দিয়ে ডাকতে হবে: যেমন /location/of/scriptএবং কেবল এটির নাম নয়))

উদাহরণ হিসাবে:

#!/bin/bash
cd $HOME/.rvm/gems/ruby-2.0.0-p0/bin 
spork
exit 0

তারপরে স্ক্রিপ্টটির নাম দিন, এটি সম্পাদনযোগ্য করে তুলুন এবং gnome-terminalউপরের কমান্ড লাইনে কল করুন it সমস্যাযুক্ত যে সমস্ত নন রেপো প্রোগ্রামগুলির জন্য এটি করুন।


আমি কিভাবে প্রোফাইল জানি? (আমি ডিফল্ট, আমার ব্যবহারকারীর নাম এবং ~ /। প্রোফাইলে চেষ্টা করেছি)
ম্যানুয়েল

এটি ডিফল্ট বলেছে তবে --tab-with-प्रोफाइल = ডিফল্ট ব্যবহার করে আমি একই ত্রুটি পেয়েছি
ম্যানুয়েল

@ ম্যানুয়েল অন্যান্য সম্ভাবনা হ'ল টার্গেট কমান্ডগুলি আপনার মধ্যে নেই $PATH; এর অবস্থান sporkএবং অন্যান্যকে একটি নিখুঁত পথ দিয়ে নির্দিষ্ট করুন ।

আমি যে কমান্ডটি ব্যবহার করছি তা হ'ল জিনোম-টার্মিনাল --tab --title = "Rails s" -e "Rails s" --tab-with-profile = Default --title = "spark" -e "spark" - ট্যাব-সহ-প্রোফাইল = ডিফল্ট - শিরোনাম = "স্বতঃপরিচয়" -আর "স্বতন্ত্র" (আপনার উত্তর থেকে অনুলিপি / পেস্ট করুন)। $ পাঠ সম্পর্কে, যদি এটি সমস্যা হয় তবে এটি মেনু দিয়ে খোলা ট্যাবটিতে কেন কাজ করে?
ম্যানুয়েল

@ ম্যানুয়েল যেমন আপনি আপনার প্রশ্নে বলেছেন, আপনাকে "অ্যাপ ফোল্ডারে" যেতে হবে এবং সেখান থেকে চালাতে হবে, যার অর্থ তারা এতে নেই $PATH। উত্তরের পদ্ধতিটি হ'ল আমি একই gnome-terminalউইন্ডোর বিভিন্ন ট্যাবগুলিতে সমস্ত সংগ্রহস্থল ইনস্টল করা কমান্ড-লাইন প্রোগ্রাম চালু করতে ব্যবহার করি এবং অন্যান্য প্রোগ্রামগুলি $ PATH এ থাকায় এটি সর্বদা কার্যকর হয়।

0

gnome-terminal --tab -- sh -c "python3 'test.py' ; bash"

এই কোডটি অজগর স্ক্রিপ্টটি চলমান টার্মিনালে নতুন ট্যাব খুলবে এবং এটি শেষ হয়ে গেলে এই নতুন ট্যাবটি বন্ধ হবে না, কারণ আমি এই কোডের শেষে 'বাশ' যুক্ত করেছি ...

আপনি যদি এটি একাধিকবার চান তবে এটি আপনার ব্যাশ স্ক্রিপ্টে কিছুক্ষণ লুপের মধ্যে রাখুন

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