Windows의 AutoHotKey에서 허용하는 것처럼 선택한 단축키를 눌러 YYYYMMDDHHmmSS 형식 20180509145153의 타임스탬프를 즉시 붙여넣고 싶습니다.
답변1
원하는 위치에 따라 다양한 수준에서 이 작업을 수행할 수 있습니다. 예를 들어 다음을 구성할 수 있습니다.껍데기또는 선호텍스트 에디터이렇게 하세요. 하지만 그것은 그들에게만 영향을 미칠 것입니다.
또는 해당 터미널 에뮬레이터가 활성 창일 때 해당 터미널 에뮬레이터에서 실행되는 명령에 영향을 미치도록 screen
/ 또는 터미널 에뮬레이터를 구성하여 이를 수행할 수 있습니다 .tmux
X11에서는 xbindkey
특정 키 누르기 또는 키 조합을 처리하고 일련의 키 누르기 및 키 놓기 이벤트를 시뮬레이션하도록 할 수 있습니다(예: xte
또는 사용). xdotool
이는 동일한 X 서버에 연결되어 활성화된 모든 응용 프로그램에 적용됩니다.
예를 들어 다음을 추가하세요 ~/.xbindkeysrc
.
"sleep 0.1; xdotool type --clearmodifiers $(date +%Y%m%d%H%M%S)"
control+space
해당 타임스탬프를 일련의 키 입력으로 보냅니다 Ctrl+Space. (추가하지 않으면 sleep 0.1
때때로 타임스탬프의 시작 부분을 놓칠 수 있습니다.)
또 다른 옵션은 타임스탬프를 PRIMARY X11 선택으로 저장하고 가운데 마우스 클릭을 시뮬레이션하는 것입니다. 그러면 많은 응용 프로그램에서 PRIMARY 선택 내용이 현재 마우스 포인터 위치에 삽입됩니다. 존재하다 ~/.xbindkeysrc
:
"date +%Y%m%d%H%M%S | tr -d '\n' | xclip; sleep 0.1; exec xdotool click --clearmodifiers 2"
control+space
답변2
다양한 운영 체제에서 이를 수행하기 위해 다양한 스크립트를 사용할 수 있습니다.
Linux의 자동 키
이것자동 키 파이썬스크립팅 언어는 다음 솔루션에 사용됩니다. 내 Kubuntu 버전 20.04(Ubuntu 기반)에서 테스트되었습니다.
단축키 설정자동 키GUI는 설명이 필요합니다(예: Meta+n).
# output = system.exec_command("date") # Sa 20. Feb 09:38:39 CET 2021
output = system.exec_command("(date +%Y%m%d%H%M%S)") # 20210220093839
keyboard.send_keys(output)
Linux의 자동 단축키
Linux에서도 AutoHotkey를 사용할 수 있습니다(Wine을 사용하여 일부 설정이 필요함).
다음은 Github 솔루션의 예입니다.https://github.com/sl5net/Lintalist4Linux. 그것이 사용하는 힌트는 다음과 같습니다.https://ubuntuhandbook.org/index.php/2020/01/install-wine-5-0-stable-ubuntu-18-04-19-10/