Phi*_*ppe 11 bash shell command-line autocomplete tab-completion
我经常从shell(在我的情况下是Bash)执行命令,我想立即分叉并且我想忽略它的输出.事实上,我经常创建一个脚本(silent)来执行它:
#!/bin/bash
$@ &> /dev/null &
Run Code Online (Sandbox Code Playgroud)
然后,我可以跑,例如
silent inkscape myfile.svg
Run Code Online (Sandbox Code Playgroud)
并且我的终端不会受到我刚刚分叉的进程的调试输出的污染.
我有两个问题:
是否有"官方"的方式来做这件事?,即更短但相当于&> /dev/null &?
如果没有,是否有一种方法可以在我的silent命令之后使标签完成工作,就像它不在那里一样?举个例子,在我输入之后silent inksc,我希望bash silent inkscape在我按下时自动完成命令[tab].
旁白:可能想要exec "$@" &> /dev/null &在您的silent脚本中,使其丢弃子外壳,并且周围的引号"$@"将防止空格妨碍。
至于#2:complete -F _command silent应该做你想做的事情。(我调用该脚本的我的版本launch并complete -F launch在我的.bash_profile)