【问题标题】:STDIN from Makefile with make run command来自 Makefile 的 STDIN 与 make run 命令
【发布时间】:2020-09-28 02:40:34
【问题描述】:

我有一个程序,我试图在其中调用以下命令:

make run {FILE} e.g filename.txt

如何创建我的 Makefile 以便它可以执行该程序并通过 STDIN 接受任何文件名。

我的 Makefile 如下所示:

run:
   python execute.py --filename {ANY FILENAME}

【问题讨论】:

  • 不过,这个问题与 STDIN 无关。

标签: python-3.x makefile compilation stdin


【解决方案1】:

make 的参数是目标。在您的初始示例中,run{FILE} 之间没有特殊关系。如果你想强制使用 run 前缀,它必须是目标名称的一部分,而不是空格分隔:

run-%:
    python execute.py --filename $*

【讨论】:

  • 谢谢卡尔。我不断得到(make:*** No rule to make target `run'. Stop.),如果我从运行命令中删除“-%:”,我得到(make:对 data.txt 没有什么可做的) data.txt 是我的输入文件名
  • 您需要使用make run-data.txt
  • 所以我们没有办法让命令make run run-data.txt 运行python 脚本而不会出现该错误?有解决办法吗?
  • make 不是这样工作的。如果要解析命令行参数,请改为编写脚本。
猜你喜欢
  • 2013-12-16
  • 2015-03-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-18
  • 2021-02-08
  • 2021-04-25
  • 1970-01-01
相关资源
最近更新 更多