0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Workato:On-prem command-line scriptsで任意のコマンド(スクリプト)を実行したり、パイプやリダイレクトを扱うには(Linux編)

Last updated at Posted at 2025-06-06

はじめに

WorkatoにはOn-prem command-line scriptsというコネクタがあり、このコネクタを利用することで、オンプレミスエージェントがインストールされたサーバあるいはPC上のコマンドを実行することが可能です。

当コネクタで実行可能なコマンド(スクリプト)は、コネクションあるいはコネクションプロファイルで事前定義されたもの(ホワイトリスト)に限られており、レシピ上で任意のコマンド実行には対応していませんが、bashやzshなどのシェルの引数としてコマンドを渡すことで、レシピ上で任意のコマンドを実行することが可能になります。

また、コネクションの事前定義においては、パイプ(|)やリダイレクト(<>)に対応していませんが、本手順によりパイプやリダイレクトの利用も可能になります。

セキュリティ上レシピからの任意のコマンドの実行を避けたい場合や、コマンドを限定して(指定されたコマンドにて)パイプやリダイレクトを含めた状態を扱いたい場合は、コネクションプロファイル(yaml)による事前定義を検討ください。

https://docs.workato.com/en/on-prem/agents/connection/profile.html#command-line-scripts-profile

コネクションプロファイルでは、コマンドならびに引数、パラメータのクォートの明確な指定が可能となっています。

また、コネクションの事前定義(Script body)では bash -c コマンドと組み合わせてもパイプやリダイレクトを含むコマンドの実行を正常に行うことはできませんが(スペースを区切りにコマンドと引数を解釈しているため)、コネクションプロファイルではコマンドと引数を明確に指定することが可能なため、コマンドを限定したパイプやリダイレクトを含むコマンドの実行にも対応可能です。

手順

【1】コネクションを設定する

On-prem command-line scripts コネクタのScriptsに、 bash -c {{command}} を追加します。

image.png

【2】実行したいコマンドを入力する

WorkatoのレシピにOn-prem command-line scriptsコネクタのExecute command-line scriptアクションを追加し、「Command」へ実行したいコマンドを入力します。

image.png

実行結果

以上の手順で設定を行うことで、以下のようにパイプを用いたコマンド実行を行うことが出来ます。

image.png

おまけ

上記では特定のコマンドの実行を例としましたが、コマンドだけでなくシェルスクリプトの実行にも対応しています。
例えば、Workatoでコーディングしたシェルスクリプトを、オンプレミスエージェントがインストールされたサーバあるいはPC上で実行したい場合にも、本手順が活用可能です。

image.png

image.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?