오토핫키
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
오토핫키는 키보드와 마우스 입력을 제어하여 컴퓨터 작업을 자동화하는 데 사용되는 무료 오픈 소스 스크립트 언어이다. 핫키와 핫스트링을 통해 특정 동작을 실행하거나 문자열을 자동 치환할 수 있으며, 프로그램 실행, 문서 열기, 키보드 재할당, 마우스 제어, GUI 제작 등 다양한 기능을 제공한다. 오토핫키 스크립트는 실행 파일로 컴파일하여 오토핫키가 설치되지 않은 환경에서도 실행할 수 있다. 2003년 11월에 첫 베타 버전이 출시되었으며, 현재는 v2 버전이 공식적으로 사용되고 있다. 오토핫키는 활발한 커뮤니티를 가지고 있지만, 악성코드에 악용될 수 있으며, 온라인 게임에서 사용 시 이용 약관에 위배될 수 있다는 점에 유의해야 한다.
더 읽어볼만한 페이지
- 자동화 소프트웨어 - 매크로 바이러스
매크로 바이러스는 응용 프로그램의 매크로 기능을 악용하여 자동 실행 및 복제를 통해 시스템을 감염시키는 악성 코드로, 출처 불분명한 파일에 대한 주의 및 백신 소프트웨어 활용을 통해 예방이 필요하며, 최신 Microsoft Office에서는 관련 보호 기능을 제공한다. - 자동화 소프트웨어 - Expect
Expect는 텔넷, FTP, SSH와 같은 대화형 응용 프로그램 제어 자동화 도구로, 의사 터미널이나 콘솔 에뮬레이션을 통해 대상 프로그램을 제어하며 autoexpect 도구로 스크립트 작성을 자동화할 수 있고, 비밀번호 처리 시 보안에 유의해야 한다. - 자유 시스템 소프트웨어 - 리눅스 커널
리눅스 커널은 1991년 리누스 토르발스가 개발을 시작한 UNIX에서 영감을 받은 운영 체제 커널로, GPLv2 라이선스를 채택하여 자유로운 사용과 배포를 허용하며 다양한 하드웨어 아키텍처를 지원하고 모듈형 구조를 통해 장치 드라이버 추가가 가능하다. - 자유 시스템 소프트웨어 - ZeroMQ
ZeroMQ는 다양한 메시징 패턴을 지원하고 높은 성능을 제공하는 메시지 라이브러리이다. - 스크립트 언어 - Tcl
Tcl은 존 오스터하우트가 개발한 명령어 기반의 프로그래밍 언어로, Tk 툴킷과 결합하여 GUI 스크립팅 환경으로 발전했으며, 다양한 운영체제에서 사용 가능하고 C, C++, Java 등 다른 언어와의 인터페이스를 지원한다. - 스크립트 언어 - PHP
PHP는 라스무스 러도프가 개발한 범용 스크립팅 언어로, 웹 개발에 널리 사용되며 LAMP 아키텍처의 핵심 요소이다.
오토핫키 - [IT 관련 정보]에 관한 문서 | |
---|---|
기본 정보 | |
개발자 | 크리스 말렛, 스티브 그레이 |
최초 릴리스 | 2003년 11월 10일 (크리스 말렛) |
최신 릴리스 버전 | 2.0.4 |
최신 릴리스 날짜 | 2024년 1월 19일 |
운영 체제 | 마이크로소프트 윈도우 |
장르 | 스크립트 언어 자동화 GUI 유틸리티 |
라이선스 | GPLv2 |
웹사이트 | AutoHotkey 공식 웹사이트 |
일반 정보 | |
종류 | 스크립트 언어 자동화 GUI 유틸리티 소프트웨어 |
2. 특징 및 기능
오토핫키는 스크립트를 통해 다양한 작업을 자동화할 수 있는 도구이다. 프로그램 실행, 문서 열기, 키보드 및 마우스 입력 제어, 변수 조작, 반복문 실행, 창, 파일 및 디렉터리 조작 등이 가능하다.[61] 이러한 기능들은 단축키(핫키)로 실행할 수 있으며, 특정 키를 활성화하거나 비활성화하고 재할당할 수도 있다. 또한, '핫스트링' 기능을 통해 축약어를 풀어쓰는 것도 가능하다.[62]
오토핫키 스크립트는 오토핫키가 없는 컴퓨터에서도 실행 가능한 파일로 컴파일할 수 있다. 소스 코드는 C++로 작성되었으며 비주얼 스튜디오로 컴파일할 수 있고, C와 같이 포인터를 통한 메모리 접근도 가능하다.[64]
기본적인 제어 기능은 다음과 같다:
이러한 기능들을 조합하여 다음과 같은 작업들을 수행할 수 있다.
- 자주 사용하는 파일 이름 등의 문자열을 단축키로 입력
- 각종 신청 양식에 이름이나 주소 등을 자동으로 기입
- 키보드나 조이스틱으로 마우스 커서 조작
- 간단한 키 입력으로 프로그램, 문서, 웹사이트 열기
- 전자 메일 본문이나 인터넷 커뮤니티 게시물에 서명 삽입
- GUI를 직접 제작하여 오리지널 윈도우 만들기
오토핫키는 GPL 라이선스로 배포되는 오픈 소스 프리웨어이다.
2. 1. 핵심 기능
오토핫키의 핵심 기능은 다음과 같다:- 핫키(단축키): 사용자가 지정한 키 조합(예: Ctrl+Alt+I를 누르면 인터넷 브라우저 열기)을 누르면 특정 동작을 실행하도록 설정할 수 있다.[6]
- 핫스트링(자동 치환): 특정 문자열을 입력하면 자동으로 다른 문자열로 바꿔준다. (예: "btw"를 입력하면 "by the way"로 자동 변환)[8]
- 키보드/마우스 제어: 키보드 키를 재할당하거나 비활성화하고(예: Ctrl+M을 누르면 엠 대시 생성[7]), 조이스틱 등으로 마우스 커서 움직임을 제어할 수 있다.
- 자동 실행: 컴퓨터 시작 시 스크립트를 자동 실행하여 파일 관리 등 반복적인 작업을 자동화할 수 있다.[9]
- GUI 프로그래밍: 사용자 지정 데이터 입력 양식(GUI 창)을 만들거나, 윈도우 API를 사용하여 더 복잡한 작업(예: 시스템 레지스트리 사용, DLL 함수 호출)을 수행할 수 있다.
이 외에도 오토핫키는 다음과 같은 기능을 제공한다.
- 변수 할당, 검색 및 조작, 루프 실행, 창, 파일, 폴더 조작[6]
- 프로그램 실행, 문서 열기, 키 입력, 마우스 클릭 및 움직임 에뮬레이션[6]
- C와 같이 포인터를 통한 메모리 접근[10]
- 온라인 게임에서 반복적인 조작 자동화 (주의: 온라인 게임 이용 약관 위반 가능성 있음)
오토핫키 스크립트는 오토핫키가 없는 컴퓨터에서도 실행할 수 있는 실행 파일로 컴파일할 수 있으며, C++ 소스 코드는 Visual Studio Express로 컴파일할 수 있다.
2. 2. 활용 사례
- 키보드 레이아웃 변경: 쿼티에서 드보락 등 다른 자판으로 키 배열을 다시 할당할 수 있다.[43]
- 단축키 활용: 자주 사용하는 파일 이름, 문구, 이메일 서명 등을 단축키로 입력할 수 있다.[8]
- 온라인 게임 자동화: 온라인 게임에서 반복적인 조작을 자동화할 수 있다. (단, 이용 약관 위반 여부는 확인해야 한다.)
- 윈도우 컨트롤 키 활용: Windows 컨트롤 키를 사용한 기본 명령을 Emacs 방식으로 덮어쓸 수 있다.[43]
- 비활성 윈도우 조작: 비활성 윈도우를 단축키로 조작할 수 있다.
- 시스템 관리 자동화: 시스템을 감시하고 불필요한 프로그램을 자동으로 종료하거나, 알림, 시스템 검사, 백업 자동 실행을 예약할 수 있다.[9]
- 폼 자동 작성: 폼 자동 작성을 할 수 있다.
2. 3. 추가 기능 (사용자 제공)
플러그인 종류 | 설명 |
---|---|
관점 지향 프로그래밍 | 함수 훅[33] |
COM 래퍼[34] | 콘솔 상호 작용[35] |
동적 코드 생성 | [36] |
HID | 인터넷 익스플로러 자동화[38] |
GUI 생성 | [39] |
합성 프로그래밍 | 웹 서비스[40] |
윈도우 이벤트 훅 | [41] |
autohotkey
오토핫키는 2003년 11월 10일 크리스 말렛(Chris Mallett)에 의해 처음 개발되었다.[1] 그는 핫키 지원을 AutoIt v2에 통합하려 했으나 AutoIt 커뮤니티의 반응을 얻지 못하자,[11][12] AutoIt v2를 기반으로 새로운 프로그램을 만들었다.[13] 이후 AutoIt v3는 GPL에서 폐쇄형 소스로 전환되었다.[14]
3. 스크립트 예제
#g::Run "https://www.google.com/search?q=" . A_Clipboard
```
Win+g영어를 누르면 클립보드의 텍스트를 구글에서 검색한다.
```autohotkey
::afaik::as far as I know
```
''afaik''를 입력하면 "as far as I know"로 자동 변환한다.
'''v2'''
```autohotkey
LCtrl::Alt
LAlt::Ctrl
```
키보드의 Alt영어 키와 Ctrl영어 키의 기능을 서로 바꾼다.
```autohotkey
!x:: { ; Alt+x
URLReplace()
Send "^v" ; Ctrl+v
}
URLReplace() {
A_Clipboard := StrReplace(A_Clipboard, "(", "%28")
A_Clipboard := StrReplace(A_Clipboard, ")", "%29")
}
```
Alt+x영어를 누르면 클립보드에 복사된 URL에 괄호가 있을 경우 대체 문자로 바꾼 후 붙여넣는다.
4. 역사
오토핫키는 고유의 프로그래밍 언어(매크로 언어)를 사용하여 컴퓨터를 제어할 수 있다. "오토핫키"라는 이름에서 알 수 있듯이, 처음에는 키보드의 핫키(단축키)를 사용자 정의하는 것을 목적으로 개발되었지만, 사용자의 요구를 수용하는 형태로 개발이 진행되면서 스크립트 언어로 분류될 정도로 방대한 기능이 구현되었고, 커뮤니티도 커졌다.
GPL로 라이선스된 오픈 소스 프리웨어이다. 오토핫키 자체의 소스 코드는 C++로 작성되었으며, Microsoft Visual Studio Express로 컴파일할 수 있다.
4. 1. 버전 역사
오토핫키는 2003년 11월 10일에 처음 개발되기 시작했다.[65]
2010년에는 AutoHotkey v1.1 (원래 AutoHotkey_L이라고 불림)이 AutoHotkey의 지속적인 개발 플랫폼이 되었으며,[15] 2012년 말에는 공식 브랜치가 되었다.[16]
4. 2. 기타 사건
2019년 4월경, 오토핫키를 포함한 멀웨어가 발견되었다.[57] 이 바이러스는 정품 오토핫키 스크립트 엔진을 포함하고 있어, 감염되면 공격자가 작성한 오토핫키 스크립트를 다운로드하고 실행하여 원격 조작될 수 있다.5. 컴파일
오토핫키 스크립트는 C++ 소스 코드로 구성되어 있으며, 비주얼 스튜디오로 컴파일할 수 있다.[10] 스크립트를 실행 파일(.exe)로 컴파일하면 오토핫키가 설치되지 않은 컴퓨터에서도 실행할 수 있다.[10]
6. 커뮤니티
오토핫키는 활발한 사용자 커뮤니티를 가지고 있으며, 온라인 포럼, IRC 채널 등을 통해 정보를 공유하고 지원을 받을 수 있다.
2012년 1월 현재, 오토핫키 온라인 커뮤니티에는 약 27,300명의 사용자가 등록되어 있으며, 약 482,000건의 게시글이 게시되어 있다.[44] 프리노드 IRC에 설치된 오토핫키용 온라인 채팅방에는 2009년 11월 현재 평균 40명의 사용자가 접속하고 있다.[45]
7. 한계 및 주의사항
오토핫키는 인터프리터 언어이기 때문에 배포용 독립 실행형 소프트웨어를 만들 때 오토핫키 스크립트를 이해하고 실행하는 오토핫키 자체의 부분을 포함해야 한다. 이 때문에 일부 악성코드가 오토핫키를 사용하여 작성되기도 한다.[42] 안티바이러스 소프트웨어는 오토핫키로 프로그래밍된 악성코드를 식별할 때, 실제 악성코드 대신 오토핫키를 잘못된 원인으로 식별하기도 한다.
2019년 4월경에는 오토핫키를 포함한 멀웨어가 발견되었다.[57] 이 바이러스는 정품 오토핫키 스크립트 엔진을 포함하고 있어, 감염되면 공격자가 작성한 오토핫키 스크립트를 다운로드하고 실행하여 원격 조작될 수 있다.
참조
[1]
웹사이트
AutoHotkey Changelog for Years 2003-2004
http://www.autohotke[...]
Autohotkey.com
2011-12-02
[2]
웹사이트
Changes & New Features | AutoHotkey
https://www.autohotk[...]
[3]
웹사이트
Lexikos/AutoHotkey_L
https://github.com/L[...]
[4]
웹사이트
Ericasadun 2005 Life Hacker
http://lifehacker.co[...]
Lifehacker.com
2011-12-02
[5]
웹사이트
Quick Reference | AutoHotkey
https://www.autohotk[...]
[6]
웹사이트
AutoHotkey Tutorial: Macro and Hotkey Creation
http://www.autohotke[...]
Autohotkey.com
2011-12-02
[7]
웹사이트
Remapping Keys and Buttons
http://www.autohotke[...]
Autohotkey.com
2011-12-02
[8]
웹사이트
Hotstrings and Auto-replace (similar to AutoText and AutoCorrect)
http://www.autohotke[...]
Autohotkey.com
2011-12-02
[9]
웹사이트
Hotkeys, Hotstrings, and Remapping
https://autohotkey.c[...]
Autohotkey.com
2018-05-23
[10]
웹사이트
AutoHotkey Changes and New Features, v1.0.47 - June 19, 2007
http://www.autohotke[...]
Autohotkey.com
2011-12-02
[11]
웹사이트
Author Chris Mallett's post on the AutoHotkey Forums
http://www.autohotke[...]
Autohotkey.com
2011-12-02
[12]
웹사이트
An AutoIt / AutoHotkey nonfunctional comparison
http://paperlined.or[...]
Paperlined.org
2011-12-02
[13]
웹사이트
Author Chris Mallett's post on the AutoHotkey Forums
http://www.autohotke[...]
Autohotkey.com
2011-12-02
[14]
웹사이트
Licensing Opinions - AutoIt Forums
http://www.autoitscr[...]
Autoitscript.com
2011-12-02
[15]
웹사이트
Forum post by Chris, announcing AutoHotkey_L now main platform
http://www.autohotke[...]
Autohotkey.com
2011-12-02
[16]
웹사이트
Our History
http://autohotkey.co[...]
The AutoHotkey Foundation
2016-07-23
[17]
웹사이트
AutoHotekey.dll Module
https://hotkeyit.git[...]
2017-05-13
[18]
웹사이트
Hotkeyit's AutoHotkey_H fork
https://github.com/H[...]
[19]
웹사이트
Thqby's AutoHotkey_H fork
https://github.com/t[...]
[20]
웹사이트
AutoHotkey_H subforum
https://www.autohotk[...]
[21]
웹사이트
AutoHotkey v2
https://www.autohotk[...]
AutoHotkey.com
2021-07-28
[22]
웹사이트
AutoHotkey v2.0-beta.1 - AutoHotkey Community
https://www.autohotk[...]
2022-01-11
[23]
웹사이트
AutoHotkey v2.0-rc.1
https://www.autohotk[...]
AutoHotkey.com
2022-11-20
[24]
웹사이트
AutoHotkey v2.0.0
https://www.autohotk[...]
AutoHotkey.com
2022-12-20
[25]
웹사이트
AutoHotkey v2 Official Release Announcement
https://www.autohotk[...]
[26]
웹사이트
End of Life: v1.1
https://www.autohotk[...]
[27]
웹사이트
".NET Framework Interop - Scripts and Functions"
http://autohotkey.co[...]
[28]
웹사이트
AHK + LUA Interop (stdlib), proof of concept - Scripts and Functions
http://autohotkey.co[...]
[29]
웹사이트
ahklisp: lisp on win32 with cffi, sbcl, and autohotkey - Scripts and Functions
http://autohotkey.co[...]
[30]
웹사이트
ahkecl : Embedded common lisp in ahk - Scripts and Functions
http://autohotkey.co[...]
[31]
웹사이트
Machine code functions: Bit Wizardry - Scripts and Functions
http://autohotkey.co[...]
[32]
웹사이트
Embedded Windows Scripting (VBScript & JScript) and COM - Scripts and Functions
http://autohotkey.co[...]
[33]
웹사이트
function hooks - Suggestions
http://autohotkey.co[...]
[34]
웹사이트
COM Standard Library - Scripts and Functions
http://autohotkey.co[...]
[35]
웹사이트
LibCon - AutoHotkey Library For Console Support - Scripts and Functions
http://autohotkey.co[...]
[36]
웹사이트
LowLevel & dynamic code - Scripts and Functions
http://autohotkey.co[...]
[37]
웹사이트
Human Interface Device(HID) Support
http://www.autohotke[...]
[38]
웹사이트
Automation IE7 Navigation and Scripting with Tabs - Scripts and Functions
http://autohotkey.co[...]
[39]
웹사이트
":: SmartGUI Creator :: - Scripts and Functions"
http://autohotkey.co[...]
[40]
웹사이트
Sparrow: AHK WebServer w/ AHK in HTML support (sources incl) - Scripts and Functions
http://autohotkey.co[...]
[41]
웹사이트
"[tool] WinEventHook Messages - Scripts and Functions"
http://autohotkey.co[...]
[42]
뉴스
Fauxpersky: CredStealer malware written in AutoHotKey masquerades as Kaspersky Antivirus, spreading through infecting USB drives
https://www.cybereas[...]
Cybereason Nocturnus
2018-03-29
[43]
웹사이트
Ericasadun 2005 Life Hacker
http://lifehacker.co[...]
Lifehacker.com
2005-08-19
[44]
웹사이트
AutoHotkey Community Forum Page
http://www.autohotke[...]
Autohotkey.com
[45]
웹사이트
Getting connected to AutoHotkey's IRC Chat
http://www.autohotke[...]
Autohotkey.com
[46]
웹사이트
AutoHotkey Changelog for Years 2003-2004
http://www.autohotke[...]
Autohotkey.com
2011-12-02
[47]
웹사이트
Author Chris Mallett's post on the AutoHotkey Forums
http://www.autohotke[...]
Autohotkey.com
2011-12-02
[48]
웹사이트
An AutoIt / AutoHotkey nonfunctional comparison
http://paperlined.or[...]
Paperlined.org
2011-12-02
[49]
웹사이트
Author Chris Mallett's post on the AutoHotkey Forums
http://www.autohotke[...]
Autohotkey.com
2011-12-02
[50]
웹사이트
Licensing Opinions - AutoIt Forums
http://www.autoitscr[...]
Autoitscript.com
2011-12-02
[51]
웹사이트
Forum post by Chris, announcing AutoHotkey_L now main platform
http://www.autohotke[...]
Autohotkey.com
2011-12-02
[52]
웹사이트
Download page showing AutoHotkey_L as ongoing platform
http://www.autohotke[...]
Autohotkey.com
2011-12-02
[53]
웹사이트
AutoHotkey v2.0-beta.1 - AutoHotkey Community
https://www.autohotk[...]
Autohotkey.com
2022-04-21
[54]
웹사이트
v2.0-rc.1 - AutoHotkey Community
https://www.autohotk[...]
Autohotkey.com
2022-11-29
[55]
웹사이트
v2.0.0 - AutoHotkey Community
https://www.autohotk[...]
Autohotkey.com
2022-12-22
[56]
웹사이트
AutoHotkey v2 Official Release Announcement - AutoHotkey Community
https://www.autohotk[...]
2024-01-28
[57]
웹사이트
正規ソフト「AutoHotkey」を悪用した攻撃を確認 {{!}} トレンドマイクロ セキュリティブログ
https://blog.trendmi[...]
2019-06-05
[58]
웹인용
AutoHotkey Downloads
http://ahkscript.org[...]
2018-01-31
[59]
웹인용
AutoHotkey v2 Downloads (sorted by date)
https://autohotkey.c[...]
[60]
문서
이맥스 형식으로 고치기: {{언어링크|en}} Ericasadun 2005 Life Hacker
http://lifehacker.co[...]
[61]
문서
"{{언어링크|en}} AutoHotkey Tutorial: Macro and Hotkey Creation"
http://www.autohotke[...]
[62]
문서
"{{언어링크|en}} Hotstrings and Auto-replace (similar to AutoText and AutoCorrect)"
http://www.autohotke[...]
[63]
문서
"{{언어링크|en}} Alkasab 2008 SIIM"
http://www.scarnet.o[...]
[64]
문서
"{{언어링크|en}} AutoHotkey Changes and New Features, v1.0.47 - June 19, 2007"
http://www.autohotke[...]
[65]
문서
"{{언어링크|en}} AutoHotkey Changelog for Years 2003-2004"
http://www.autohotke[...]
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com