输入重定向适用于 .exe 文件或内部 Windows 命令。
app.exe < ListOfNames.txt
sort < input.txt
但是,当我尝试将其重定向到批处理脚本时,它不起作用。
测试.bat:-
@echo off
echo %1 %2
使用以下命令运行它:-
test.bat<input.txt
其中 input.txt 有两个字符串。
但是,即使在批处理脚本的情况下,它也可以很好地重定向输出。
这是预期的行为还是我犯了一些语法错误?有没有其他方法可以从文件中读取参数而不是手动解析它?
命令行上提供的参数与标准输入(重定向输入所在的位置)完全不同。对于批处理脚本和 .exe 程序都是如此。
有些程序被设计为通过命令行参数或标准输入接受相同的值。但这不是常态。这是程序开发人员提供的功能。
如果您想在批处理脚本中读取重定向输入,则必须执行以下操作之一。
读取单行:
set /p "ln="
echo %ln%
要循环读取所有行:
for /f "delims=" %%A in ('findstr "^"') do (
echo %%A
)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)