我想调试一个带有多个命令行参数的Python
脚本,例如
myscript.py --input1 ./dir/file1.txt --input2 ./dir/file2.txt
在Pycharm
。我知道,我可以使用Run/Debug Configuration
添加命令行参数。但是,我觉得这很麻烦,因为每次我想修改参数时都必须打开一个菜单。而且,在将文件指定为参数时,没有文件名完成。
我更喜欢从我最喜欢的shell调用myscript.py
,我有文件名完成等,但仍然在该脚本上使用PyCharm
调试器。
简短的回答:Tools> Attach to Process...
长期考虑:
input("press Enter to continue")
myscript.py --input1 ./dir/file1.txt --input2 ./dir/file2.txt
myscript.py
。在任何你想调试的地方设置break points
。选择Tools> Attach to Process...
并选择myscript.py
正在运行的进程。myscript.py
的外壳并击中Enter
麻烦你可能得到:ptrace
没有做某事的许可
解:
sudo su
echo 0 > /proc/sys/kernel/yama/ptrace_scope
或者你可以直接设置0
/etc/sysctl.d/10-ptrace.conf