스크립팅 작업
중요
권한 없는 액세스를 방지하려면 Windows에서 보호된 리소스에 액세스할 수 있는 관리자 권한이 필요합니다. 스크립팅 작업을 사용하여 보호된 리소스(예: 파일)에 액세스하려면 관리자 권한으로 Power Automate를 실행합니다. 관리자로서 Power Automate를 실행하는 경우에 대한 더 자세한 정보는 높은 권한으로 Power Automate 실행으로 이동하세요.
스크립팅 작업을 사용하면 데스크톱 흐름에서 코드 블록을 실행하고 사용자 지정 동작을 구현할 수 있습니다.
중요
2023년 10월에 발표된 바와 같이 VBScript는 Windows에서 더 이상 사용되지 않습니다. Windows의 향후 릴리스에서는 VBScript가 운영 체제에서 제거되기 전에 요청 시 기능으로 제공될 예정입니다. 자세한 정보는 사용되지 않는 기능에 대한 리소스를 참조하십시오.
모든 스크립팅 작업은 해당 프로그래밍 또는 스크립팅 언어(PowerShell, Python, VBScript, JavaScript 및 C#/VB.NET)의 기본 구조를 따릅니다.
노트
C#: v 5.0에 지원되는 버전. VB.NET의 경우: v 11.0
Copilot이 제공하는 자연어를 스크립트로 변환 기능(프리뷰)
[이 항목은 시험판 문서이며 변경될 수 있습니다.]
자연어를 코드로 변환은 데스크톱용 Power Automate에 추가된 새로운 Copilot 기능입니다. 설명을 통해 스크립팅 작업에 사용되는 코드를 빠르게 생성할 수 있습니다. 이 기능은 다음 스크립팅 작업에서 사용할 수 있습니다.
- PowerShell 실행
- VBScript 실행
- DOS 명령 실행
- Python 실행
- JavaScript 실행
중요
- 이는 프리뷰 기능입니다.
- 프리뷰 기능은 생산용으로 만들어진 것이 아니므로 기능이 제한될 수 있습니다. 이런 기능은 공식 릴리스 전에 사용할 수 있으므로 고객이 조기에 액세스하고 피드백을 제공할 수 있습니다.
지역별 가용성
현재 데스크톱용 Power Automate의 Copilot은 미국에 있는 환경에서만 사용할 수 있습니다.
계정 유형별 가용성
현재 데스크톱용 Power Automate의 Copilot은 회사 또는 학교 계정이 있는 사용자만 사용할 수 있습니다.
노트
사용자 환경이 위에 나열된 지역에 있고 여전히 데스크톱용 Power Automate 환경에서 Copilot을 확인해야 하는 경우 테넌트 관리자에게 문의하세요. Copilot 기능을 꺼 놓았을 수도 있습니다.
Copilot 및 자연어를 사용하여 스크립트를 생성하는 방법
지원되는 스크립팅 작업 중 하나에서 스크립트를 생성하려면 디자이너에서 작업을 끌어다 놓고 Copilot으로 스크립트 생성을 선택합니다.
자연어 프롬프트를 입력할 수 있는 프롬프트 생성 화면이 열립니다.
스크립트를 생성하려면 프롬프트를 작성하고 생성을 선택하세요. 다시 생성해야 하는 경우 프롬프트를 변경하고 재생성을 선택하면 됩니다. 그렇지 않으면 이 스크립트 사용을 선택하여 기본 작업 창으로 돌아가 수정하고 필요한 변수를 추가할 수 있습니다.
중요
AI 모델에서 생성된 콘텐츠를 항상 검토해야 합니다.
이 기능을 개선할 수 있도록 도움주기
AI 생성 콘텐츠 아래에 있는 좋아요 또는 싫어요 아이콘을 선택하여 피드백을 보내세요. 그렇게 하면 Microsoft에 피드백을 제출하는 데 사용할 수 있는 피드백 대화 상자가 나타납니다.
노트
대화 상자가 표시되지 않으면 테넌트 관리자가 대화 상자를 꺼 놓았을 수 있습니다. 추가 정보: 사용자 피드백 기능 비활성화
사용자 피드백 기능 비활성화
테넌트 관리자는 disableSurveyFeedback
테넌트 설정을 비활성화하여 사용자가 Microsoft에 피드백을 보내는 것을 방지할 수 있습니다. 테넌트 설정 보기 및 설정에 대한 자세한 내용을 알아보세요.
사용자 피드백에 대한 데이터 주체 권리 요청
테넌트 관리자는 Microsoft 365 관리 센터에 로그인한 다음 상태>제품 피드백을 선택하여 사용자의 피드백을 보고, 내보내고, 삭제할 수 있습니다.
Power Automate 리소스를 갖춘 AI
- 자연어로 스크립트 생성에 대한 FAQ
- Power Automate의 책임 있는 AI FAQ
- Microsoft Power Platform의 Copilot 데이터 보안 및 개인 정보 보호 관련 FAQ
스크립팅 작업에서 변수 작업
스크립팅 작업에서 변수를 선언하고 Power Automate에 결과를 반환하려면 다음 명령을 사용합니다.
PowerShell 스크립트에서 새 변수를 선언하려면 $ 표기법을 사용합니다. PowerShell 스크립트 실행 작업에서 Power Automate로 값을 반환하려면 쓰기-출력 명령을 사용합니다.
$variableName = "variableValue" Write-Output $variableName
Python 스크립트는 새 변수를 선언하는 특별한 표기법이 필요하지 않습니다. Python 스크립트 실행 작업에서 값을 반환하려면 print 함수를 사용합니다.
variableName = "variableValue" print variableName
VBScript는 새 변수를 선언하는 특별한 표기법이 필요하지 않습니다. WScript.Echo 함수를 사용하여 VBScript 실행 작업에서 Power Automate로 값을 반환합니다.
variableName = "variableValue" WScript.Echo variableName
JavaScript 스크립트에서는 var 표기법으로 새 변수를 선언하고 WScript.Echo 함수로 JavaScript 실행 작업에서 값을 반환합니다.
var variableName = "variableValue"; WScript.Echo(variableName);
.NET 스크립트의 경우 .NET 스크립트 실행 작업의 구성 카드를 통해 액세스하는 스크립트 매개 변수 창을 사용하십시오. 각 변수의 유형을 설정할 수 있습니다.
또한 .NET 스크립트에 대한 입력(방향 드롭다운의 In 옵션), 스크립트의 출력(방향 드롭다운의 Out 옵션) 또는 둘 다(방향 드롭다운의 In-Out 옵션)인지 여부를 설정할 수 있습니다.
스크립팅 작업에서 Power Automate 변수를 사용하려면 백분율 표기법(%)을 사용하고 하드코딩된 값과 동일한 방식으로 변수를 처리합니다.
DOS 명령 실행
보이지 않는 모드에서 DOS 명령 또는 콘솔 애플리케이션을 실행하고 완료 시 출력을 검색합니다.
입력 매개 변수
인수 | 선택 항목 | 수락 | 기본값 | Description |
---|---|---|---|---|
DOS command or application | 아니요 | 파일 | 해당하는 경우 인수와 DOS 명령 또는 콘솔 응용 프로그램 이름 | |
Working folder | 예 | 폴더 | 해당하는 경우 작업할 폴더의 전체 경로 | |
시간 제한 후 실패 | 네 | 부울 값 | DOS 명령 또는 애플리케이션을 무기한 실행할지 아니면 설정된 시간 후에 실패할지 지정합니다. | |
Timeout | 아니요 | 숫자 값 | 10 | 스크립트가 완료될 때까지 기다리는 최대 시간(초)(-1이면 무기한) |
Change code page | 사용 불가 | 부울 값 | False | 세션의 현재 코드 페이지를 변경할지 여부 지정 |
Encoding | 아니요 | ASMO-708: 아랍어 (ASMO 708), big5: 중국어 번체 (Big5), cp1025: IBM EBCDIC (키릴 자모 세르비아어-불가리아어), cp866: 키릴 자모 (DOS), cp875: IBM EBCDIC (현대 그리스어), csISO2022JP: 일본어 (JIS-Allow 1 바이트 가나), DOS-720: 아랍어 (DOS), DOS-862: 히브리어 (DOS), EUC-CN: 중국어 간체 (EUC), EUC-JP: 일본어 (JIS 0208-1990 및 0212-1990), euc-jp: 일본어 (EUC), euc-kr: 한국어 (EUC), GB18030: 중국어 간체 (GB18030), gb2312: 중국어 간체 (GB2312), hz-gb-2312: 중국어 간체 (HZ), IBM-Thai: IBM EBCDIC (태국어), IBM00858: OEM 다국어 라틴 문자 I, IBM00924: IBM 라틴 문자-1, IBM01047: IBM 라틴 문자-1, IBM01140: IBM EBCDIC (미국-캐나다-유럽), IBM01141: IBM EBCDIC (독일-유럽), IBM01142: IBM EBCDIC (덴마크-노르웨이-유럽), IBM01143: IBM EBCDIC (핀란드-스웨덴-유럽), IBM01144: IBM EBCDIC (이탈리아-유럽), IBM01145: IBM EBCDIC (스페인-유럽), IBM01146: IBM EBCDIC (영국-유럽), IBM01147: IBM EBCDIC (프랑스-유럽), IBM01148: IBM EBCDIC (국제-유럽), IBM01149: IBM EBCDIC (아이슬란드어-유럽), IBM037: IBM EBCDIC (미국-캐나다), IBM1026: IBM EBCDIC (터키어 라틴 문자-5), IBM273: IBM EBCDIC (독일어), IBM277: IBM EBCDIC (덴마크-노르웨이), IBM278: IBM EBCDIC (핀란드-스웨덴), IBM280: IBM EBCDIC (이탈리아), IBM284: IBM EBCDIC (스페인), IBM285: IBM EBCDIC (영국), IBM290: IBM EBCDIC (일본어 가타카나), IBM297: IBM EBCDIC (프랑스), IBM420: IBM EBCDIC (아랍어), IBM423: IBM EBCDIC (그리스어), IBM424: IBM EBCDIC (히브리어), IBM437: OEM 미국, IBM500: IBM EBCDIC (국제), ibm737: 그리스어 (DOS), ibm775: 발트어 (DOS), ibm850: 서유럽 (DOS), ibm852: 중앙 유럽 (DOS), IBM855: OEM 키릴 자모, ibm857: 터키어 (DOS), IBM860: 포르투갈어 (DOS), ibm861: 아이슬란드어 (DOS), IBM863: 캐나다 프랑스어 (DOS), IBM864: 아랍어 (864), IBM865: 북유럽어 (DOS), ibm869: 그리스어, 현대 (DOS), IBM870: IBM EBCDIC (다국어 라틴 문자-2), IBM871: IBM EBCDIC (아이슬란드어), IBM880: IBM EBCDIC (키릴 자모 러시아어), IBM905: IBM EBCDIC (터키어), iso-2022-jp: 일본어 (JIS), iso-2022-jp: 일본어 (JIS-Allow 1 바이트 가나 - SO/SI), iso-2022-kr: 한국어 (ISO), iso-8859-1: 서유럽 (ISO), iso-8859-13: 에스토니아어 (ISO), iso-8859-15: 라틴 문자 9 (ISO), iso-8859-2: 중앙 유럽 (ISO), iso-8859-3: 라틴 문자 3 (ISO), iso-8859-4: 발트어 (ISO), iso-8859-5: 키릴 자모 (ISO), iso-8859-6: 아랍어 (ISO), iso-8859-7: 그리스어 (ISO), iso-8859-8: 히브리어 (ISO-Visual), iso-8859-8-i: 히브리어 (ISO-Logical), iso-8859-9: 터키어 (ISO), Johab: 한국어(조합), koi8-r: 키릴 자모 (KOI8-R), koi8-u: 키릴 자모 (KOI8-U), ks_c_5601-1987: 한국어, macintosh: 서유럽 (Mac), shift_jis: 일본어 (Shift-JIS), us-ascii: US-ASCII, utf-16: Unicode, utf-16BE: Unicode (Big-Endian), utf-32: Unicode (UTF-32), utf-32BE: Unicode (UTF-32 Big-Endian), utf-7: Unicode (UTF-7), utf-8: Unicode (UTF-8), windows-1250: 서유럽 (Windows), windows-1251: 키릴 자모 (Windows), Windows-1252: 서유럽 (Windows), windows-1253: 그리스어 (Windows), windows-1254: 터키어 (Windows), windows-1255: 히브리어 (Windows), windows-1256: 아랍어 (Windows), windows-1257: 발트어 (Windows), windows-1258: 베트남어 (Windows), windows-874: 태국어 (Windows), x-Chinese-CNS: 중국어 번체 (CNS), x-Chinese-Eten: 중국어 번체 (Eten), x-cp20001: TCA 대만, x-cp20003: IBM5550 대만, x-cp20004: TeleText 대만, x-cp20005: Wang 대만, x-cp20261: T.61, x-cp20269: ISO-6937, x-cp20936: 중국어 간체 (GB2312-80), x-cp20949: 한국어 완성, x-cp50227: 중국어 간체 (ISO-2022), x-EBCDIC-KoreanExtended: IBM EBCDIC (한국어 확장), x-Europa: 유럽어, x-IA5: 서유럽(IA5), x-IA5-German: 독일어 (IA5), x-IA5-Norwegian: 노르웨이어 (IA5), x-IA5-Swedish: 스웨덴어 (IA5), x-iscii-as: ISCII 아삼어, x-iscii-be: ISCII 벵골어, x-iscii-de: ISCII 데바나가리 문자, x-iscii-gu: ISCII 구자라트어, x-iscii-ka: ISCII 칸나다어, x-iscii-ma: ISCII 말라얄람어, x-iscii-or: ISCII 오리야어, x-iscii-pa: ISCII 펀잡어, x-iscii-ta: ISCII 타밀어, x-iscii-te: ISCII 텔루구어, x-mac-arabic: 아랍어(Mac), x-mac-ce: 중앙 유럽 (Mac), x-mac-chinesesimp: 중국어 간체 (Mac), x-mac-chinesetrad: 중국어 번체 (Mac), x-mac-croatian: 크로아티아어 (Mac), x-mac-cyrillic: 키릴 자 (Mac), x-mac-greek: 그리스어 (Mac), x-mac-hebrew: 히브리어 (Mac), x-mac-icelandic: 아이슬란드어 (Mac), x-mac-japanese: 일본어 (Mac), x-mac-korean: 한국어 (Mac), x-mac-romanian: 루마니아어 (Mac), x-mac-thai: 태국어 (Mac), x-mac-turkish: 터키어 (Mac), x-mac-ukrainian: 우크라이나어 (Mac)` | utf-8 : Unicode (UTF-8) | 출력을 읽을 때 사용할 인코딩 |
변수 생성됨
인수 | Type | Description |
---|---|---|
CommandOutput | 텍스트 값 | DOS 명령 또는 응용 프로그램의 텍스트 출력 |
CommandErrorOutput | 텍스트 값 | DOS 명령 또는 응용 프로그램 실행 중 발생한 오류(있는 경우)를 설명하는 텍스트 |
CommandExitCode | 숫자 값 | 명령 또는 응용 프로그램 종료 코드입니다. 이 값은 숫자입니다 |
예외
예외 | Description |
---|---|
명령 또는 콘솔 응용 프로그램을 실행할 수 없음 | 지정된 명령 또는 콘솔 응용 프로그램을 실행하는 동안 문제가 발생했음을 나타냄 |
할당된 시간 내에 스크립트를 실행하지 못함 | 할당된 시간 내에 제공된 스크립트를 실행하는 데 문제가 있음을 나타냅니다. |
VBScript 실행
사용자 지정 VBScript 코드 실행 및 변수에 출력을 검색합니다.
이 작업을 사용하면 데스크탑 흐름에 자신만의 사용자 지정 VBScript 코드를 포함하는 동시에 변수를 사용하여 필요한 경우 동적 VBScript 콘텐츠를 생성할 수 있습니다.
입력 매개 변수
인수 | 선택 항목 | 수락 | 기본값 | Description |
---|---|---|---|---|
VBScript to run | 예 | 텍스트 값 | 실행할 VBScript 코드입니다. VBScript 실행 전 평가되기 때문에 스크립트 내부에 변수가 포함될 수 있음 | |
시간 제한 후 실패 | 네 | 부울 값 | 사용 불가 | VBScript 스크립트를 무기한 실행할지 아니면 설정된 시간 후에 실패할지 지정합니다. |
Timeout | 아니요 | 숫자 값 | 10 | 스크립트가 완료될 때까지 기다리는 최대 시간(초)(-1이면 무기한) |
변수 생성됨
인수 | Type | Description |
---|---|---|
VBScriptOutput | 텍스트 값 | 스크립트의 출력 |
ScriptError | 텍스트 값 | VBScript 코드 실행 중 발생할 수 있는 오류 |
예외
예외 | Description |
---|---|
할당된 시간 내에 스크립트를 실행하지 못함 | 할당된 시간 내에 제공된 스크립트를 실행하는 데 문제가 있음을 나타냅니다. |
JavaScript 실행
사용자 지정 JavaScript 코드 실행 및 변수에 출력을 검색합니다.
입력 매개 변수
인수 | 선택 항목 | 수락 | 기본값 | Description |
---|---|---|---|---|
JavaScript to run | 예 | 텍스트 값 | 실행할 JavaScript 코드입니다. JavaScript 코드 실행 전에 평가되기 때문에 스크립트 내부에 변수가 포함될 수 있음 | |
시간 제한 후 실패 | 네 | 부울 값 | JavaScript 스크립트를 무기한 실행할지 아니면 일정 시간 후에 실패할지 지정합니다. | |
Timeout | 아니요 | 숫자 값 | 10 | 스크립트가 완료될 때까지 기다리는 최대 시간(초)(-1이면 무기한) |
변수 생성됨
인수 | Type | Description |
---|---|---|
JavascriptOutput | 텍스트 값 | 스크립트의 출력 |
ScriptError | 텍스트 값 | JavaScript 코드 실행 중 발생할 수 있는 오류 |
예외
예외 | Description |
---|---|
할당된 시간 내에 스크립트를 실행하지 못함 | 할당된 시간 내에 제공된 스크립트를 실행하는 데 문제가 있음을 나타냅니다. |
PowerShell 스크립트 실행
사용자 지정 PowerShell 스크립트 실행 및 변수에 출력을 검색합니다.
이 작업을 사용하면 데스크탑 흐름에 자신만의 사용자 지정 PowerShell 코드를 포함하는 동시에 변수를 사용하여 필요한 경우 동적 PowerShell 콘텐츠를 생성할 수 있습니다.
입력 매개 변수
인수 | 선택 항목 | 수락 | 기본값 | Description |
---|---|---|---|---|
실행할 PowerShell 코드 | 예 | 텍스트 값 | 실행할 PowerShell 코드입니다. PowerShell 코드 실행 전 평가되기 때문에 스크립트 내부에 변수가 포함될 수 있음 | |
시간 제한 후 실패 | 네 | 부울 값 | PowerShell 스크립트를 무기한 실행할지 아니면 설정된 시간 후에 실패할지 지정합니다. | |
Timeout | 아니요 | 숫자 값 | 10 | 스크립트가 완료될 때까지 기다리는 최대 시간(초)(-1이면 무기한) |
변수 생성됨
인수 | Type | Description |
---|---|---|
PowershellOutput | 텍스트 값 | 스크립트의 출력 |
ScriptError | 텍스트 값 | PowerShell 코드 실행 중 발생할 수 있는 오류 |
예외
예외 | 설명 |
---|---|
PowerShell 스크립트를 실행하지 못함 | 제공된 PowerShell 스크립트를 실행하는 동안 문제가 발생했음을 나타냄 |
할당된 시간 내에 스크립트를 실행하지 못함 | 할당된 시간 내에 제공된 스크립트를 실행하는 데 문제가 있음을 나타냅니다. |
Python 스크립트 실행
사용자 지정 Python 스크립트 코드 실행 및 출력을 검색합니다.
입력 매개 변수
인수 | 선택 항목 | 수락 | 기본값 | Description |
---|---|---|---|---|
Python script to run | 없음 | 텍스트 값 | 실행할 Python 스크립트 코드 | |
Python 버전 | 없음 | Python 2.7, Python 3.4 | Python 2.7 | 스크립트를 실행할 때 사용할 Python 버전을 지정합니다 |
Module folder paths | 네 | 폴더 목록 | 외부 Python 모듈이 존재하는 폴더의 경로 |
변수 생성됨
인수 | Type | Description |
---|---|---|
PythonScriptOutput | 텍스트 값 | 스크립트의 출력 |
ScriptError | 텍스트 값 | Python 스크립트 코드 실행 중 발생할 수 있는 오류 |
예외
예외 | 설명 |
---|---|
Python 스크립트를 실행하지 못함 | 제공된 Python 스크립트를 실행하는 동안 문제가 발생했음을 나타냄 |
디렉터리 없음 | 디렉터리를 찾을 수 없음을 나타냄 |
.NET 스크립트 실행
.NET (C#/VB.NET) 스크립트 코드를 실행하고 출력을 검색합니다.
입력 매개 변수
인수 | 선택 항목 | 수락 | 기본값 | Description |
---|---|---|---|---|
언어 | 사용 불가 | C#/ VB.NET | C# | 스크립트의 언어 |
.NET 스크립트 가져오기 | 네 | 텍스트 값 | 스크립트에 포함할 .NET 스크립트 가져오기 | |
로드되는 참조 | 네 | 폴더 | .NET 동적 링크 라이브러리(.dll 파일) 참조가 있는 루트 경로입니다. | |
스크립트 매개 변수 | 네 | 사용자가 정의한 스크립트 매개 변수 | 스크립트에 정의된 매개 변수 값 설정 | |
실행할 .NET 코드 | 아니요 | 텍스트 값 | 실행할 .NET 코드 |
변수 생성됨
이 작업은 스크립트 매개 변수 창을 사용할 때 사용자가 만든 구성에 따라 변수를 생성할 수 있습니다.
노트
작업이 출력 매개 변수를 생성하도록 구성된 경우(구성할 때 Out 방향 사용) 스크립트 내부의 매개 변수가 null 이외의 값으로 설정되어 있는지 항상 확인해야 합니다. 그렇지 않으면 출력 매개 변수가 설정되지 않았기 때문에 스크립트 실행 시 오류가 발생합니다.
예외
예외 | Description |
---|---|
.NET 스크립트를 실행하지 못함 | 제공된 .NET 스크립트를 실행하는 데 문제가 있음을 나타냅니다. |