연습 - “Hello World!”

완료됨

코딩을 배우는 가장 좋은 방법 중 하나는 소규모 프로그램을 많이 작성해 보는 것입니다. 더 작은 프로그램을 작성해 보면 더 큰 프로그램을 작성할 때 적용되는 프로그래밍의 기본 사항과 중요한 기술을 익힐 수 있습니다.

첫 번째 코드 줄 작성

이 연습에서는 명령줄 또는 콘솔 창에 “Hello World!”라는 문구를 출력해 봅니다. 이는 소프트웨어 개발자 사이의 오랜 전통입니다. 이 기본 연습에서도 많은 것을 배울 수 있습니다.

1단계: Cloud Shell에 코드 입력

Azure Cloud Shell은 자습서 접근 방식을 지원하기 위한 브라우저 내 환경을 제공합니다. Cloud Shell은 웹 페이지의 오른쪽에 있습니다. 샌드박스 환경에서 일반적인 PowerShell 터미널 창처럼 작동합니다. 창에 직접 명령을 입력하거나 이미 작성한 스크립트를 실행하여 Cloud Shell에서 결과를 얻을 수도 있습니다.

이 모듈에서는 Cloud Shell에서 코드 편집기의 버전을 사용하여 스크립트를 작성하고 실행합니다.

  1. Cloud Shell 터미널에서 다음 코드를 입력합니다.

    New-Item HelloWorld.ps1
    code HelloWorld.ps1
    

    New-Item 명령은 현재 디렉터리에 새 .ps1 파일을 만듭니다. .ps1 파일 이름 확장명은 PowerShell 스크립트의 확장명입니다.

    code 명령 뒤에 작업하려는 스크립트의 파일 이름을 입력하면 Cloud Shell 코드 편집기에서 해당 파일이 열립니다. 스크립트를 작성 및 편집한 다음 저장하여 Cloud Shell에서 실행할 수 있도록 하는 또 하나의 창이 열립니다. 다른 위치에 저장된 파일을 열려면 파일 이름만 사용하는 대신 전체 경로를 정의할 수 있습니다.

  2. 코드 편집기 창에 다음 코드를 입력합니다.

    Write-Output 'Hello World!'
    
  3. Windows에서 Ctrl+S 바로 가기 키(macOS에서는 +S)를 사용하여 파일을 저장합니다.

    이 코드가 작동하는 방식과 이유를 곧 설명하겠습니다. 그러나 먼저 코드를 올바르게 입력했는지 확인하기 위해 코드를 실행해야 합니다.

    참고

    직접 입력하는 대신 코드 샘플의 복사 단추를 사용하고 싶을 수 있습니다. 하지만 이 코드 줄을 직접 입력해 보는 것이 좋습니다. 코드를 직접 입력해보면 머슬 메모리가 구축되며 직접 입력하지 않는다면 얻지 못할 수 있는 인사이트를 얻을 수 있습니다.

2단계: 스크립트 실행

스크립트를 실행하려면 Cloud Shell 터미널에서 다음 명령을 입력합니다.

. ./HelloWorld.ps1

참고

명령의 시작 부분에 점(.)을 포함해야 합니다. 이는 PowerShell에 스크립트 또는 호출 대상 파일을 실행하라고 지시합니다.

3단계: 결과 관찰

Cloud Shell에 다음과 같은 출력이 표시될 것입니다.

Hello World!

오류 메시지가 표시될 경우 수행해야 하는 작업

모든 문자를 정확하게 입력해야 하는 다른 언어와 달리 PowerShell은 덜 엄격합니다. PowerShell은 대/소문자를 구분하지 않습니다. 즉 의도하지 않은 곳에 대문자나 소문자를 실수로 입력했는지 여부는 중요하지 않습니다. PowerShell은 Write-Outputwrite-output을 똑같이 해석합니다. 주목해야 할 주요 사항은 맞춤법 오류, 추가 공백 또는 공백 누락입니다.

오류가 발생하면 다음과 같이 표시될 수 있습니다.

Write-Outpu: The term 'Write-Outpu' is not recognized as a name of a cmdlet, function, script file, or executable program. 
Check the spelling of the name, or if a path was included, verify that the path is correct and try again.

이 예제에서 PowerShell은 사용자가 Write-Output이 아닌 Write-Outpu를 잘못 작성했으며 사용자가 지정한 명령을 찾을 수 없다고 알려줍니다.

이러한 오류를 읽는 것은 원인을 알아보는 데 필수적입니다. 프로그램을 실행할 때 오류가 발생하면 문제가 발생한 줄 번호, 오류에 대한 설명 및 때로는 해결 방법에 대한 제안이 종종 오류에 포함됩니다.

참고 항목

모든 오류가 이전 예제만큼 간단하게 읽고 이해할 수 있는 것은 아닙니다. 원인을 알아내기 위해 약간의 테스트와 조사가 필요할 수 있습니다.

4단계: 새 파일을 만들고 입력을 받도록 코드 작성

  1. 열려 있는 HelloWorld.ps1 파일에서 명령 앞에 숫자 기호(#)를 추가하여 편집기에서 작성한 코드를 주석으로 처리합니다. 주석 처리된 줄 아래에 다음 코드 줄을 추가합니다.

    # Write-Output 'Hello World!'
    
    $name = Read-Host -Prompt "Please enter your name"
    Write-Output "Congratulations $name! You have written your first code with PowerShell!"
    

참고

숫자 기호(#)로 텍스트 줄에 접두사를 지정하여 코드 주석을 만듭니다. 이 유용한 기술은 특정 코드를 모두 제거하지 않고도 실행되지 않도록 하는 데 도움이 됩니다. 본인이나 다른 사람이 나중에 코드를 읽을 때 참고할 만한 정보를 추가할 때도 주석을 사용할 수 있습니다. 주석은 코드의 어느 곳에나 배치할 수 있으며 동일한 줄에서 # 뒤에 오는 모든 텍스트가 주석으로 처리됩니다.

  1. 파일을 저장한 다음 이전에 사용한 명령을 사용하여 스크립트를 실행합니다.

    . ./HelloWorld.ps1
    
  2. 이름을 입력하라는 메시지가 표시되면 이름을 입력하고 입력을 선택합니다.

    사용자 이름이 포함된 메시지가 출력됩니다. 예를 들면 다음과 같습니다.

    Congratulations Chase! You have written your first code with PowerShell!
    

프로그램이 제대로 작동했나요?

이 연습에서는 Write-Output이라는 cmdlet을 호출했습니다. cmdlet은 PowerShell을 사용하는 기본적인 방법입니다. 명령 구문은 Verb-Noun 형식으로 되어 있습니다. 덕분에 코드가 무엇을 수행하려는지 쉽게 파악할 수 있습니다. cmdlet의 이름은 해당 cmdlet의 의도를 나타냅니다. 코드는 대상(명사)에 무언가(동사)를 수행합니다.

Hello World!와 축하 메시지는 둘 다 Write-Output cmdlet이 처리하여 출력해야 하는 문자열 입력입니다. 문자열은 컴퓨터가 사용하는 기본 데이터 형식입니다. PowerShell에서 문자열을 작은따옴표('') 또는 큰따옴표("")로 묶을 수 있습니다. 이 코드에서는 큰따옴표를 사용하여 PowerShell에서 변수 이름 대신 변수 값을 표시할 수 있도록 할 것입니다. 데이터 형식과 이를 정의하는 방법에 대한 자세한 내용은 이후의 모듈에서 알아봅니다.

Read-Host를 사용하여 사용자에게 입력을 요구하는 메시지를 작성할 수 있습니다. 사용자에게 표시할 메시지는 -Prompt 매개 변수를 사용하여 정의합니다. 매개 변수는 cmdlet이 사용자로부터 입력을 받을 수 있도록 합니다. 입력은 $name이라는 변수에 저장하며 그 후에 Write-Output cmdlet을 사용하여 Cloud Shell 터미널에서 사용자 지정 메시지를 표시합니다.

변수에 대한 자세한 내용은 이후의 모듈에서 알아봅니다. 여기서는 값을 저장하여 코드를 더 유연하게 만들어 주는 컨테이너라고 변수를 생각하면 됩니다. 모든 프로그램에 일일이 이름을 입력하는 대신 변수에 값을 저장해 두고 재사용하여 다양한 결과를 얻을 수 있습니다.

단어 앞에 달러 기호($)를 배치하여 변수를 정의합니다. 단어 뒤에는 등호(=)를 추가하고 이어서 변수에 저장할 값을 추가합니다. 앞의 예제에서는 “Chase”라는 이름을 저장했습니다. 변수의 이름은 원하는 대로 지정할 수 있지만, 변수에 저장할 값과 변수의 용도를 쉽게 파악할 수 있는 이름으로 지정하는 것이 좋습니다. 예를 들어 $name으로는 특정 사용자의 이름을 저장합니다.

많은 cmdlet은 앞의 예제와 매우 유사하게 작동합니다. 사용자는 cmdlet에 입력을 제공하고 cmdlet은 어떤 작업을 수행한 다음 출력을 생성합니다. 이 프로세스에서는 출력 창에 메시지를 쓰고 방정식을 계산하며 환경에서 무언가를 변경하는 등 다양한 작업이 가능합니다.

요약

여기서 잠시 첫 번째 단원에서 배운 내용을 정리해 보겠습니다.

  • cmdlet은 PowerShell을 사용하는 기본적인 방법입니다. Verb-Noun 형식으로 작성됩니다.
  • 매개 변수는 cmdlet이 출력을 제공하거나 동작을 수행할 수 있도록 입력을 받습니다.
  • PowerShell은 엄격하지 않은 언어입니다. 즉 PowerShell은 기본적으로 대/소문자를 구분하지 않습니다.
  • PowerShell 오류는 문제를 파악하는 데 도움이 되며 오류를 주의 깊게 읽으면 시간을 절약할 수 있습니다.
  • 변수는 프로그램에서 동적으로 사용할 값을 저장하는 데 사용됩니다.