gpt4 book ai didi

python - 使用 Python 脚本包装在 Bash-Shell 中输入的所有命令

转载 作者:IT王子 更新时间:2023-10-28 23:59:54 25 4
gpt4 key购买 nike

我想要的是一种机制,我在 Bash 终端上输入的所有命令都由 Python 脚本包装。 Python 脚本执行输入的命令,但它添加了一些额外的魔法(例如设置“动态”环境变量)。这有可能吗?

我正在运行 Ubuntu 和 Debian Squeezy。

补充说明:

我有一个动态变化的属性文件(一些脚本会随时改变它)。我需要该文件的属性作为我所有 shell 脚本中的环境变量。当然,我可以从 shell 中以某种方式解析属性文件,但我更喜欢为此使用面向对象的样式(尤其是对于编写),因为它可以使用 Python(和 ConfigObject)完成。

因此,我想用 Python 脚本(无需修改脚本本身)包装我的所有脚本,该脚本将这些属性处理到所有 Shell 脚本。这是我当前的用例,但我可以想象我会找到其他案例,稍后我可以将我的包装器扩展到这些案例中。

最佳答案

将输入的每个命令包装到 Bash Shell 中的完美方法是更改​​ .bashrc 中的变量 PROMPT_COMMAND。例如,如果我想在每个命令之前做一些 Python 的事情,喜欢在我的问题中问到:

.bashrc:

# ...
PROMPT_COMMAND="python mycoolscript.py; $PROMPT_COMMAND;"
export $PROMPT_COMMAND
# ...

现在在每个命令之前运行脚本 mycoolscript.py

关于python - 使用 Python 脚本包装在 Bash-Shell 中输入的所有命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4418378/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com