স্ক্রিপ্টের মধ্যে টিএমউক্স বা জিনোম-টার্মিনালের ভিতরে কীভাবে প্রোগ্রামের সেট চালু করবেন?


32

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

অন্য যে কোনও সফ্টওয়্যারও স্বাগত জানায়

আমি কাজটি করার জন্য একটি একক স্ক্রিপ্ট ইস্যু করতে চেয়েছিলাম, যেমন XX "cmd1" "cmd2" "cmd3"

উত্তর:


27
tmux new -d -s my-session 'echo window-1 pane-1; sleep 8' \; \
          split-window -d 'echo window-1 pane-2; sleep 6' \; down-pane \; \
            new-window -d 'echo window-2;        sleep 4' \; next-window \; \
                attach \;

উপরেরটি সাধারণ ধারণার একটি চলমান উদাহরণ ... আরও এখানে: একটি একক স্ক্রিপ্টের মাধ্যমে একটি স্প্লিট-স্ক্রিন এক্স টার্মিনালে স্ট্রিমিপার এবং এমপ্লেয়ার কীভাবে চালাবেন?


27

একটি tmux সেশন খুলুন এবং প্রথম কমান্ড শুরু করুন। তারপরে নতুন উইন্ডোতে আরও কমান্ড প্রবর্তন করুন এবং সমানভাবে উইন্ডো আকারগুলি বিতরণ করুন।

tmux \
  new-session  "command1 ; read" \; \
  split-window "command2 ; read" \; \
  split-window "command3 ; read" \; \
  split-window "command4 ; read" \; \
  select-layout even-vertical

readপ্রতিটি কমান্ড পর পর কমান্ড তাই সমাপ্ত হয়েছে যে আপনার আউটপুট পড়তে পারেন উইন্ডোটি খোলা থাকার কারণ।


2
এই উত্তরটি আরও ভোটের দাবিদার। ধন্যবাদ মানুষ.
লেস্টার চেউং

7

যদি এটি সর্বদা প্রোগ্রামগুলির একই কনফিগারেশন হয় তবে আপনি টিমোকিলের মতো একটি সরঞ্জাম ব্যবহার করতে পারেন ।

আপনাকে একটি কনফিগারেশন (উদাহরণস্বরূপ ~/.teamocil/sample) তৈরি করতে হবে , যার মধ্যে এমন কিছু রয়েছে:

windows:
  - name: my-first-window
    root: ~/Projects/foo-www
    filters:
      before: "rvm use 1.9.2"
      after: "echo 'I am done initializing this split.'"
    splits:
      - cmd: "git status"
      - cmd: "bundle exec rails server --port 4000"
        width: 50
      - cmd:
          - sudo service memcached start
          - sudo service mongodb start
        height: 50

এবং তারপরে আপনি চালাতে পারবেন: tmux new-session -d "teamocil sample" \; attach


6

gnome-terminalএটি সঙ্গে হবে:

gnome-terminal --window -e 'cmd1' --tab -e 'cmd2' --tab -e 'cmd3'

প্রতিটি ট্যাব এর আদেশ শেষ হওয়ার পরে বন্ধ হয়ে যাবে।


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