执行public01,public02,时的打印输出

问题描述 投票:0回答:1

我有以下Makefile:

CC = gcc
CFLAGS = -ansi -Wall -g -O0 -Wwrite-strings -Wshadow \
-pedantic-errors -fstack-protector-all 
PROGS = public01 public02 public03 public04 public05 public06 shell_jr

.PHONY: all clean

all: $(PROGS)

clean:
    rm -f *.o $(PROGS) a.out

$(PROGS): shell_jr.c
public0%:
    shell_jr < public0%.in > output
    cat output

无论何时输入public0X,当shell_jr.c的输出与来自public0X.in的输入一起运行时,都应显示该输出。 public0%标记是我尝试实现的目标。但是,存在3个问题。首先,我只能将public0%.in作为依赖项。通过复制粘贴public01,public02等单独的命令可以避免这种情况。其次,当我这样做并执行make时,该命令将立即执行。如何确保在键入public01并按Enter之前不执行该命令?

c makefile
1个回答
0
投票

首先,我只能将public0%.in作为依赖项。

© www.soinside.com 2019 - 2024. All rights reserved.