使用批处理文件命令读取文本文件内容

时间:2019-02-20 06:07:05

标签: batch-file cmd

我的文本文件的内容类似

  

8.4.0.154

     

换行符

我已经在批处理文件中将以下命令编写为读取8.4.0.154的第一行

set /p ClientSideUnitTestDestinationLocation=<%scriptLocation%\assemblyVersion.txt
Echo %ClientSideUnitTestDestinationLocation%

这里只是打印8个带有特殊符号的前缀,如下图所示

printing only 8 prefixes with some special symbol

有人可以在这里帮助我弄清楚为什么无法读取批处理文件中的完整编号并打印出来。

预先感谢

1 个答案:

答案 0 :(得分:0)

我正在使用PowerShell脚本使用以下命令创建此文本文件:

param ([string] $dllPath = $null,[string] $textFile = $null)
$version = [System.Reflection.Assembly]::LoadFrom($dllPath).GetName().Version.ToString()
$version > $textFile

该文本文件未使用ANSI编码创建,因此无法使用批处理文件读取。

现在,我如下更改了上面的代码,它正在工作。

param ([string] $dllPath = $null,[string] $textFile = $null)
$version = [System.Reflection.Assembly]::LoadFrom($dllPath).GetName().Version.ToString()
$version | Out-File $textFile -Encoding Ascii

我可以使用以下命令读取文本文件内容

set /p ClientSideUnitTestDestinationLocation=<%scriptLocation%\assemblyVersion.txt
Echo %ClientSideUnitTestDestinationLocation%