" ech-6ren">
gpt4 book ai didi

batch-file - 有没有办法使用 set/p 将变量设置为转义字符?

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

我想捕捉转义字符,如 ctrl+z ctrl+a 等等。
当我们按下这些转义组合时,提示显示 ^Z ^A ,但是当我尝试将它们用作变量的值时,代码不起作用。

set /p "input=> "
echo/%input%

上面的代码显示为输出只是 %input%当我输入转义字符时,变量为空。
那么,有没有办法捕获他们呢?或者这是不可能的?

最佳答案

可以使用 ^A , ^B , ^G和一整串其他字母(其中 ^ 是通过 ctrl+letter 实现的)。请注意,这是不可能的 ^Z^C或者至少不是这种方法。

当我需要在我的批处理程序之一中输出声音时,我的情况与您非常相似。您可以通过临时文本文件执行此操作:

C:\> Echo ^A > tmp.txt
C:\> set /p ctrl_A=<tmp.txt
C:\> Echo ^G > tmp.txt
C:\> set /p ctrl_G=<tmp.txt
C:\> del tmp.txt
C:\> Echo %ctrl_A%


C:\> Echo %ctrl_G%


C:\> Rem In above double blank you should hear a beep from your computer.

这就是我在程序中使用声音的方式。请注意,每次看到 ^在代码中记得要 ctrl+letter .

现在要在批处理文件中使用它,您需要使用记事本。
  • 在 cmd 中输入 Echo ^G > tmp.txt
  • 然后输入 Notepad tmp.txt
  • 在记事本窗口中选择第一行中的所有内容,有时它会是一个大点,有时它会是四个连续的空格。无论如何复制它(确保不要留下任何东西)
  • 关闭记事本,输入 del tmp.txt并退出 cmd
  • 在批处理文件的开头将变量设置为剪贴板上的任何内容

  • 瞧,您可以在 CMD 和 BATCH 中使用这些特殊功能!

    希望这有帮助,莫娜。

    关于batch-file - 有没有办法使用 set/p 将变量设置为转义字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21964835/

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