В командном файле Windows cmd как игнорировать возврат каретки

У меня есть файл Win 7 bat, который запрашивает пользователя ввести номер, затем он передает этот номер в качестве аргумента в сценарий tcl.

оптический сканер штрих-кода используется для предоставления номера, но тогда я хочу, чтобы пользователь мог изменить номер (с помощью клавиатуры), прежде чем файл bat продолжается. Проблема в том, что сканер, кажется, добавить возврат каретки в конце сканирования, что делает файл bat автоматически продолжать (если я вместо того, чтобы ввести номер с помощью клавиатуры вместо сканера, bat файл не продолжится до ввода клавиатуры нажата).

поэтому я хочу, чтобы файл bat игнорировал возврат каретки, отправленный сканером, но затем продолжался, когда пользователь нажимает Enter на клавиатуре.

вот мой bat-файла:

echo off
set /p sernum= Enter the serial number:  
cd C:Tclbin
tclsh.exe tcl_file.tcl %sernum%
cmd
15
задан scrith
03.02.2023 0:51 Количество просмотров материала 2529
Распечатать страницу

1 ответ

Спасибо за ответ. Я подумал об этом еще немного и понял, что могу изменить отсканированный ввод, не требуя от пользователя внесения изменений с помощью клавиатуры.

Так вот мой новый bat скрипт:

echo off
set /p sernum= Scan the serial number barcode label:  
REM extract last 6 chars from serial number & prepend text
set sernum=new_text%sernum:~-6%
cd C:\Tcl\bin
tclsh.exe tcl_file.tcl %sernum%

"~-6 " извлекает последние 6 символов из отсканированного серийного номера (это одно из моих требований), а затем я добавляю к нему фиксированный текст (еще одно из моих требований). Просто и легко.

0
отвечен scrith 2023-02-04 08:39

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх