Abrir múltiples pestañas con gnome-terminal -- gnome-terminal camp askubuntu Relacionados El problema

Opening multiple tabs with gnome-terminal


16
vote

problema

Español

Estoy tratando de crear un comando que abrirá 3 servicios de la pila de rieles, las carriles S, Spork y Autotest. Puedo ejecutar estos comandos individualmente abriendo 3 terminales, vamos a la carpeta de la aplicación y ejecutándolos. Incluso puedo abrir 3 nuevas pestañas y ejecutar los comandos en cada uno.

El problema es que fallan cuando intento abrir las pestañas a través de Gnome-Terminal, así:

  ABCDEFGHIJKLMNABCDEFGHIJKLMN8   

Error (para Spork and Autotest):

  ABCDEFGHIJKLMNABCDEFGHIJKLMN9   

Sorprendentemente, funciona para 'Rails S' (la pestaña muestra el servidor en ejecución).

¿Alguna idea?

Original en ingles

I'm trying to create a command that will open 3 services from the Rails stack, rails s, spork, and autotest. I can run these commands individually by opening 3 terminals, going to the app folder and running them. I can even open 3 new tabs and run the commands on each.

The problem is that they fail when I try to open the tabs via gnome-terminal like so:

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

Error (for spork and autotest):

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

Surprisingly it does work for 'rails s' (the tab shows the server running).

Any ideas?

  

Lista de respuestas

9
 
vote
vote
La mejor respuesta
 

a continuación es una respuesta de stackoverflow.com

  1. Agregue un eval "$BASH_POST_RC" hasta el final de su .bashrc

  2. Configure la variable abcdefghijklmnBASH_POST_RC para cada pestaña en ese comando que desea ejecutar, por ejemplo, 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"'

 

Below is an answer from stackoverflow.com

  1. Add a eval "$BASH_POST_RC" to the end of your .bashrc

  2. Set the BASH_POST_RC environment variable for each tab to that command you like to execute, e.g.: 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"'

 
 
16
 
vote

Invocando ABCDEFGHIJKLMNABCDEFGHIJKLMN4 TRES veces Terminal, y de hecho tendrá que renunciar al primer terminal para que aparezca el siguiente.

La forma de asegurarse de que todas sus pestañas se abran en una instancia de gnome-terminal All mismo tiempo es usar el interruptor --tab-with-profile=PROFILENAME . En el comando a continuación, puede dejar el primer comando como gnome-terminal --tab como es que se genere la primera ventana; Ahora todo lo que necesita saber es qué perfil está utilizando y puede usar --tab-with-profile=YourProfile para invocar los otros comandos y todos aparecerán a la vez en el terminal original abierto.

Aquí está su comando modificado:

  eval "$BASH_POST_RC"0  

(para futuros lectores: sustituya los nombres de los programas dados después de para probar la línea de comandos aquí; Recuerde sus objetivos para eval "$BASH_POST_RC"2 se debe instalar y en ABCDEFGHIJKLMNABCDEFGHIJKLMN13 ; para las cosas que no se encuentran en eval "$BASH_POST_RC"4 Use una ruta absoluta, por ejemplo, eval "$BASH_POST_RC"5

Recuerde especificar el perfil real que está utilizando para los interruptores ABCDEFGHIJKLMNABCDEFGHIJKLMN16 . La primera invocación de eval "$BASH_POST_RC"7 debe usar eval "$BASH_POST_RC"8 y todo el resto eval "$BASH_POST_RC"9 . Con este método, debe ser posible abrir una gran cantidad de pestañas en la misma instancia de ABCDEFGHIJKLMNABCDEFGHIJKLMN20 .

Encuentre el perfil que está utilizando actualmente haciendo clic con el botón derecho en BASH_POST_RC1 y busque los perfiles y habrá un marcador en el que está utilizando actualmente:

ingrese la descripción de la imagen aquí

Ir a las preferencias de perfil para obtener más información y para verificar el nombre del perfil.

Para obtener más información, consulte ABCDEFGHIJKLMNABCDEFGHIJKLMN22 y el Ubuntu Hanpages Online .


nota :

Si tiene problemas para iniciar sus programas con BASH_POST_RC3 , agregue la ubicación a BASH_POST_RC4 , o haga un enlace simbalinal y colóquelo en un abcdefghijklmn25 Ubicación, o (¿qué fue muy útil aquí): cree un script simple de envoltura de bash y llame a esa en la línea de comandos BASH_POST_RC6FGHIJKLMN26 (Debe llamarlo con una ruta absoluta: I.E. ABCDEFGHIJKLMNABCDEFGHIJKLMN27 y no solo el nombre de él).

como ejemplo:

  ABCDEFGHIJKLMNABCDEFGHIJKLMN28  

Luego nombra el script, hágalo ejecutable y llámelo en la línea de comandos abcdefghijklmnAbcDefghhijklmn29 arriba. Haga esto para todos los programas de no repo que son problemáticos.

 

Invoking gnome-terminal three times and stringing the commands together with && won't work, and the tabs won't appear in the same terminal, and indeed you will have to quit the first terminal for the next to appear.

The way to make sure all your tabs open in one instance of gnome-terminal all at the same time is to use the --tab-with-profile=PROFILENAME switch. In the command below you can leave the first command as gnome-terminal --tab as that it is the first window to be generated; now all you need to know is which profile you are using and you can use --tab-with-profile=YourProfile to invoke the other commands and they will all appear at once in the original terminal opened.

Here is your command modified:

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" 

(For future readers: substitute the program names given after -e to test out the command line given here; remember your targets for -e must be installed and in $PATH; for things not in $PATH use an absolute path such as, for example, /opt/mike/program)

Remember to specify the actual profile you are using for the --tab-with-profile switches. The first invocation of gnome-terminal must use --tab and all the rest --tab-with-profile. With this method it should be possible to open a large number of tabs all in the same instance of gnome-terminal.

Find the profile you are currently using by right clicking in gnome-terminal and look at profiles and there will be a marker on the one you are currently using:

enter image description here

Go to Profile preferences for more information and to check the name of the profile.

For more information, see man gnome-terminal and the Ubuntu manpages online.


Note:

If you have trouble launching your programs with gnome-terminal, either add the location to $PATH, or make a symlink and place it in a $PATH location, or (what was very useful here): create a simple bash wrapper script and call that in the gnome-terminal command line above. (You must call it with an absolute path: i.e. /location/of/script and not just the name of it.)

As an example:

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

Then name the script, make it executable and call it in the gnome-terminal command line above. Do this for all the non repo programs that are problematic.

 
 
         
         
0
 
vote

ABCDEFGHIJKLMNABCDEFGHIJKLMN30

Este código abierto Nueva pestaña en el terminal que ejecuta un script de Python y cuando termine, esta nueva pestaña no se cerrará, porque agregué 'bash' al final de este código ...

Si lo desea varias veces, colóquelo en un bucle de tiempo en su script de bash

 

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

this code open new tab in terminal running a python script and when its over, this new tab will not close, because i added 'bash' in the end of this code...

if you want it multiple times, put it into a while loop in your bash script

 
 

Relacionados problema

63  Cambiar el ancho predeterminado de Gnome-Terminal y Terminator Windows  ( Change default width of gnome terminal and terminator windows ) 
Solo una pregunta corta, pero es posible establecer el ancho predeterminado (y la altura) de las sesiones terminales en gnome-terminal y terminator ? Enc...

2  Instalación de Python3.6 (y purgando unos 3.5 paquetes) desordenado con mi terminal  ( Installing python3 6 and purging some 3 5 packages messed up with my terminal ) 
Estuve siguiendo las instrucciones para instalar Python3.6 en mi máquina Ubuntu 16.04 de aquí y en el proceso también hice un sudo apt-get purge en alguno...

2  Asignar Geany o GEDIT resaltado al texto  ( Assign geany or gedit highlight to text ) 
¿Hay alguna forma de asignar el punto culminante de Geany al texto? Por ejemplo, cuando paso un código de programación a Geany. Funciones El color es rojo. Lo...

0  Unity Dash, así como el terminal no viene  ( Unity dash as well as terminal is not coming ) 
Estaba navegando a través de ls: cannot access 'resolv.conf.d': Stale file handle ls: cannot access 'update-libc.d': Stale file handle ls: cannot access 'upd...

18  ¿Qué hace el '|' (barra vertical) Carácter significa en un comando terminal? [duplicar]  ( What does the vertical bar character mean in a terminal command ) 
Esta pregunta ya tiene respuestas aquí : ¿Cuál es la diferencia entre "Redirección" y "tubería"? ...

0  Ubuntu 12.04 Desktop sin iniciador y sin tibias que trabajan [duplicar]  ( Ubuntu 12 04 desktop with no launcher and no shortkeys working ) 
Esta pregunta ya tiene respuestas aquí : ¿Por qué no puedo registrar ¿Después de una persona que no ...

1  Programa que no se ejecuta correctamente cuando se ejecuta en el terminal  ( Program not running properly when run in terminal ) 
Estoy ejecutando programas C ++ usando el emulador de terminal de GNOME en Ubuntu 10.04. El programa tiene una serie de pasos y obtengo el programa para impri...

2  GNOME-Terminal "No se puede abrir ubicación" error [cerrado]  ( Gnome terminal cannot open location error ) 
Es poco probable que esta pregunta ayude a cualquier visitante futuro; Solo es relevante para un pequeño área geográfica, u...

4  Alt-Key dejó de funcionar en Gnome-Terminal después de la actualización a Ubuntu 19.04  ( Alt key stopped working in gnome terminal after upgrade to ubuntu 19 04 ) 
Por ejemplo, no puedo cambiar entre las pestañas en el terminal GNOME con ALT + 1, ALT + 2. Los accesos directos en general y los accesos directos del menú es...

0  La propiedad "use el tamaño de terminal predeterminado de uso personalizado" de la terminal no funciona  ( Terminals use custom default terminal size property does not work ) 
Estoy tratando de hacer una propiedad personalizada para el tamaño del terminal. Mis cambios no tienen efecto y el terminal todavía comienza en modo de pantal...




© 2022 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos