我对 JTR 设置进行了 Bash 补全受到推崇的:
启用 bash 补全。将以下行添加到您的
~/.bashrc
.
<JtR path>/run/john.bash_completion
因此我有这个.bashrc
:
. /mnt/data/Documents/Build/JohnTheRipper/run/john.bash_completion
这工作正常,我可以在调用john
二进制文件时使用 Bash 完成。
不过,我制作了一个名为“johnit
所以我可以一次调用具有各种模式、单词列表和规则的开膛手约翰”的脚本。
正如评论中所述,john.bash_completion
我使用以下语法将 bash 完成规则“复制”到johnit
:
complete -F _john johnit
johnit
驻留在~/bin/johnit
并且 this 位于当前用户的$PATH
.
但是,当使用johnit
shell 完成制表符时,它会挂起并且永远不会自动完成。
作为测试,我用另一个空文件尝试了此操作,标记为可执行文件:
touch magic
chmod +x magic
这似乎是自动完成的,但只是没有前导点和斜杠 ( ./magic
),因此 Bash 在执行时实际上不会正确调用它:
magic --format=
是什么赋予了?