如何在多部分命令行语句上以debugging模式运行Pycharm

标题可能会令人困惑,所以如果你想到一个更好的,改变它或告诉我,我会改变它。

假设你有这个命令:

cat f1.txt f2.txt | python script.py cmd1 | ... | python script.py cmd2 | ... 

我如何通过script.py的代码启动Pycharmdebugging器并单步执行?

这是在窗户上。

Solutions Collecting From Web of "如何在多部分命令行语句上以debugging模式运行Pycharm"

PyCharm具有通过运行/调试配置运行任务的功能。 我会尽力在这里模仿你的要求。 根据您的需要调整它。

  1. 选择Edit Configurations

在运行/调试菜单中编辑配置

  1. 点击添加按钮并选择Bash

运行/调试对话框 - 添加配置

  1. 输入你想用/bin/bash运行的bash脚本。 如果它是一个单一的命令,那么我的解决方法是将第一个参数放在脚本名称的位置,而第二个参数放在Program Argument空间。

运行cat作为bash配置的输入

  1. 切换到左侧选项卡中的Python > your_script ,并Before launch: Activate tool window添加现在创建的任务Before launch: Activate tool window 。 点击+ > Run Another Configuration ,选择上一步添加的bash配置。 它应该看起来像下面这样:

在python之前添加另一个配置

  1. 单击确定并关闭Run/Debug Configuration窗口。
  2. 设置断点,选择要调试的配置,然后单击调试按钮。

调试脚本

  1. 重复步骤2至4多次添加您的多个命令。

我没有真的试图做这个复杂的多命令操作。 我通常将其分解并单独调试脚本。 您可以考虑将输出保存到文件并使用它们。

警告:

从你的示例命令看起来你正在将一个命令的输出传递给另一个命令,我还没有想出一种方法来将一个配置的输出转发到另一个。

可能的解决方法:

  1. 如果它们都是Python脚本,那么您可以尝试使用“ Logs选项卡中的选项将每个输出保存到文件中。

使用“日志”选项保存python脚本的输出

  1. 可悲的Bash Configuration没有保存输出功能。 解决方法是编写一个bash文件,将输出保存到文件中,然后在Bash Configuration运行该bash脚本。

bash脚本保存输出

 # contents of cat_files.sh cat file1.txt file2.txt > outfile.txt 

现在在Python脚本配置中,您可以将outfile.txt作为参数传递并读取它以获取数据。