小编Muh*_*hir的帖子

如何在启动时阻止 .bashrc 在别名中运行子命令?

我添加了一个别名命令来杀死我的guake终端到我的.bashrc

alias killguake="kill -9 $(ps aux | grep guake | head -n -1 | awk '{print $2}')"
Run Code Online (Sandbox Code Playgroud)

但是问题是,子命令ieps aux | grep guake | head -n -1 | awk '{print $2}'是在终端启动的时候执行的,killguake设置为kill -9 result_of_subcommand.

有没有办法设置它,每次运行时都会运行/计算子命令killguake?这样它就可以拥有guake的最新PID。

我也曾尝试管道的kill使用xargs,但也导致相同的,那就是计算在启动时的一切。这是我用管道尝试过的

ps aux | grep guake | head -n -1 | awk '{print $2}' | xargs -I{} kill -9 {}
Run Code Online (Sandbox Code Playgroud)

shell bash alias quoting

9
推荐指数
2
解决办法
2468
查看次数

标签 统计

alias ×1

bash ×1

quoting ×1

shell ×1