使用 makefile 将结果保存在 .txt 文件中,但保存在相对路径中

Save results in a .txt file using makefile, but in a relative path

我有一个打印一些数据的 cpp 代码,我希望它将结果保存在一个 txt 文件中,但我希望它位于不同的目录中。

我的数据树

|
|--Code
|   |--Oscilador.cpp
|   |--makefile
|
|--Resultados
|   |--(Where I want the txt to be save in)

我的 make 文件代码是这样的

Oscilador.x:Oscilador.cpp
    g++-10 -o0 Oscilador.cpp -o Oscilador.x

Resultados.txt:Oscilador.x
    ./Oscilador.x > ./Resultados/
    rm Oscilador.x

当我运行 make 文件时,它说:

:Codigo Felipe$ make Resultados.txt
./Oscilador.x > Resultados/Resultados.txt
/bin/sh: Resultados/Resultados.txt: No such file or directory
make: *** [Resultados.txt] Error 1

我想知道我该如何解决它。

请查看下面的代码来解决这个问题。

Oscilador.x:Oscilador.cpp
    g++ Oscilador.cpp -o Oscilador.x

Resultados.txt:Oscilador.x
    # Output to Resultados.txt file under Resultados directory which is present one folder behind
    ./Oscilador.x > ../Resultados/Resultados.txt
    rm Oscilador.x

如果目录Resultados已经创建,以上代码运行成功。
如果该目录不存在并且您想在生成 Resultdos.txt 之前创建它,请使用以下代码

Oscilador.x:Oscilador.cpp
    g++ Oscilador.cpp -o Oscilador.x

Resultados.txt:Oscilador.x
    # create directory Resultados one folder behind  if it does not exist
    mkdir -p ../Resultados
    ./Oscilador.x > ../Resultados/Resultados.txt
    rm Oscilador.x