
Ich möchte eine Variable mit dem Terminalnamen festlegen und diese Variable verwenden, um das Terminal im Vollbildmodus zu öffnen. Das würde etwa so aussehen:
if [ "$DESKTOP" = "gnome" ]; then
if command_exists gnome-terminal; then
terminal=$(gnome-terminal)
fi
elif [ "$DESKTOP" = "mate" ]; then
if command_exists mate-terminal; then
terminal=$(mate-terminal)
fi
fi
$terminal --working-directory="$HOME/code/" --window --full-screen &
Wie kann ich das zum Laufen bringen?
Antwort1
einfach $( )
durch nichts ersetzen.
if [ "$DESKTOP" = "gnome" ]; then
if command_exists gnome-terminal; then
terminal=gnome-terminal
fi
elif [ "$DESKTOP" = "mate" ]; then
if command_exists mate-terminal; then
terminal=mate-terminal
fi
fi
$terminal --working-directory="$HOME/code/" --window --full-screen &
$( )
wird verwendet, um einen Befehl auszuführen und die Ausgabe entweder in eine Variable oder in die Befehlszeile einzufügen.
Der obige Code wird möglicherweise nicht ausgeführt, wenn eines der Foo-Terminals nicht definiert ist. Ich würde vorschlagen
noterminal=true
if [ "$DESKTOP" = "gnome" ]; then
if command_exists gnome-terminal; then
gnome-terminal --working-directory="$HOME/code/" --window --full-screen &
noterminal=false
fi
elif [ "$DESKTOP" = "mate" ]; then
if command_exists mate-terminal; then
mate-terminal --working-directory="$HOME/code/" --window --full-screen &
noterminal=false
fi
fi
if $noterminal
then
echo unable to find terminal
## or other GUI alert system.
## or xterm as per mmmint sugestion
fi
Antwort2
Soweit ich weiß, xterm
ist es auf den meisten Linux-basierten Betriebssystemen verfügbar.
In jedem Fall wird das verwendete Terminal in der $TERM
Variable gefunden.