CMD仅设置在文本文件中读取第一个字母

时间:2018-04-11 17:28:09

标签: variables cmd set output command-prompt

使用以下命令Set /p out=<out.txt我没有得到
文件中的文本,返回的只是一个符号和文件中的第一个字母。

我尝试过使用Set out=more out.txt,但最终只是将“命令”更多的out.txt“放入脚本而不是文本文件中。” https://i.stack.imgur.com/yU9A1.jpg

1 个答案:

答案 0 :(得分:0)

看起来out.txt使用UTF-16 encoding with BOM保存。与type command不同,< redirection operator不理解这一点。以下cmd命令应该可以解决问题:

set out=&for /f "delims=" %G in ('type out.txt') do @if not defined out set out=%G

要在批处理脚本(FOR.bat扩展名)中使用.cmd命令,请指定%%G %G如下:

@ECHO OFF
set "out="
for /f "delims=" %%G in ('type out.txt') do if not defined out set out=%%G