【问题标题】:Save results in a .txt file using makefile, but in a relative path使用 makefile 将结果保存在 .txt 文件中,但保存在相对路径中
【发布时间】:2021-05-11 14:05:26
【问题描述】:

我有一个打印一些数据的 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

我想知道如何解决它。

【问题讨论】:

  • 相对路径是../Resultados/Resultadoes.txt而不是Resultados/Resultadoes.txt
  • @Acuervoc 我提供的解决方案对你有用

标签: c++ makefile g++ txt


【解决方案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

【讨论】:

    猜你喜欢
    • 2012-04-20
    • 1970-01-01
    • 1970-01-01
    • 2020-04-26
    • 2023-03-15
    • 2013-09-23
    • 2014-12-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多