ホームページ > Java > &#&チュートリアル > Java でコマンドを実行するときに、コマンドにパラメータを渡すにはどうすればよいですか?

Java でコマンドを実行するときに、コマンドにパラメータを渡すにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-11-15 10:34:02
オリジナル
330 人が閲覧しました

How can I pass parameters to commands when executing them in Java?

Java でパラメータを使用してコマンドを実行する

Java アプリケーション内からコマンドを実行するには、多くの場合、コマンドと一緒にパラメータを渡す必要があります。これは、Runtime.getRuntime().exec() メソッドを使用して実現できますが、コマンドを正しく実行するためにパラメーターがどのように渡されるかを理解することが重要です。

名前付きパラメーターの割り当てを試みます

間違ったアプローチは、次のように exec() への単一の引数としてオプションを指定することです。 so:

String[] options = new String[]{"option1", "option2"};
Runtime.getRuntime().exec("command", options);
ログイン後にコピー

コマンドインタープリターはパラメーターを個別に受け取らないため、このメソッドは機能しません。代わりに、それらは単一の文字列引数として扱われます。

文字列配列を使用した引数の受け渡し

パラメータを効果的に渡すには、文字列配列内の個別の要素として指定する必要があります。 :

Runtime.getRuntime().exec(new String[]{"php","/var/www/script.php","-m","2"});
ログイン後にコピー

この例では、最初の引数は実行するコマンドであり、後続の引数はパラメータです。このアプローチにより、各パラメータがコマンド インタプリタによって正しく解釈されることが保証されます。

パラメータの位置の指定

パラメータの順序が重要な場合は、その順序を指定することが重要になる可能性があります。配列内で明示的に順序付けします:

String[] args = {"command", "-option", "-value"};
Runtime.getRuntime().exec(args);
ログイン後にコピー

この場合、最初のパラメータはコマンド自体で、2 番目のパラメータはオプションです。 3 番目のパラメータは、オプションに関連付けられた値です。順序を明示的に指定することで、パラメータが正しい順序でコマンドに渡され、正しく実行されるようになります。

追加メモ

  • コマンド インタープリタは、指定されたパスまたはパス環境にあります。
  • 実行中にエラーまたは null が返されるかどうかを確認して、例外的なシナリオを処理します。コマンド。
  • 複雑なシナリオでは、パラメーターを使用してコマンドの実行を簡素化するために、コマンド ビルダーまたはライブラリを使用することを検討してください。

以上がJava でコマンドを実行するときに、コマンドにパラメータを渡すにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート