【问题标题】:How to use file contents as command-line arguments Windows如何使用文件内容作为命令行参数 Windows
【发布时间】:2019-10-25 02:26:57
【问题描述】:

我可以在 Bash shell 中编写

some_command $(< some_file)

将 some_file 的内容作为命令行参数传递给 some_command。我怎样才能最好地在 Windows 上完成同样的事情,最好使用内置命令/语法?

编辑:澄清一下, some_file 中的任何形式的空格都应该被视为参数分隔符,就像我的 Bash 示例中的情况一样。特别是,即使 some_file 有多行,这也需要工作。

【问题讨论】:

    标签: windows file command-line-arguments


    【解决方案1】:
    set /p ARGS= <some_file
    some_command %ARGS%
    

    【讨论】:

    • 感谢您的回答!有什么方法可以使包含多行的文件起作用?
    • 我认为 Windows 命令不允许包含换行符。我们接受答案表示感谢。
    • Windows 中的命令行可以包含换行符,但是让笨重的 CMD shell 处理它可能非常困难或不可能,尤其是从环境变量中。
    • 请注意,set /p 仅限于读取 1023 个字节(不是字符)。使用控制台的输出代码页(默认为系统 OEM 代码页)将字节字符串解码为 UTF-16。这可以通过 chcp.com 进行更改,例如chcp 65001 设置 UTF-8(每个字符 1-4 个字节)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-14
    • 2012-09-28
    • 2019-01-27
    • 1970-01-01
    • 2018-11-19
    • 1970-01-01
    相关资源
    最近更新 更多