È possibile aprire una finestra di terminale con 3 schede. Ogni scheda dovrebbe avere un percorso diverso.Mac OS X/Terminale aperto con finestre specificate
Esempio:
Tab1: /etc
Tab2: /bin
Tab3: /www/ tail -f file.txt
È possibile aprire una finestra di terminale con 3 schede. Ogni scheda dovrebbe avere un percorso diverso.Mac OS X/Terminale aperto con finestre specificate
Esempio:
Tab1: /etc
Tab2: /bin
Tab3: /www/ tail -f file.txt
Questo è assolutamente possibile, ma ci vorrà del lavoro da parte vostra. La prima cosa che serve è impostare ogni finestra/scheda desiderata in Impostazioni:
Ho 4 schede che apro automagically ogni volta che apro Terminal. DB Shell
, Editor
, Server
e Shell
. Questi sono tutti all'interno del progetto Sasquatch
(non chiedere), quindi la denominazione. Ognuno di questi dovrebbe poi avere un comando unico ad essi associati:
In questo caso, sto eseguendo vim
. Se ti capita di avere una directory specifica in cui vorresti iniziare, puoi utilizzare qualcosa come vim ~/projects/main/
. In realtà qualunque cosa tu voglia andare lì è il comando che la shell eseguirà quando si apre.Ora è necessario aprire tutte le finestre/schede:
Shell
menù =>New Tab
/New Window
=> Selezionare il profilo creato in precedenza.Window
=>Save Window As Group...
.Window
=>Open Window Group
=> Seleziona il gruppo che hai appena creato.Questo dovrebbe pop-up tutte le finestre che ha appena avuto, nella stessa posizione. Ognuno dei comandi impostati in Settings
deve essere avviato nelle rispettive schede.
aprire le schede che si desidera impostare e ciascuno come si desidera, vale a dire nella scheda 1, cd /etc
, tab 2 cd /bin
e così via. Ora vai su Finestra> Salva Windows come gruppo. Fai clic sulla casella di controllo "Usa gruppo finestra all'avvio del terminale" e presto!
Sospetto che sia possibile controllare i comandi da eseguire anche. Uno dei programmi che utilizzo crea una finestra di terminale a scheda singola e dispone per eseguire uno script di impostazione profilo prima di continuare con il prompt dei comandi - lo stesso dovrebbe essere fattibile per un terminale multi-tab. Il file è un file XML di proprietà MacOS X.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CommandString</key>
<string>. /Applications/IBM/informix/demo/server/profile_settings</string>
<key>FontAntialias</key>
<false/>
<key>RunCommandAsShell</key>
<false/>
<key>ShowShellCommandInTitle</key>
<true/>
<key>TerminalType</key>
<string>xterm</string>
<key>WindowTitle</key>
<string>IDS Command Window</string>
<key>name</key>
<string>IDS Command Window</string>
<key>type</key>
<string>Window Settings</string>
</dict>
</plist>
È possibile fare clic su di esso e viene lanciato la finestra del terminale, le impostazioni del profilo sono impostati, e poi ci sono un prompt dei comandi di digitare. Presumibilmente, il comando "punto" nel comando "tail
" della domanda funzionerebbe; potrebbe essere che la chiave 'RunCommandAsShell
' impostata su '<true\>
' sostituisca la shell normale con il comando - che è forse più appropriata per la domanda.
Suggerisco l'uso se iTerm anziché Terminale. Se solo perché è più configurabile. Puoi scriverlo, ma per te è più importante creare una cartella di segnalibri (una per ogni scheda) e poi "aprire in schede" che ti darà il comportamento che cerchi.
Grazie amico! Questo è! – xpepermint
+1. Sembra che questo sia stato sostituito da iTerm2, un progetto separato. Darò questo via! – halfer
È possibile eseguire ciò che si desidera dal terminale.
Se in Preferenze terminale (scheda Impostazioni) si crea un nuovo profilo (o ne si copia uno con Impostazioni duplicate), è possibile impostare ciascun profilo per eseguire un comando all'avvio (il sottogruppo "Shell" all'interno del profilo).
Quindi configurare le schede utilizzando il menu Shell> Nuova scheda per creare le nuove schede da ciascuno dei profili specifici creati per i tre diversi eseguibili.
Quindi, fare clic su Salva gruppo di finestre per salvare il gruppo di schede (e salverà anche i relativi profili).
A partire da Mac OS X Lion 10.7, Terminal semplifica notevolmente l'operazione, senza creare nuovi profili per ciascun comando.
Per impostazione predefinita, Terminal ricorderà e ripristinare la directory di lavoro corrente per ogni terminale in un gruppo di finestre. (Se la directory di lavoro è stata comunicata al Terminale utilizzando una sequenza di escape, la shell predefinita, bash, lo farà ad ogni prompt dei comandi.Per altre shell, sarà necessario adattare il codice in/etc/bashrc.)
Se si crea un terminale con Shell> Nuovo comando, Terminal eseguirà automaticamente tale comando quando viene aperto un gruppo di finestre. Terminal eseguirà automaticamente un numero limitato di comandi "sicuri" † e, quando si salva un gruppo di finestre, è possibile eseguire tutti i comandi nel gruppo.
Il terminale inoltre esegue automaticamente queste operazioni per tutte le finestre al riavvio del Terminale con Ripristino abilitato. Quindi, potrebbe non essere nemmeno necessario creare un gruppo finestre, a seconda delle circostanze.
Per esempio, caso:
Ogni volta che si apre quel Gruppo finestre, queste finestre vengono ricreate ed eseguite i comandi. Se è necessario eseguire un comando e specificare la directory iniziale, nella finestra di dialogo Nuovo comando selezionare la casella di controllo "Esegui comando in una shell" ed eseguire il comando "cd;".
Inoltre, è possibile impostare Terminal in modo che apra il proprio gruppo di finestre all'avvio con Terminale> Preferenze> Avvio> All'avvio, aprire> Gruppo finestre. C'è anche una casella di controllo per impostare questo quando si salva un nuovo gruppo di finestre.
† I comandi "sicuri" includono qualsiasi cosa elencata in/etc/shells, oltre a: screen, tmux, emacs, vi/vim, nano, pico e top. È possibile personalizzare l'elenco con "default scrive com.apple.Terminal RestorableCommands". Impostalo su una serie di stringhe contenenti nomi di comandi o percorsi completi. Alcuni comandi hanno parametri che sono "non sicuri" per l'esecuzione automatica senza l'intervento dell'utente, quindi per impostazione predefinita questi comandi sono considerati "sicuri" solo se non hanno argomenti. Per rendere sicuro un comando da eseguire con argomenti, aggiungi un asterisco, ad es. "Top *" è nel valore predefinito per questa preferenza.
Io uso zsh. Come posso ottenere che Terminal memorizzi e ripristini la directory di lavoro corrente per ogni scheda in un gruppo di finestre? – ma11hew28
@mattdipasquale: prova a cercare la tua domanda su StackOverflow e, se non trovi una risposta alla tua domanda, posta una domanda. Ad esempio, se cerco "Terminal restore working directory zsh", trovo http://stackoverflow.com/a/7544224/754997 (la mia risposta) in cui mi collego ad un'altra domanda e risposta in cui fornisco il codice per zsh http: // superuser.com/a/328148/81175 che menziona anche che questo codice fa ora parte del pacchetto Oh My Zsh. Quindi se stai usando OMZ lo otterrai automaticamente. –
Un altro modo per farlo è utilizzare la gemma Elscripto ruby: https://github.com/Achillefs/elscripto. Permette yuo specificare facilmente le schede del terminale utilizzando un file YAML
http://www.iterm2.com/#/section/features/split_panes
"Dividi una linguetta in su in più riquadri, ognuno dei quali mostra una sessione diversa. È possibile tagliare in senso verticale e orizzontale e creare un numero qualsiasi di riquadri in qualsiasi disposizione immaginabile. "
Come creare finestre iTerm2 personalizzato Accordi
Creare una scorciatoia da tastiera personalizzata per generare automaticamente una serie di finestre e si divide con i processi in esecuzione.
con una scorciatoia cmd + shift + w trasformare la scissione tua disposizione delle finestre in 3 pannelli
Fantastico. L'unica cosa che aggiungerei è una scorciatoia da tastiera per il gruppo di finestre. http://i.stack.imgur.com/mPVDN.png Preferenze di sistema> Tastiera> Collegamenti> Scorciatoie per le app. Fare clic su + per aggiungere collegamento. Inserisci il nome del gruppo di finestre in MenuTitle, quindi inserisci il collegamento nella casella successiva. – mrgnw
Anche il gruppo Windows funziona con l'automatore! 10 secondi salvati :) – haudoing
Io uso zsh e ho provato questa risposta per creare un gruppo di finestre con quattro schede ognuna con un diverso pwd. Quindi, i miei comandi di avvio erano tutti comandi 'cd'. Tuttavia, quei comandi di avvio sovrascrivono l'impostazione [apre una nuova scheda nella stessa directory] (http://superuser.com/a/313172/59284) e fa sì che Command-T esegua nuovamente il comando di avvio per la nuova scheda. – ma11hew28