web-dev-qa-db-ja.com

ターミナルを開いたままにする方法(gnome-terminalを除く)?

コマンドが存在した後にターミナルを開いたままにするオプションを使用して、プロファイルを編集(および作成)するgnome-terminal機能が便利だと思います。

enter image description here

(コンテキストメニューのファイルマネージャーを使用してコマンドを実行し、端末内のファイルに関する情報を表示したり、処理中に端末に情報を表示したりするのが好きです。)

他の端末で同じ機能を見つけることができなかったので、デフォルトの端末でなくてもgnome-terminalをインストールする必要があります。

この機能を備えた他のターミナルエミュレーターはありますか?同じ効果を持つ特定の端末で使用されるコマンドはありますか?


1行(コンテキストメニューエントリとして追加)でターミナルを開き、コマンドを実行して、開いたままのターミナルウィンドウに情報を表示したいと思います。例:pantheon-files(elementary os)で、Exec=xterm -hold -e "mediainfo -i %f"(以下のコメントによる)またはExec=gnome-terminal --window-with-profile=new1 -e "mediainfo -i %f"のような行を持つ請負業者ファイルを使用して、メディア情報のコンテキストメニューエントリを追加します。

2
user32012

これは、ユーザーの確認なしにプログラムが終了しないように調整するという簡単な方法で、任意の端末エミュレーターで実現できます。次のようなものを含むスクリプトであるterminal_Shell_wrapperを実行するようにターミナルに指示します。

#!/bin/sh
if [ $# -eq 0 ]; then "${Shell:-sh}"; else "$@"; fi
echo "The command exited with status $?. Press Enter to close the terminal."
read line

キーを押してターミナルを閉じる場合は、read lineをに変更します

stty -icanon; dd ibs=1 count=1 >/dev/null 2>&1

ターミナルを開いたままにするオプションがあるターミナルは他にもあります。その設定を有効にしてプロファイルを指定するものもあれば(Gnome Terminalのように)、特定の引数を持つものもあります。

Xterm

xterm -hold

$(man xterm)から:

-hold holdリソースをオンにします。つまり、シェルコマンドが完了しても、xtermはウィンドウをすぐに破棄しません。ウィンドウマネージャを使用してウィンドウを破棄/強制終了するまで、または信号を送信するメニューエントリ(HUPやKILLなど)を使用するまで待機します。

ランニング xterm --help、行の1つは

-/+hold turn on/off logic that retains window after exit

他の端末にも同様のオプションがあるかどうかを確認するには、ヘルプまたはマニュアルページを参照してください。


Konsole

(KDEのデフォルト):

konsole --helpはこの行を示しています:

--hold, --noclose Do not close the initial session automatically when it ends.

したがって、Konsoleに使用するコマンドには次のものが含まれます。

konsole --holdまたはkonsole --nonclose。引用符は必要ありません。次のようになります。

Exec=konsole --hold -e mediainfo -i %f


Xfce4ターミナル

Tab Options:
  -x, --execute; -e, --command=command; -T, --title=title;
  --working-directory=directory; -H, --hold

そう:

xfce4-terminal -H -e '<command>'


ターミネーター

Gnomeターミナルと同様のオプションがあり、プロファイルを作成する必要があります。 「ホールド」と呼ばれます-そのオプションが有効になっています。

コマンドを実行して開いたままにするには:

terminator -e '<command>' -p hold

4
D McKeon
some_command | cat - /dev/tty

...ほとんど何でも動作します。使用するランチャーがコマンド内のパイプラインを適切に処理しない場合は、次のようにする必要があります...

sh -c 'some_command | cat - /dev/tty'

CTRL+Cで割り込みを送信してcatを強制終了し、セッションを終了するか、準備ができたらターミナルウィンドウを閉じることができます。

0
mikeserv

グアケを試してみませんか?常にバックグラウンドで実行されており、使用したいときにホットキーを押すと表示されます。

詳細はこちらをクリック

0
Zieng