尝试创建重命名终端标题并运行应用程序的命令,我在 .bash_aliases 文件中添加命令。我正在使用的重命名命令是:PS1='\[\e]0;test\a\]${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
如果我单独使用它并在运行应用程序后它按预期工作。但是如果我使用这样的命令:
alias rpcs3="PS1='\[\e]0;test\a\]${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' && ./rpcs3/rpcs3-v0.0.25-14385-b639f3c8_linux64.AppImage"
使用后一个命令,终端标题仅在应用程序关闭后更改,如下例所示:
关闭应用程序之前
关闭应用程序后
我应该怎么办?
别名不起作用,因为 shell 提示符会一直等到您的程序完成。
一个解决方案是首先调用您的命令
./rpcs3/rpcs3-v0.0.25-14385-b639f3c8_linux64.AppImage
并在后台运行它:并且假设您的命令将在您按下时在后台运行,Enter您将返回到 shell 提示符(标题将在之前设置,所以这不再有问题)。如果你想回到前台
./rpcs3/rpcs3-v0.0.25-14385-b639f3c8_linux64.AppImage
你应该使用命令的过程:fg
。要获取当前 shell 中正在后台运行的作业,您可以使用 command/shell builtinjobs
。例如:如果我想回到前台
nautilus
我可以使用的过程:在您的情况下,您可能只有一个进程在后台(
./rpcs3/rpcs3-v0.0.25-14385-b639f3c8_linux64.AppImage
)。所以你可以简单地使用fg 1
.您正在尝试使用提示更改标题,这意味着只有当您的应用程序退出时标题才会更改。更好的方法可能是直接在脚本中更改标题:
将此脚本放在您的 PATH 中的某个位置(通常
$HOME/bin
甚至是/usr/local/bin
)并使其可执行。然后您可以像调用任何其他程序一样调用它。例如,如果您调用了该文件dorpcs3
,那么这就是您运行的文件。请注意,这不会在应用程序退出后重置标题,但默认的 shell 提示符会为您重置。