bash - cmd START/D 和 nohup 的 bash 模拟是什么?

标签 bash process

我想启动一个进程(从 bash 脚本),其可执行文件位于当前目录内,在另一个目录 $dir 中(nohup 类似于 Windows cmd 开始/D )。如何在 bash 中做这样的事情?

最佳答案

如果您希望进程从 $dir 执行,只需执行以下操作:

( cd $dir; ~-/cmd)

其中 cmd 是当前目录中您要执行的可执行文件的名称。括号使这两个命令在子 shell 中运行,以便当前 shell 不会更改目录,并且 ~- 引用先前的目录。如果当前目录位于 PATH 中,则不必使用 ~-,并且您可能更愿意使用完整路径。请注意,将 . 放入 PATH 中通常被认为是不好的做法。

关于bash - cmd START/D 和 nohup 的 bash 模拟是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17107267/

相关文章:

python - 卸载旧版本并安装新版本后运行新 Python 版本时出现问题 (MAC)

bash - 在 Bash 中用数字对字符串进行排序

c# - 使用 cmd.exe 执行 DEL 命令的代码需要很长时间

ruby 脚本 : parent output missing after exec

linux - 询问bash脚本的含义

bash - 使用RUN命令在Docker中执行Shell脚本

linux - bash 和 ksh 之间的子 shell 差异

Python 多处理 - 从 3 个不同的函数返回值

android - 如何在android程序中获取进程启动的原因?

c++ - 如何杀死程序的所有进程?