使用 < 重定向命令输入

2023-12-01

输入重定向适用于 .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(使用前将#替换为@)

使用 < 重定向命令输入 的相关文章

随机推荐