Windows 10에서 Bash 셸 스크립트를 만들고 실행하는 방법

Windows 10의 Bash 셸이 출시됨에 따라 이제 Windows 10에서 Bash 셸 스크립트를 만들고 실행할 수 있습니다. Bash 명령을 Windows 배치 파일 또는 PowerShell 스크립트에 통합 할 수도 있습니다.

당신이 무엇을하고 있는지 알고 있더라도, 이것이 반드시 보이는 것처럼 간단하지는 않습니다. Windows와 UNIX는 서로 다른 줄 끝 문자를 사용하며 Windows 파일 시스템은 Bash 환경의 다른 위치에서 액세스 할 수 있습니다.

Windows 10에서 Bash 스크립트를 작성하는 방법

관련 : Windows 10에서 Linux Bash Shell을 설치하고 사용하는 방법

Windows에서 셸 스크립트를 작성할 때 Windows 및 Linux와 같은 UNIX 계열 시스템은 셸 스크립트의 텍스트 파일에서 서로 다른 "줄 끝"문자를 사용한다는 점에 유의하십시오.

즉, 메모장에서 단순히 쉘 스크립트를 작성할 수 없음을 의미합니다. 메모장에 파일을 저장하면 Bash에서 제대로 해석되지 않습니다. 그러나 더 고급 텍스트 편집기를 사용할 수 있습니다. 예를 들어 Notepad ++에서는 편집> EOL 변환> UNIX / OSX 형식을 클릭하여 파일에 UNIX 줄 끝 문자를 제공 할 수 있습니다.

그러나 Bash 환경 자체에서 쉘 스크립트를 작성하는 것이 좋습니다. Ubuntu 기반 Bash 환경은 vi 및 nano 텍스트 편집기와 함께 제공됩니다. vi 편집기가 더 강력하지만 이전에 사용한 적이 없다면 nano로 시작하는 것이 좋습니다. 처음 사용하는 경우 사용하기가 더 쉽습니다.

예를 들어 nano에서 bash 스크립트를 만들려면 bash에서 다음 명령을 실행합니다.

나노 ~ / myscript.sh

그러면 사용자 계정의 홈 디렉토리에있는 "myscript.sh"라는 파일을 가리키는 Nano 텍스트 편집기가 열립니다. ( "~"문자는 홈 디렉토리를 나타내므로 전체 경로는 /home/username/myscript.sh입니다.)

다음 행으로 쉘 스크립트를 시작하십시오.

#! / bin / bash

관련 : 쉘 스크립팅에 대한 초보자 가이드 : 기본 사항

실행하려는 명령을 각각 한 줄에 입력합니다. 스크립트는 각 명령을 차례로 실행합니다. 줄 앞에 "#"문자를 추가하여 "주석"으로 처리합니다. 이는 사용자와 다른 사람들이 스크립트를 이해하는 데 도움이되지만 명령으로 실행되지는 않습니다. 고급 트릭에 대해서는 Linux의 Bash 스크립트에 대한 자세한 가이드를 참조하십시오. Windows의 Ubuntu에있는 Bash에서도 동일한 기술이 작동합니다.

Bash 환경 내에서 Windows 프로그램을 실행할 수있는 방법은 없습니다. 일반적인 Linux 시스템에서와 마찬가지로 Linux 터미널 명령 및 유틸리티로 제한됩니다.

예를 들어 여기에서는 기본 "hello world"스크립트를 예로 사용하겠습니다.

#! / bin / bash # STRING 변수 설정 STRING = "Hello World!" # 화면에 변수 내용을 출력합니다. echo $ STRING

Nano 텍스트 편집기를 사용하는 경우 Ctrl + O를 누른 다음 Enter 키를 눌러 파일을 저장할 수 있습니다. Ctrl + X를 눌러 편집기를 닫습니다.

스크립트를 실행 가능하게 만든 다음 실행

스크립트를 더 쉽게 실행할 수 있도록 스크립트를 실행 가능하게 만들고 싶을 것입니다. Linux에서는 스크립트 파일에 실행 권한을 부여해야합니다. 이렇게하려면 터미널에서 다음 명령을 실행하여 스크립트를 가리 킵니다.

chmod + x ~ / myscript.sh

스크립트를 실행하려면 이제 경로를 입력하여 터미널에서 실행할 수 있습니다. 나중에 스크립트를 시작하려면 Bash 셸을 열고 스크립트 경로를 입력하면됩니다.

~ / myscript.sh

(스크립트가 현재 디렉토리에있는 경우 ./myscript.sh로 실행할 수 있습니다.)

Bash 스크립트에서 Windows 파일로 작업하는 방법

관련 : Windows에서 Ubuntu Bash 파일에 액세스하는 방법 (및 Bash의 Windows 시스템 드라이브)

스크립트에서 Windows 파일에 액세스하려면 Windows 경로가 아닌 / mnt / c 아래에 해당 경로를 지정해야합니다. 예를 들어 C : \ Users \ Bob \ Downloads \ test.txt 파일을 지정하려면 /mnt/c/Users/Bob/Downloads/test.txt 경로를 지정해야합니다. 자세한 내용은 Windows 10 Bash 셸의 파일 위치에 대한 가이드를 참조하세요.

Bash 명령을 배치 또는 PowerShell 스크립트에 통합하는 방법

관련 : Windows 10에서 기본 Linux 배포를 설정하는 방법

마지막으로 명령을 통합하려는 기존 배치 파일 또는 PowerShell 스크립트가있는 경우 명령을 사용하여 직접 Bash 명령을 실행할 수 있습니다 bash -c.

예를 들어 명령 프롬프트 또는 PowerShell 창에서 Linux 명령을 실행하려면 다음 명령을 실행할 수 있습니다.

bash -c "명령"

이 트릭을 사용하면 Bash 명령을 배치 파일 또는 PowerShell 스크립트에 추가 할 수 있습니다. Bash 명령이 실행 중일 때 Bash 셸 창이 나타납니다.

업데이트 : 여러 Linux 환경이 설치된 경우 wslconfig 명령을 사용하여 명령을 실행할 때 사용되는 기본 Linux 환경을 선택할 수 있습니다 bash -c.

Windows 내에서 Bash 스크립트에 대한 바로 가기를 만들려면 평소와 같이 바로 가기를 만드십시오. 바로 가기 대상의 경우 bash -c위에서 설명한 명령을 사용하고 생성 한 Bash 스크립트를 가리 킵니다.

예를 들어 bash -c "~/myscript.sh"위의 예제 스크립트를 실행하려면 ” ” 바로 가기를 가리 킵니다 . 명령 프롬프트 또는 PowerShell 창에서도이 명령을 실행할 수 있습니다.