如月ya 发表于 2023-3-19 22:28:03

vs如何使用重定向

编译器vs2022,操作系统win11

我按照cpp第8章写了个程序,命名为 8_02,然后用vs内的终端按照:
./8_02        (无法将./8_02项识别为 cmtlet、函数、脚本文件或可运行程序的名称)
./ 8_02        (无法将./项识别为 cmtlet、函数、脚本文件或可运行程序的名称)

这两种格式都试了很多遍,并不能打开运行该程序

终端的配置文件是        1.开发者命令提示        2.PowerShell(Default)

请问怎么才能在vs内正常的使用终端进行重定向操作,因为第8章的重定向和第13章的文件输入输出好像都需要这个去实现
网上查相关基本都是针对vscode的,是vs在windows内没有这方面的功能吗
还是我缺少了什么配置文件或是别的什么问题,求解答

ouyunfu 发表于 2023-3-20 08:53:08

在 Visual Studio 中打开终端后,当前的工作目录默认是解决方案目录,所以可以通过以下方式来运行你的程序:

.\Debug\8_02.exe

其中,.\Debug\ 是你的项目的输出目录,8_02.exe 是你的程序名称。如果你的项目是在 Release 模式下编译的,那么输出目录是 .\Release\。

如果你想要在终端中使用重定向操作,可以在运行程序时使用 < 符号来指定输入文件,或使用 > 符号来指定输出文件。例如,下面的命令会将 input.txt 中的内容重定向到你的程序中:

.\Debug\8_02.exe < input.txt

而下面的命令会将你程序的输出重定向到 output.txt 文件中:
.\Debug\8_02.exe > output.txt

如果你想同时使用输入和输出重定向,可以将它们组合起来使用:

.\Debug\8_02.exe < input.txt > output.txt

希望这些信息能够帮助你解决问题。

isdkz 发表于 2023-3-20 12:36:45

你可以使用Visual Studio 2022内置的调试器来运行和调试你的程序,而不需要使用终端进行重定向操作。以下是如何在Visual Studio 2022中使用调试器来运行你的程序:

1、打开你的项目,然后在“解决方案资源管理器”中选择你的源文件。

2、单击“调试”菜单,然后选择“开始执行(不调试)”或按下F5键。

3、如果你的项目有多个源文件,Visual Studio会提示你选择要执行的源文件。

4、你的程序将在Visual Studio的输出窗口中运行。如果你的程序需要从控制台读取输入或将输出写入控制台,则可以在Visual Studio中的“输出”窗口中进行输入和输出。

如果你仍然需要使用终端进行重定向操作,则可以尝试使用以下命令:

.\8_02.exe > output.txt

这将运行你的程序并将输出重定向到名为“output.txt”的文件中。请注意,你需要在命令提示符或PowerShell中运行此命令,而不是在Visual Studio的终端中运行它。

如果你使用的是Visual Studio 2022的“开发人员命令提示符”或“PowerShell”终端,你需要将当前目录更改为包含你的程序的目录。例如,如果你的程序位于“C:\Users\YourUserName\Documents\Visual Studio 2022\Projects\YourProject\Debug”目录中,则需要使用以下命令更改当前目录:

cd C:\Users\YourUserName\Documents\Visual Studio 2022\Projects\YourProject\Debug

然后你可以运行上述命令来运行你的程序并将输出重定向到文件中。

如月ya 发表于 2023-3-22 18:01:33

isdkz 发表于 2023-3-20 12:36
你可以使用Visual Studio 2022内置的调试器来运行和调试你的程序,而不需要使用终端进行重定向操作。以下是 ...

请问是改终端配置文件的shell位置吗,为什么我把路径粘贴过去后说找不到位置。我用的是vs2022里的powershell

如月ya 发表于 2023-3-22 18:04:32

ouyunfu 发表于 2023-3-20 08:53
在 Visual Studio 中打开终端后,当前的工作目录默认是解决方案目录,所以可以通过以下方式来运行你的程序 ...

不行欸,我在中间加入Debug后面加了.exe也还是不能识别。
还是那样写一起就都不能识别,/和D之间加个空格就说不能识别./
页: [1]
查看完整版本: vs如何使用重定向