端末コマンドの前にコマンドを実行してください。

端末コマンドの前にコマンドを実行してください。

端末コマンドを実行する前にコマンドを実行する方法はありますか?

たとえば、

> ls -ltr
> "Hello you ran ls -ltr" //this is what I would like to achieve
> ..output of ls -ltr will be here

コマンドを実行する前にechoが実行されていることを確認することは可能ですか?

ありがとう

答え1

DEBUG同様に、効果的なプリランフックを設定できるトラップ設定を検討することもできますzsh。バラよりhttps://superuser.com/questions/175799/does-bash-have-a-hook-that-is-run-before-executing-a-command

答え2

Bashにはps1に機能を割り当てる概念があるので、私は次のようになります。

export PROMPT_COMMAND='PS1=$(make_ps1); set_xterm_title'

make_ps1はどこにありますか?

    make_ps1()
    {
    if [ $? = 0 ];then
        echo '\[\e[${host_color}m\][\D{%F %T} \u@\h \W]\[\e[0m\]\n\$ '
    else
        echo '\[\e[7m\e[${host_color}m\][\D{%F %T} \u@\h \W]\[\e[0m\]\n\$ '
    fi
    }

必要なものは何でもできますが、コマンドが実行された後に実行されるため、必要に応じない場合があります。

関連情報