Saya menggunakan Ubuntu 9.04 x64 dan ketika saya menulis:
gnome-terminal --tab
Di terminal, saya mengharapkannya untuk membuka tab baru di jendela terminal yang sama. Tetapi itu membuka jendela baru sebagai gantinya.
Saya menemukan bahwa tujuannya adalah untuk membuka tab baru di jendela baru, yaitu, jika saya menulis:
gnome-terminal --tab --tab
Ini akan membuka jendela baru dengan dua tab.
Jadi, pertanyaannya adalah, bagaimana saya bisa membuka tab baru di jendela saat ini menggunakan perintah di gnome-terminal
?
Ctrl+Shift+T
saat perintah dijalankan dari file skrip? (Mendengar sesuatu yang disebut D-Bus bisa melakukan itu)!Jawaban:
Ini akan otomatis menentukan terminal terkait dan membuka tab yang sesuai.
sumber
WID= xprop -root | grep "_NET_ACTIVE_WINDOW(WINDOW)"| awk '{print $5}'; xdotool windowfocus $WID; xdotool key ctrl+shift+t $WID
sleep 1; xdotool type --delay 1 --clearmodifiers "your Command"; xdotool key Return;
untuk menjalankan perintah.Anda juga dapat meminta setiap tab menjalankan perintah set.
sumber
gnome-terminal --tab -e "cd /tmp"
gnome-terminal --tab --working-directory="/home/user/X/Y/"
. Saya tidak mengapa, tetapi"~/X/Y/"
tidak berhasil.gnome-terminal --tab -e "tail -f file_a" --tab -e "tail -f file_b"
, terminal gnome akan terbuka dengan dua tab di mana setiap tab akan memiliki konten file masing-masing, tetapi akan menutup saat Anda mengirim ^ C. Ini menunjukkan kepada Anda mengapa ini tidak berhasil, tetapi saya tidak tahu bagaimana memperbaikinya.Saya menemukan cara paling sederhana:
Saya menggunakan
tmux
daripada menggunakan terminal secara langsung. Jadi yang saya inginkan sebenarnya adalah satu file perintah / shell sederhana untuk membangun pengembanganenv
dengan beberapatmux
jendela. Kode shell adalah seperti di bawah ini:sumber
'command 1'
bekerja lebih baik daripada tanda kutip ganda yang hanya bekerja untuk saya ketika saya juga menentukan--working-directory="/some/path/"
Versi yang lebih rumit (untuk digunakan dari jendela lain):
sumber
Untuk berjaga-jaga, Anda ingin membukanya
ini dia:
(sama untuk
mate-terminal
btw.)sumber
xfce4-terminal
btw. Manakah dari perintah berikut yang sebenarnya bertanggung jawab atas maksud tersebutand having them stay open...
? Saya bertanya karena ini tidak disebutkan di halaman manual setidaknya untukxfce4-terminal
Untuk menyatukan sejumlah poin berbeda di atas, berikut ini skrip yang akan menjalankan argumen apa pun yang diteruskan ke skrip
vim new_tab.sh
:Selanjutnya buat itu bisa dieksekusi:
chmod +x new_tab.sh
Sekarang Anda dapat menggunakannya untuk menjalankan apa pun yang Anda inginkan di tab baru:
./new_tab.sh "watch ls -l"
sumber
Saya tidak menginstal gnome-terminal tetapi Anda harus dapat melakukan ini dengan menggunakan panggilan DBUS pada baris perintah menggunakan dbus-send .
sumber
Pertimbangkan untuk menggunakan Roxterm sebagai gantinya.
membuka tab di jendela saat ini.
sumber
Bagi siapa pun yang mencari solusi yang tidak menggunakan baris perintah: ctrl + shift + t
sumber
Untuk membuka banyak tab di jendela terminal yang sama, Anda dapat menggunakan solusi berikut.
Contoh skrip:
sumber
osascript
adalah OSX (Apple)$HOME
variabel lingkungan, atau setara OSX jika berbeda.