..\web\index.min.html echo|set /p = R^"( > ..\w-6ren">
gpt4 book ai didi

windows - 如何写入包含双引号而没有换行的文件文本

转载 作者:行者123 更新时间:2023-12-03 11:08:41 24 4
gpt4 key购买 nike

我需要将以下字符串(不带换行符)写入新文件:

R"(


我试过了:
echo|set /p = R"( > ..\web\index.min.html
echo|set /p = R^"( > ..\web\index.min.html
echo|set /p = R\"( > ..\web\index.min.html

没有结果。

但是如果我写:
echo|set /p = R""( > ..\web\index.min.html

我得到:

R""(


两个双引号而不是一个。
我该如何解决我的问题?

最佳答案

通常,使用<nul set /p =text代替echo|set /p =text更好,更高效

SET/P提示符中的bizarre rules在Windows版本之间不一致:(

最好将所有重定向放在命令之前,以便您将=之后的所有字符作为提示的一部分,但规则中引用的情况除外。

棘手的问题或导致问题的事情是空格,前导=和引号。

谢天谢地,引号可以很容易地解决。将所需的字符串用双引号括在=的右侧:

<nul >..\web\index.min.html set /p ="R"("

首个引号将被删除,最后一个引号和最后一个引号之后的所有尾随字符将被删除。

或者执行上述操作,并在整个结构周围添加额外的一组引号,包括 =:
<nul >..\web\index.min.html set /p "="R"(""

前两个引号被删除,最后两个引号也被删除,第二到最后一个引号之后的所有字符都将被忽略。

我不建议这样做,但以下各项也可以使用:
<nul >..\web\index.min.html set /p ="R"(" IGNORED
<nul >..\web\index.min.html set /p "="R"(" IGNORED " IGNORED

关于windows - 如何写入包含双引号而没有换行的文件文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58329532/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com