programming ⌨ 10

나를 위한 PowerShell(7) : WMI 클래스 활용

오브젝트에 관한 내용을 모른다면 이해하기 어렵다. 이전 포스트를 보고 오는 것을 추천한다. 2024.03.01 - [programming ⌨/파워쉘 PowerShell] - 나를 위한 PowerShell(6) : Object 다루기 나를 위한 PowerShell(6) : Object 다루기 PowerShell은 객체 지향형 모델이다. 객체 지향형 모델은 여러 독립적인 부품들의 조합, 즉 객체들의 유기적인 결합으로 이루어진 모델이다. 사용자의 측면에서 아래 "Windows PowerShell in Action"의 저자 kortsec1n4mationm.tistory.com 이번 포스팅에서는 WMI(Windows Management Instrumentation)에 대해 알아볼것이다 WMI는 Windows 기반..

나를 위한 PowerShell(6) : Object 다루기

PowerShell은 객체 지향형 모델이다. 객체 지향형 모델은 여러 독립적인 부품들의 조합, 즉 객체들의 유기적인 결합으로 이루어진 모델이다. 사용자의 측면에서 아래 "Windows PowerShell in Action"의 저자 Bruce Payette의 말로 정리될 수 있겠다. 우리는 이미 누군가 정의해놓은 오브젝트들을 사용하고있다 다른 Unix-style shell은 보통 문자 입출력에 기반을 둔 text-based인 반면, PowerShell은 오브젝트를 다룬다. 그리하여 우리가 PowerShell을 통해 스크립트나 함수를 생성할 때면 항상 객체를 주고받는다 이는 다른 도구들과는 다른 PowerShell의 차별점이다. 아무리 도움말 시스템이 강력하더라도 objects에 대한 이해 없이 PowerS..

나를 위한 PowerShell(5) : Pipeline과 출력 형식

Pipeline 두 가지 이상의 구문을 연결하기 위한 방법이 뭐가 있을까? Unix 기반 운영체제 특히 리눅스를 자주 사용해 봤다면 한 번쯤 경험해 봤을 것이다. 바로 Pipeline이다. Pipe는 한쪽(왼쪽)의 출력을 다른 한쪽(오른쪽)의 입력으로 전달하는 기능을 담당한다. PowerShell에서 보통 Get과 Set동사를 조합하여 사용하는데, 그 예제를 따라해보자 예제 Get-Process | Stop-Process 실행 중이던 메모장과 그림판을 모두 종료하려 한다. Get-Process를 통해 프로세스 상태를 확인해 보니 각각 2개씩 켜져 있는 것을 확인했다. Get-Process notepad, mspaint Img2 출력 속 프로세스를 모두 종료시키려면 어떻게 해야 할까? 바로 pipe를 통해..

나를 위한 PowerShell(4) : 개인 설정과 ISE

쉬어가는 느낌으로 PowerShell 개인 설정에 관해 다뤄볼 예정이다. 우리가 PowerShell을 실행하면 가장 먼저 만나는 화면은 Img1과 같을 것이다 지금 내가 사용하는 환경이 보통의 경우와 조금 달라 정확하게 같진 않겠지만 크게 차이는 없다 여기서 개인 설정이라 함은 창 제목이라던지 실행 시 처음으로 출력되는 text와 같은 환경 값을 다룬다 이때 필요한 것이 PowerShell Profile이다. PowerShell Profiles Profile은 PowerShell이 시작될 때 실행되는 스크립트로, Users Documents 폴더의 PS1파일과 함께 실행된다 PS1파일에 관한 내용은 이전 포스팅을 참고하시길 2024.02.26 - [programming ⌨/파워쉘 PowerShell] -..

나를 위한 PowerShell(3) : Execution Policy와 우회

우선 아무 PowerShell 명령이 들어있는 ps1파일을 생성해 보자 New-Item -ItemType File -Path C:\Temp -Name pscript.ps1 ps1파일은 cmd의 batch파일과 같이 PowerShell 명령이 작성된 스크립트 파일이다. 생성되었다면 내용을 입력할 차례다 Add-Content -Path C:\Temp\pscript.ps1 -Value 'Get-Date' 생성한 pscript.ps1 스크립트를 실행해 보자 이 시스템에서 스크립트를 실행할 수 없다는 오류가 뜬다. 오늘 다뤄볼 주제는 바로 이 부분이다. Execution Policy 우선 Execution Policy에 대해 알아야 한다. PowerShell Execution Policy는 PowerShell이 ..

나를 위한 PowerShell(2) : 매개변수의 종류

본 내용은 이전 포스트와 연결됨 2024.02.25 - [programming ⌨/파워쉘 PowerShell] - 나를 위한 PowerShell(1) : 콘솔과 명령 나를 위한 PowerShell(1) : 콘솔과 명령 주변을 보면 윈도 운영체제를 사용하는 사람이 굉장히 많은 것을 알 수 있다. 이러한 환경에서 PowerShell은 자동화 스크립트와 같이 우리 업무의 효율을 높여줄 수 있고, 운영체제의 기능들과 상 kortsec1n4mationm.tistory.com 앞서 같이 해볼 문제가 하나 있다. 메모장 실행 후, PowerShell을 사용하여 이를 종료시켜라 가장 먼저 프로세스와 관련 있는 명령들을 찾아보자 Get-Command -Noun Process Debug, Get, Start, Stop, ..

나를 위한 PowerShell(1) : 콘솔과 명령

주변을 보면 윈도 운영체제를 사용하는 사람이 굉장히 많은 것을 알 수 있다. 이러한 환경에서 PowerShell은 자동화 스크립트와 같이 우리 업무의 효율을 높여줄 수 있고, 운영체제의 기능들과 상호작용이 필요한 경우 매우 편리하게 작용한다. 놀랍게도 나는 사지방에 cmd가 막혀있어 반강제로 접했다🤣 파워쉘을 이용한 악성코드 사례가 상당히 많은 만큼 알아두면 좋을 것 같고 때마침 정리가 잘 된 글을 발견하여 같이 따라가 보려 한다. 앞으로의 과정은 해당 글을 참고하여 진행할 예정이다 Windows Server의 경우 작업 표시줄에 고정되어 있는 것이 일반적이지만, 다른 버전(Client)이나 없다면 위 사진과 같은 방법으로 찾을 수 있다. 명령어의 법칙 : Verb-Noun 명령어는 보통 (동사-명사)의..

VBA 기초 문법 및 활용(1)

굉장히 낯설다.. 설렌다.. 함수 하나하나 설명하면 쓸데없이 길어질거 같아서 자세한 옵션은 직접 찾아보도록 하자. 1. Msg Box 띄우기 output을 확인하기 위해 방법을 찾아보니, 메시지 박스를 띄울 수 있다. MsgBox(prompt[,buttons][,title][,helpfile,context]) MsgBox("hello world!")를 실행해 보면 뚠! 하고 위와 같이 MsgBox가 나온다. 2. 변수 설정하기 Dim As 참고로 한셀에서는 type을 지정해 주지 않아도 된다. 자동으로 형을 정해준다. Dim var1, var2 var1 = "hello" var2 = 7 'var1는 문자형 변수 'var2는 정수형 변수 const를 이용하여 고정변수를 선언할 수도 있다. Const As ..

쉘스크립트??

군대에서 심심할때 한셀 메크로를 가지고 놀았는데 이때 우연히 알게된게 쉘스크립트다. 심장이 두근대고 가슴이 벌렁거렸다. 스크립트는 VBA(Visual Basic for Applications)언어로, Visual Basic과 문법이 거의 동일하다. 주 용도는 매크로를 돌리고 사용자 정의 함수를 만드는 것이지만, 한국에서는 이를이용하여 엑셀로 DB(DataBase)를 관리하는 기업들이 가끔 있다. 또한, 흔히 매크로 바이러스라고 불리는 악성코드들은 대게 VBA로 만들어졌다. 윈도의 다양한 라이브러리를 참조하면서 보안성이 떨어지는데, Microsoft는 VBA가 자동으로 돌아가는 것을 막기위해 여러 대책을 세웠다. 앞으로 간단한 프로젝트와 함께 알아가볼까 한다.

Python : import system

최근, Python을 이용해 간단한 웹 서버를 구축하고 이를 시험하면서 구조적인 이해의 필요성을 느꼈습니다. 개인적으로 호기심이 생긴 기본적인 개념부터 차근차근 뜯어보려 합니다. Python 코드는 import를 통해 여러 모듈과 연결을 할 수 있습니다. 이번 포스팅 에선 import system의 작동 방식을 세세하게 알아볼 예정입니다. 1. 기본적인 import >>> import math >>> math.pi 3.141592653589793 import 구문은 호출 시 기본적으로 다음 두 가지의 과정을 거칩니다. 해당하는 모듈을 찾고, 필요하다면 불러옵니다. local namespace에 1번의 결과에 해당하는 이름들을 모읍니다. If the module name is followed by as, ..