python argcomplete 和 pyinstaller
python argcomplete and pyinstaller
使用 pyinstaller 创建捆绑包后,argcomplete 脚本出现问题。我从我的脚本生成 sh,使用 pyinstaller,将其复制到 /usr/bin 更改脚本完成命令。这是行不通的,如果我用 py 文件这样做,它工作正常,我在哪里弄错了?或者这可能无法使用该脚本自动完成?
我自己找到了解决方案,如果有人愿意的话。
对于全局 argcomplete,只需将您的 bash 脚本输出从 argcomplete 粘贴到 /etc/bash_completion.d/<Your_sh_autocomplete_name>
对于本地(用户使用)argcomplete,它需要两个步骤。将文件添加到 ~/.bash_completion.d/<Your_sh_autocomplete_name>
并添加源:source ~/.bash_completion.d/<Your_sh_autocomplete_name>
。如果它应该在您使用 bash shell 时随时自动完成,那么您可以将带有源的命令添加到 ~/.bashrc
文件:echo "source ~/.bash_completion.d/<Your_sh_autocomplete_name>" >> ~/.bashrc
。
就是这样,当我想在本地进行时,我错过了第二步。所以这不是 argcomplete 或 pyinstaller 的问题:)
使用 pyinstaller 创建捆绑包后,argcomplete 脚本出现问题。我从我的脚本生成 sh,使用 pyinstaller,将其复制到 /usr/bin 更改脚本完成命令。这是行不通的,如果我用 py 文件这样做,它工作正常,我在哪里弄错了?或者这可能无法使用该脚本自动完成?
我自己找到了解决方案,如果有人愿意的话。
对于全局 argcomplete,只需将您的 bash 脚本输出从 argcomplete 粘贴到 /etc/bash_completion.d/<Your_sh_autocomplete_name>
对于本地(用户使用)argcomplete,它需要两个步骤。将文件添加到 ~/.bash_completion.d/<Your_sh_autocomplete_name>
并添加源:source ~/.bash_completion.d/<Your_sh_autocomplete_name>
。如果它应该在您使用 bash shell 时随时自动完成,那么您可以将带有源的命令添加到 ~/.bashrc
文件:echo "source ~/.bash_completion.d/<Your_sh_autocomplete_name>" >> ~/.bashrc
。
就是这样,当我想在本地进行时,我错过了第二步。所以这不是 argcomplete 或 pyinstaller 的问题:)