Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 批量读取.txt文件,不使用文本路径_Batch File_Path - Fatal编程技术网

Batch file 批量读取.txt文件,不使用文本路径

Batch file 批量读取.txt文件,不使用文本路径,batch-file,path,Batch File,Path,基本上,我想使用type命令,但是我不能提供实际的路径。 目前我的尝试是 type "./TESTS/Test1.txt" 但我假设,因为这是一条相对路径,所以它不能工作。 我在copy和xcopy上遇到了同样的问题 我一直无法解决这个问题,也无法在网上找到任何东西。 有办法做到这一点吗 编辑: 为了澄清,我正在尝试获取我的.bat文件,读取位于子文件夹中的.txt文件的内容,这意味着子文件夹和.bat文件位于同一文件夹中,并将其打印到控制台。由于您现在编辑了您的问题,但似乎没有提供关于我先前

基本上,我想使用type命令,但是我不能提供实际的路径。 目前我的尝试是

type "./TESTS/Test1.txt"
但我假设,因为这是一条相对路径,所以它不能工作。 我在copy和xcopy上遇到了同样的问题

我一直无法解决这个问题,也无法在网上找到任何东西。 有办法做到这一点吗

编辑:
为了澄清,我正在尝试获取我的.bat文件,读取位于子文件夹中的.txt文件的内容,这意味着子文件夹和.bat文件位于同一文件夹中,并将其打印到控制台。

由于您现在编辑了您的问题,但似乎没有提供关于我先前评论的反馈,因此,这是一个答案

在Windows及其命令解释器中,cmd.exe使用反斜杠\作为其路径分隔符

尽管许多命令似乎可以互换地接受正斜杠,但Type不是其中之一

此外。\n仅与当前工作目录相关,并且在cmd.exe中是不必要的,尽管有效

因此,以下各项应按您的预期工作:

类型测试\Test1.txt 类型测试\Test1.txt 键入。\TESTS\Test1.txt 键入。\TESTS\Test1.txt 如果批处理文件中接收到您正在使用的位置,并带有正向斜杠,则可以将其设置为变量,然后展开该变量,用正向斜杠替换反向斜杠:

设置变量=./TESTS/Test1.txt 类型%Variable://=\% 根据我们看不到的代码,可能需要首先导航到批处理文件目录,因为在调用这些命令时,它不一定是当前工作目录

为此,请使用:

CD/D%~dp0 %~dp0提供了一个文件夹,您的批处理文件(包括最后一个批处理文件)位于该文件夹中。当然,它只在批处理文件中工作。因此:

type "%~dp0Test\test1.txt"
这正是您想要的:\
独立于您的工作文件夹,批处理文件可能有cd或推送到该文件夹。

使用%cd%基本上不起作用吗?例如,键入%CD%/子文件夹/Test1.txt?%CD%是当前目录的windows变量,应设置为批处理文件所在的任何目录,并且由于您尝试访问同一目录中的文件夹,因此这应该可以工作。不过,您的问题很不清楚,我希望我没有误解。

命令需要知道在哪里找到要处理的文件。您可以使用相对路径,但必须有一些绝对的起点。您需要知道脚本的路径、当前工作目录的路径和要处理的文件的路径是三个不同的东西。但首先,您需要澄清您的情况,因为您当前的帖子不清楚,因此很难帮助您......,或者正确使用Windows路径分隔符。\,仅与当前工作目录相关,并且对于cmd.exe完全没有必要,Type TESTS\Test1.txt的功能将完全相同。您需要更好地解释您希望实现的目标,因为如果您不通知口译员姓名,如果必要,还不告知其位置,您希望口译员如何知道键入的内容?