TypeScriptにいるかどうかはどうすればわかりますか?

TypeScriptにいるかどうかはどうすればわかりますか?

このコマンドを使用してscript端末のすべての出力をtypescriptscript foofoo

それでは、コマンドを順番に入力していますが、TypeScriptを使用していることを忘れてしまったとしましょう。

TypeScriptにいるかどうかはどうすればわかりますか?

ベストアンサー1

たぶん、次のようにすることができます:

if lsof -tac script "$(tty)" > /dev/null; then
  echo "I'm running under script"
else
  echo "I'm not"
fi

次のものを追加できます。

lsof -tac script "$(tty)" > /dev/null && PS1="[script] $PS1"

~/.zshrcまたはに~/.bashrc追加すると、あなたかどうかに関する情報scriptがシェルプロンプトに表示されます。

または、インストールを保証できない場合は、lsof次のことを行うことができます(未修正IFS仮定)。

terminal=$(ps -o comm= -p $(ps -o ppid= -p $(ps -o sid= -p "$$")))
[ "$terminal" = script ] && PS1="[script] $PS1"

経験的な方法は、セッションリーダーの親コマンド名、通常はターミナルエミュレータ(、、、xterm... )を取得することです。scriptscreen

おすすめ記事