2

Я могу скопировать несколько строк текста в буфер обмена с помощью следующего скрипта, и он отлично работает.

@echo off
(
echo aaa
echo bbb
echo ccc
)|clip

Единственная проблема заключается в том, что по какой-то причине в конце каждой строки также копируется один пробел, который я должен удалить вручную.

Есть ли способ предотвратить это?

1 ответ1

2

Ответ на вопрос « Предотвратить лишние пробелы при передаче данных в пакетном скрипте Windows» прекрасно объясняет вашу проблему. Я переведу эти ответы в ваш код. По сути, есть два из трех примеров кода, которые вы можете использовать, поскольку вы не имеете дело с переменными среды.

1) Добавьте дополнительный CMD /C, где вы явно получите точное поведение, которое вы ищете

cmd /c "echo aaa&echo bbb&echo ccc"|clip

3) Внедрить отложенное расширение переменной перевода строки - умопомрачительная техника, разработанная jeb

set ^"LF=^
%= This creates a linefeed character =%
"
(echo aaa%%LF%%echo bbb%%LF%%echo ccc%%LF%%)|clip

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .