AWSLinuxMacPowershellWindows

長いコマンドを複数行に分割して実行する方法(Windows)

AWS

コマンドが長くなる場合に、コマンドを複数行に分けて見やすくしたいことがあるかと思います。 私の場合にはAWS CLIなどを使う際にかなり長くなるので分割したいことがよくあります。

以前はMacで開発していたののですが、最近は開発環境をWindowsになったため文字列が異なっていたのでメモです。

Windowsの場合には、コマンドプロンプトとPowerShellコンソールで扱う文字列が異なるので注意が必要です。

1. Linux/Mac

Linux/Macの場合にはバックスラッシュ「\」で行が分かれても1行として処理してくれます。

例としてAWS CLIで使っていたコマンドを掲載します。

aws lambda invoke --endpoint-url=http://localhost:4566 \
    --profile localstack \
    --function-name fro \
    --payload  file://payload.json \
    --cli-binary-format raw-in-base64-out \
    result.json

2. Windows(コマンドプロンプト系)

コマンドプロンプトから実行した場合にはチルダ「^」になります。

aws lambda invoke --endpoint-url=http://localhost:4566 ^
    --profile localstack ^
    --function-name fro ^
    --payload  file://payload.json ^
    --cli-binary-format raw-in-base64-out ^
    result.json

3. Windows(PowerShell)

PowerShellコンソールトから実行した場合にはバッククォート「`」になります。

aws lambda invoke --endpoint-url=http://localhost:4566 `
    --profile localstack `
    --function-name fro `
    --payload  file://payload.json `
    --cli-binary-format raw-in-base64-out `
    result.json

今回は以上となります。

コメント