Powershell에서 배치 스크립트로 인수 전달

남자

나는 파워 쉘 스크립트에서 특수 문자로 암호를 전달해야 automation.ps1배치 스크립트에 batch_script.bat있는 파이프가에 main.py. 에서 배관 batch_script.batmain.py작품 벌금, 그 인증에 성공합니다. 그러나 위에서 설명한 전체 절차를 실행하면 인증이 실패하지만 echo암호를 입력하면 올바른 암호 문자열이 표시됩니다.

내 생각 엔 특수 문자에 문제가있는 것 같습니다. 이 문자열을 전달하는 안전한 방법은 무엇입니까?

배경

Python 스크립트를 통해 외부 소스에서 매일 다운로드하는 작업을 자동화하고 싶습니다 main.py. 이 프로세스에는 암호가 필요합니다. 그래서 batch_script.bat암호를 묻는 메시지가 표시되면 Python 스크립트에 암호를 파이프 하는 파일 작성 했습니다. 그러나 배치 스크립트에 암호를 일반 텍스트로 저장하고 싶지 않기 때문에 암호를 암호화하고 암호 automation.ps1를 해독하고 일반 텍스트로 batch_script.bat.

automation.ps1

# get password
$securePassword = Get-Content "<file_path>" | ConvertTo-SecureString
$credentials = New-Object System.Management.Automation.PsCredential("<user_name>",$securePassword)
$unsecurePassword = ($credentials).GetNetworkCredential().Password

# call script
$script = "<path>\batch_script.bat"
$args = @("`"<user name>`"","`"$unsecurePassword`"")
start-process $script $args

batch_script.bat

(이 예에서는 전달 된 사용자 이름을 버리고 관련성이있는 경우 여러 인수를 전달한다는 사실을 보존하고 싶었습니다.)

@echo off
SET username=%~1
SET password=%~2
echo(%password%|python main.py
Neko Musume

/ -argumentlist스위치를 사용하여 powershell의 배치 파일에 인수를 전달 합니다. 당신은 다음을 사용할 수 있습니다.startsaps

saps "$script" -argumentlist $args

그러나 $args인수를 전달하기 위해서는 일반적으로 다음과 같이 인수를 하나씩 전달하기를 원하기 때문에 작동하지 않을 수 있으므로 먼저 헤어지는 것이 좋습니다 .

saps "$script" -argumentlist "1","2","3"

패스 $args는 대부분의 경우 작동하지만 작동하지 않는 경우가 있습니다. 대부분의 경우 당신은 괜찮습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Windows 배치 스크립트에서 powershell 스크립트로 매개 변수 전달

분류에서Dev

배치 스크립트 서브 루틴 : 인수 전달

분류에서Dev

Windows 배치 스크립트에 명령 줄 인수 전달

분류에서Dev

Windows 배치 스크립트에 명령 줄 인수 전달

분류에서Dev

Windows 배치 스크립트에 명령 줄 인수 전달

분류에서Dev

배치에서 powershell로 변수 전달

분류에서Dev

VB 스크립트에서 배치 파일로 매개 변수 전달

분류에서Dev

배치 파일에서 MYSQL 스크립트로 매개 변수 전달

분류에서Dev

배치 파일에서 Powershell 스크립트로 변수를 전달하는 방법

분류에서Dev

배치 파일에서 Powershell 스크립트로 변수를 전달하는 방법

분류에서Dev

배치에서 powershell 스크립트에 인수를 전달하면 공백이 생깁니다.

분류에서Dev

PHP에서 자바 스크립트 함수 인수로 배열 전달

분류에서Dev

스크립트에서 스크립트로 인수 전달

분류에서Dev

쉘 스크립트에서 배열로 명명 된 인수 전달

분류에서Dev

점을 포함하는 인수를 배치 스크립트에 전달

분류에서Dev

GAS 스크립트에서 html 파일, 전역 JS 변수로 배열 전달

분류에서Dev

ThisScriptsDirectory를 매개 변수로 배치에서 Powershell로 전달

분류에서Dev

한 스크립트에서 다른 스크립트로 인수 전달

분류에서Dev

선택적으로 bash 스크립트에서 인수 전달

분류에서Dev

쉘 스크립트에서 새 세션으로 인수 전달

분류에서Dev

awk 스크립트에 인수 전달

분류에서Dev

스크립트에 인수 전달

분류에서Dev

쉘 스크립트에 인수 전달

분류에서Dev

"|"전달 유닉스 스크립트에 대한 인수로

분류에서Dev

경로를 셸 스크립트에 인수로 전달

분류에서Dev

bash : 연관 배열을 매개 변수로 다른 스크립트에 전달

분류에서Dev

PowerShell 프롬프트에서 배치 파일에 이스케이프 문자가있는 인수 전달

분류에서Dev

글꼴을 스크립트에 인수로 전달

분류에서Dev

쉘 스크립트에 명령 줄 인수로 '*'전달

Related 관련 기사

  1. 1

    Windows 배치 스크립트에서 powershell 스크립트로 매개 변수 전달

  2. 2

    배치 스크립트 서브 루틴 : 인수 전달

  3. 3

    Windows 배치 스크립트에 명령 줄 인수 전달

  4. 4

    Windows 배치 스크립트에 명령 줄 인수 전달

  5. 5

    Windows 배치 스크립트에 명령 줄 인수 전달

  6. 6

    배치에서 powershell로 변수 전달

  7. 7

    VB 스크립트에서 배치 파일로 매개 변수 전달

  8. 8

    배치 파일에서 MYSQL 스크립트로 매개 변수 전달

  9. 9

    배치 파일에서 Powershell 스크립트로 변수를 전달하는 방법

  10. 10

    배치 파일에서 Powershell 스크립트로 변수를 전달하는 방법

  11. 11

    배치에서 powershell 스크립트에 인수를 전달하면 공백이 생깁니다.

  12. 12

    PHP에서 자바 스크립트 함수 인수로 배열 전달

  13. 13

    스크립트에서 스크립트로 인수 전달

  14. 14

    쉘 스크립트에서 배열로 명명 된 인수 전달

  15. 15

    점을 포함하는 인수를 배치 스크립트에 전달

  16. 16

    GAS 스크립트에서 html 파일, 전역 JS 변수로 배열 전달

  17. 17

    ThisScriptsDirectory를 매개 변수로 배치에서 Powershell로 전달

  18. 18

    한 스크립트에서 다른 스크립트로 인수 전달

  19. 19

    선택적으로 bash 스크립트에서 인수 전달

  20. 20

    쉘 스크립트에서 새 세션으로 인수 전달

  21. 21

    awk 스크립트에 인수 전달

  22. 22

    스크립트에 인수 전달

  23. 23

    쉘 스크립트에 인수 전달

  24. 24

    "|"전달 유닉스 스크립트에 대한 인수로

  25. 25

    경로를 셸 스크립트에 인수로 전달

  26. 26

    bash : 연관 배열을 매개 변수로 다른 스크립트에 전달

  27. 27

    PowerShell 프롬프트에서 배치 파일에 이스케이프 문자가있는 인수 전달

  28. 28

    글꼴을 스크립트에 인수로 전달

  29. 29

    쉘 스크립트에 명령 줄 인수로 '*'전달

뜨겁다태그

보관