GNU/Linux >> Linux Esercitazione >  >> Linux

Come posso salvare la mia sessione con più schede in un terminale xfce4?

Puoi creare una scorciatoia con schede predefinite come questa:

Terminal --geometry=100x40 --hide-menubar --hide-toolbars -T "Host1" -e "ssh -t [email protected]" --tab -T "Host2" -e "ssh -t [email protected]"

Ma qualcosa del genere nella riga di comando della finestra di dialogo dell'editor di scorciatoie.

Per fare in modo che ogni scheda abbia una directory di lavoro diversa puoi farlo in questo modo:

Terminal --working-directory=$HOME/tmp --tab --working-directory=$HOME/src --tab --working-directory=$HOME/opt

Non che il primo non abbia un --tab prima di esso, facendolo associare alla nuova finestra di primo livello. Quindi due schede aggiuntive con diverse directory di lavoro.

Cerca di evitare di usare ~ espansione, poiché si tratta di una funzionalità della shell che potrebbe non funzionare in altri contesti (come i lanciatori personalizzati).


Questa soluzione distribuisce una finestra con più schede e processi.

Ho creato uno script di avvio (xfce4-terminal-startup.sh ),

#!/bin/bash
xfce4-terminal --maximize --title='Neovim' -x bash -c "nvr -s; exec bash"
xfce4-terminal --tab --title='psql' -x bash -c "psql -d zzz; exec bash"
xfce4-terminal --tab --title='Cypher-shell' -x bash -c "cd /mnt/Vancouver/Programming/data/hmdb; exec bash"
xfce4-terminal --tab --title='Cycli' -x bash -c "source activate py35 && cycli -P *** -u *** -p ***; exec bash"
xfce4-terminal --tab --title='Py3' -x bash -c "source activate py35 && python; exec bash"
xfce4-terminal --tab --title='bc' -x bash -c "bc; exec bash"
xfce4-terminal --tab --title='ud' -x bash -c "pacaur -Syu; exec bash"

che quando eseguito avvia xfce4-terminal, lo massimizza e lancia i vari programmi come indicato.

Per quanto riguarda "exec bash", sopra vedi:

  • https://unix.stackexchange.com/questions/47271/prevent-gnu-screen-from-terminating-session-once-executed-script-ends*https://unix.stackexchange.com/questions/75902 /come-eseguire-xfce-terminal-con-diversi-comandi-per-scheda-e-continuare-a-usare-le-schede

Ad esempio:se avvii una finestra sullo schermo che esegue un comando, tieni quella finestra aperta ...

Ecco una GIF animata, che mostra quelle schede in azione!

[link all'immagine ingrandita]

  • Riferimento: https://askubuntu.com/questions/421421/how-can-i-make-a-terminal-with-3-tabs-appear-after-startup/422121#422121

Aggiorna

Questo è il mio attuale xfce4-terminal-startup.sh script (puoi scaricarlo qui:https://persagen.com/files/misc/xfce4-terminal-startup.sh):

#!/bin/bash
# vim: set filetype=sh :
# vim: syntax=sh

# /mnt/Vancouver/programming/scripts/xfce4-terminal-startup.sh

# https://web.archive.org/web/20110314180918/http://www.davidpashley.com/articles/writing-robust-shell-scripts.html
# https://stackoverflow.com/questions/2870992/automatic-exit-from-bash-shell-script-on-error/2871034#2871034
set -e

# ----------------------------------------------------------------------------
# This one first:

# Python as basic calculator: 1/3; import math; 2*math.pi; ...
xfce4-terminal --maximize --title='calculations' -x bash -c "python; exec bash"

# ... then (these will open as child tabs in the parent terminal window, above):

# Open my (current) project directory:
xfce4-terminal --tab --title='bash'  -x bash -c "cd /mnt/Vancouver/projects/ie/claws/; pwd; ls -l; echo ''; exec bash"

# Start Neovim:
xfce4-terminal --tab --title='neovim' -x bash -c "nvr -s; exec bash"

# Open ripgrep tab (echo sample command), for fast searches in that director:
xfce4-terminal --tab --title='ripgrep' -x bash -c "cd /mnt/Vancouver/domains/PERSAGEN.com/2.0/; echo rg . -i -e \'1903.03243\'; exec bash"

# Open an Arch Linux update tab:
xfce4-terminal --tab --title='ud' -x bash -c "yay -Syu; exec bash"

Linux
  1. Vim:come aprire più file in schede diverse?

  2. Come posso usare i comandi con alias con xargs?

  3. Come posso richiamare l'argomento del precedente comando bash?

  4. Come posso eliminare la porta TCP 16969 in Bash?

  5. Come eliminare più file contemporaneamente in Bash su Linux?

Come scrivere più stringhe di righe usando Bash con variabili?

Come posso convertire gli spazi in schede in Vim o Linux?

Come posso testare il mio script Bash su versioni precedenti di Bash?

Come posso avviare automaticamente più sessioni su schermo?

Come posso modificare le righe precedenti in un comando a più righe in Bash?

Come posso modificare più file in VIM?