• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

jak ustawić zmienne pod przyciski klawiatury cmd?

VPS Starter Arubacloud
0 głosów
207 wizyt
pytanie zadane 18 kwietnia w Inne języki przez sensor Użytkownik (680 p.)
zmienione kategorie 18 kwietnia przez adrian17

Witajcie, z zasadzie to w temacie zawarte pytanie.

set /a  a1=a1
set /a  a2=a2
set /a  a3=a3
set /a  a4=a4
set /a  a5=a5

i teraz jak zrobić żeby zmienne przypisać pod przycisk klawiatury, i żeby zamiast enter po naciśniećiu tego przypisanego przycisku wykonywało się echo zmiennej bez konieczności naciskania enter

2 odpowiedzi

+2 głosów
odpowiedź 18 kwietnia przez VBService Ekspert (255,800 p.)

AFAIK, z poziomu samego pliku wsadowego (z rozszerzeniem .bat, czy .cmd) nie jest bezpośrednio możliwe wykrywanie wciśniętych klawiszy. Plik wsadowy jest ograniczony w swoich możliwościach i nie ma wbudowanych funkcji do obsługi interakcji z klawiaturą w czasie rzeczywistym.

Wybór można spróbować osiągnąć np. tak:

@ECHO OFF
ECHO.

SET "a1=a1"
SET "a2=a2"
SET "a3=a3"
SET "a4=a4"
SET "a5=a5"

SET /P key=Nacisnij 1, 2, 3, 4 lub 5:

IF /I "%key%"=="1" (
  ECHO %a1%
) ELSE IF /I "%key%"=="2" (
    ECHO %a2%
) ELSE IF /I "%key%"=="3" (
    ECHO %a3%
) ELSE IF /I "%key%"=="4" (
    ECHO %a4%
) ELSE IF /I "%key%"=="5" (
    ECHO %a5%
) ELSE (
    ECHO Nieprawidlowy klawisz.
)

ECHO.
ECHO Nacisnij ENTER
PAUSE > nul

 

polecenie CHOICE pozwala na wybranie klawisza bez wciskania ENTER, w tym przypadku klawisza z cyframi od 1 do 5, AFAIK nieobsługiwane są klawisze funkcyjne.

@ECHO OFF
ECHO.

SET "a1=a1"
SET "a2=a2"
SET "a3=a3"
SET "a4=a4"
SET "a5=a5"

CHOICE /C:12345 /N /M "Nacisnij 1, 2, 3, 4, lub 5: "
IF ERRORLEVEL 5 (
    ECHO %a5%
) ELSE IF ERRORLEVEL 4 (
    ECHO %a4%
) ELSE IF ERRORLEVEL 3 (
    ECHO %a3%
) ELSE IF ERRORLEVEL 2 (
    ECHO %a2%
) ELSE IF ERRORLEVEL 1 (
    ECHO %a1%
)

ECHO.
ECHO Nacisnij ENTER
PAUSE > nul

 

1
komentarz 18 kwietnia przez sensor Użytkownik (680 p.)
edycja 19 kwietnia przez sensor
witaj, o dzięki bo już kombinowałem z set, echo i pauzą, pewnie w końcu by mi się udało,

choice no tak i zaczyna się wszystko przypominać
komentarz 19 kwietnia przez sensor Użytkownik (680 p.)

@VBService, wiesz może jak rozwiązać odpalanie administracyjne, bo tylko w tym trybie choice działa, a miło byłoby gdyby działa w obu, albo żeby tryby przełączać w za pomocą komend?

komentarz 19 kwietnia przez sensor Użytkownik (680 p.)

@VBService, dobra odpalanie mam,

runas

ale trzeba wpisywać hasło i otwiera nowe okno, coś z tym trzeba zrobić,

wiesz może czy da się ustawić cert na cmd i wyłączyć hasło tylko na odpalanie cmd przeze cert ode mnie i wyłączyć odpalanie nowego okna?

komentarz 19 kwietnia przez sensor Użytkownik (680 p.)

@VBService, dziwnie zachowuje się ten program,

Runas /user:Adm "cmd \set.bat"

po odpaleniu wyskakuje okno z hasłem, wprowadzam hasło otwiera się nowe okno i tam w tym oknie mam uprawnienia admina a w starym pokazuje się komunikat 

Attempting to start cmd \set.bat

i ponownie chce hasło

wtf?

+1 głos
odpowiedź 18 kwietnia przez Panelinio Dyskutant (9,970 p.)
Chyba będziesz potrzebował program AutoHotkey. Albo zerknij tutaj:
https://ss64.com/nt/syntax-macros.html
komentarz 18 kwietnia przez sensor Użytkownik (680 p.)
dzięki ale to nie o to chodziło ;)
komentarz 18 kwietnia przez Panelinio Dyskutant (9,970 p.)
Jasne, sorka. Możesz zatem rozwinąć myśl?
komentarz 18 kwietnia przez sensor Użytkownik (680 p.)
klawisz F1 = echo %a1%

klawisz F2 = echo %a2%

klawisz F3 = echo %a3%

klawisz F4 = echo %a4%

klawisz F5 = echo %a5%

 

1
komentarz 18 kwietnia przez Panelinio Dyskutant (9,970 p.)

No to chyba pozostaje Ci AutoHotkey z odpowiednimi ustawieniami i skryptem
 

F1::Run, cmd.exe /k echo %a1%
F2::Run, cmd.exe /k echo %a2%
F3::Run, cmd.exe /k echo %a3%

 

komentarz 18 kwietnia przez sensor Użytkownik (680 p.)
edycja 18 kwietnia przez sensor
powiedzmy że jakbym chciał na łatwizne to pewnie jakiś .exe tak,

ale wolę to zrobić samemu przez system, więc liczę na dostęp do klawiatury przez cmd,

jak widzę  .exe to odruch wyporny, to chyba zostało mi z przed laty

Podobne pytania

0 głosów
1 odpowiedź 169 wizyt
pytanie zadane 28 stycznia 2018 w Sprzęt komputerowy przez dhjfnej Nowicjusz (120 p.)
0 głosów
0 odpowiedzi 142 wizyt

92,980 zapytań

141,943 odpowiedzi

321,189 komentarzy

62,309 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...