【问题标题】:(All variants) How to execute specific command with any command entered?(所有变体)如何在输入任何命令的情况下执行特定命令?
【发布时间】:2014-06-13 22:45:55
【问题描述】:

执行一些实用程序后(按 Enter 后),我希望 shell 回显“Oklahoma!”或执行其他任何操作。即:

root@host$ somecommand --version
Some command version 1.00
Oklahoma!
root@host$ ls -la
.
..
dr-xr-xr-x root root 0 Apr 28 2014 file1
dr-xr-xr-x root root 0 Apr 28 2014 file2
Oklahoma!
root@host$ uname -a
Linux hostname 2.6.24-21-generic #1 SMP Mon Aug 25 16:57:51 UTC 2008 x86_64 GNU/Linux
Oklahoma!

我个人认为解决方案在 bashrc 中,但我不知道如何正确执行此操作。但是,如果您有任何其他解决方案,请发布。

【问题讨论】:

  • 您可以创建一个函数作为包装器。当你调用它时,它会执行给定的命令,然后回显 Oklahoma。
  • @fedorqui 然后我必须为所有命令/实用程序创建函数。
  • 你不能只设置 $PS1 吗?
  • @AdamBurry echo 只是一个例子 - 它应该被替换为任何其他命令

标签: bash shell sh ksh zsh


【解决方案1】:

您可能在$PROMPT_COMMAND 变量之后。

man bash 说:

如果设置,则在发出每个主要提示之前将该值作为命令执行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-10
    • 1970-01-01
    • 1970-01-01
    • 2016-11-08
    相关资源
    最近更新 更多