DIY cw.exe
(консольная запись) утилита
Если вы не найдете его готовым, готовым, вы можете сделать это самостоятельно. С помощью этой cw
утилиты вы можете использовать любые символы. По крайней мере, я бы так хотел думать. Пожалуйста, стресс-тест и дайте мне знать.
Инструменты
Все, что вам нужно, - это .NET , установленный в наше время.
Материалы
Некоторые символы напечатаны / скопированы.
Steps
- Создать
.bat
файл со следующим содержимым.
/* >nul 2>&1
@echo off
setlocal
set exe=cw
for /f "tokens=* delims=" %%v in ('dir /b /s /a:-d /o:-n "%SystemRoot%\Microsoft.NET\Framework\*csc.exe"') do set "csc=%%v"
"%csc%" -nologo -out:"%exe%.exe" "%~f0"
endlocal
exit /b %errorlevel%
*/
using System;
namespace cw {
class Program {
static void Main() {
var exe = Environment.GetCommandLineArgs()[0];
var rawCmd = Environment.CommandLine;
var line = rawCmd.Remove(rawCmd.IndexOf(exe),exe.Length).TrimStart('"');
line = line.Length < 2 ? "\r" : line.Substring(2) ;
Console.Write(line);
}
}
}
Запустите его.
Теперь у вас есть хорошая утилита 4 КБ, поэтому вы можете удалить .bat
.
Кроме того, вы можете вставить этот код в качестве подпрограммы в любом пакете, отправить полученный .exe
на %temp%
, использовать его в своем пакете и удалить его, когда закончите.
Как пользоваться
Если вы хотите написать что-то без новой строки:
cw Whatever you want, even with "", but remember to escape ^|, ^^, ^&, etc. unless double-quoted, like in "| ^ &".
Если вы хотите возврат каретки (переход к началу строки), просто наберите
cw
Так что попробуйте это из командной строки:
for /l %a in (1,1,1000) do @(cw ^|&cw&cw /&cw&cw -&cw&cw \&cw)