powershell - 마이크로소프트가 개발한 확장 가능한 명령 줄 인터페이스 셸 및 스크립트 언어를 특징으로 하는 명령어 인터프리터이다.( google)
여러분들 중 powershell에 대해 들어 본 사람이 있는가? 나는 선임분 중 한 분이 powershell관련 책을 읽고 있는 걸 본 게 첫 powershell과의 만남이었다.
그분은 powershell을 통해 업무 자동화를 시키는 프로그램을 구현했으며 꽤나 괜찮다고 생각했다. 그러다 한 프로그램의 data값이 예전 걸로 설정돼있어서 최신 걸로 수정해야 되는 상황이 생겼다. 그래서 이걸 어떻게 할까 생각하는데 또 다른 선임분이 인터넷 검색을 통해 고치시다가 내가 옆에서 흥미롭게 보니 선뜻 한번 해보라고 기회를 주셨다. 그렇게 인터넷 검색을 통해 처음으로 구현해낸 powershell 은 디스크 용량확인이었다. 코드는 다음과 같다
$Disks = Get-WmiObject -class Win32_LogicalDisk
Foreach($Disk in $Disks)
{
"$" + $Disl.DeviceID
$Size = [Math]::Round($Disk.Size/1024/1024/1024/1024,2)
$avail = [Math]::Round($Disk.Freespace/1024/1024/1024/1024,2)
$used = ($size-$avail)
"Size:"+ ($size)+"TB"
"Used:"+ ($used)+"TB"
"Avail:" + ($avail)+"TB"
"Percent:"+ [Math]::Round($used/$size, 2) * 100+"%"
}
pause
그 프로그램이 잘 작동하는걸 보고 사람들이 이용할만한 프로그램을 또 만들고 싶다는 생각이 들었다. 그래서 업무 중 불편한 게 뭐가 있을까 생각을 하다, 업무 특성상 여러 가지 홈페이지와 파일들을 켜놔야 한다. 이로 인해 컴퓨터 재부팅 시 홈페이지와 파일들을 켜기 위해서 시간이 꽤나 소모되고 귀찮은 편인데 이를 그냥 프로그램 동작 하나로 한 번에 전부 켜지게 할 수는 없을까? 생각이 되어서 searching을 했다. 그래서 찾은 함수는 start와 Invoke-item이다.
*Start
start는 start뒤에 접속하고싶은 url을 넣게 되면 프로그램을 실행시켰을 때 접속이 된다. 예를 들어 start "www.naver.com"이렇게 작성하게 되면 www.naver.com 창이 자동으로 켜지게 된다.
*Invoke-Item
Invoke-item은 Invoke-item뒤에 접속하고싶은 폴더나 파일의 위치를 넣게 되면 켜지게 된다. 예를 들어 C드라이브에 있는 download폴더를 켜고 싶다면 Invoke-Item "C:\download"이렇게 작성하게되면 c드라이브 내 download폴더가 열리게 된다.
좀 더 응용해서 C드라이브-download-namelist.hwp 즉 c드라이브 내 download폴더 안에 있는 namelist라는 한글파일을 열게 할 수도 있다. 코드는 다음과 같다. Invoke-Item "C:\download\namelist.hwp"
이런식으로 하면 컴퓨터 시작하고 여러 가지를 켜야 하는 수고로움을 한방에 해결 가능하게 되었다.
여기서 기능을 좀 더 추가해볼까? 해서 추가한것은 바로 text를 저장하는 함수이다. 이를 이용해서 파일을 열 때 쳐야 하는 비밀번호를 프로그램 실행시키면 text복사가 되어서 바로 ctrl+v 하면 비밀번호가 입력이 되게 만들었다. 코드는 다음과 같다.(추가 예정)
이렇게 만든 프로그램이름은 Rebooting_v0.1이다! 내가 기획하고 구현해낸 거라 뭔가 기분이 좋다. 앞으로 발전시켜서 유용하게 쓸 수 있게 만드는 게 목표이고, 또 다른 유용한 프로그램을 만들도록 노력할 것이다.
끗
'꿀팁' 카테고리의 다른 글
20201224#(15) visual studio code extension 추천(web) (2) | 2020.12.24 |
---|---|
20201216#(14) web으로 vscode 실행하기(3) (13) | 2020.12.14 |
20201214#(13) web으로 vscode 실행하기(2) (0) | 2020.12.14 |
20201213#(12) web으로 vscode 실행하기(1) (0) | 2020.12.13 |
20201020#(3) 어떤 언어를 선택해야할까 고민될때는? (0) | 2020.10.20 |