如何在用户输入后立即执行shell

时间:2015-04-20 06:26:43

标签: linux bash shell

我有一个任务,我需要shell在用户输入后立即执行某些操作。

示例:

root@hq> pwd
<my user defined function>
/home/users/home40/spandiya
root@hq> 

我需要在用户输入“pwd”后立即运行我定义的函数,我该怎么做?我不希望在PS1之前由shell执行PROMPT_COMMAND

我需要在用户输入后立即执行我的脚本。

1 个答案:

答案 0 :(得分:1)

以下是使用trap DEBUG

的解决方法
mycmd() { tty; echo "custom command"; }

trap 'mycmd' DEBUG

$ pwd
/dev/cons0
custom command
/home/user

mycmd函数在用户输入之后但在执行用户输入的命令之前运行。